42 lines
1.4 KiB
C
42 lines
1.4 KiB
C
/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
|
|
* Ghidra 12.1.2 decompiler output for 0x1400b08b0 FUN_1400b08b0
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_1400b08b0(undefined8 *param_1,longlong *param_2,longlong *param_3,undefined8 param_4)
|
|
|
|
{
|
|
int *piVar1;
|
|
longlong *plVar2;
|
|
longlong *plVar3;
|
|
|
|
*param_1 = Proud::CUpnp::vftable;
|
|
piVar1 = (int *)(param_1 + 2);
|
|
FUN_14002e6e0(piVar1);
|
|
FUN_1400afde0((char *)(param_1 + 10));
|
|
FUN_1400af550((char *)(param_1 + 0x15),param_2,param_3,param_4);
|
|
plVar3 = (longlong *)0x0;
|
|
FUN_1400af1c0((longlong)(param_1 + 0x20),0);
|
|
FUN_14002e770((longlong)piVar1);
|
|
param_1[0x20] = Proud::CFastArray<Proud::RefCount<Proud::CSsdpContext>,0>::vftable;
|
|
plVar2 = (longlong *)(longlong)*(int *)(param_1 + 0x23);
|
|
if (0 < *(int *)(param_1 + 0x23)) {
|
|
FUN_1400ae080((longlong *)param_1[0x22],(longlong)plVar2);
|
|
plVar3 = plVar2;
|
|
}
|
|
plVar2 = (longlong *)param_1[0x22];
|
|
if (plVar2 != (longlong *)0x0) {
|
|
param_3 = (longlong *)param_1[0x21];
|
|
if (param_3 == (longlong *)0x0) {
|
|
FUN_1400302f0(plVar2);
|
|
}
|
|
else {
|
|
(**(code **)(*param_3 + 0x18))(param_3);
|
|
plVar3 = plVar2;
|
|
}
|
|
}
|
|
FUN_1400afdc0((char *)(param_1 + 0x15),plVar3,param_3,param_4);
|
|
FUN_1400b0530((char *)(param_1 + 10));
|
|
FUN_14002e7a0(piVar1,plVar3,param_3,param_4);
|
|
return;
|
|
}
|
|
|