server-re/decomp/MessageServer_Release_x64/full/functions/0x14001c940.c

72 lines
2.5 KiB
C

/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
* Ghidra 12.1.2 decompiler output for 0x14001c940 FUN_14001c940
* Pseudocode, not original source. */
undefined1
FUN_14001c940(longlong *param_1,undefined8 param_2,SIZE_T param_3,ushort *param_4,uint *param_5,
undefined8 *param_6,longlong *param_7,longlong *param_8,longlong *param_9,
longlong *param_10)
{
undefined1 uVar1;
uint *puVar2;
undefined8 *puVar3;
SIZE_T SVar4;
ushort *puVar5;
undefined4 local_res10 [2];
undefined4 local_30 [2];
longlong local_28;
longlong local_20;
int local_14;
local_res10[0] = (undefined4)param_2;
SVar4 = param_3;
puVar5 = param_4;
FUN_1400bca00(local_30);
FUN_1400bc4d0((longlong)local_30,param_2,SVar4,puVar5);
FUN_140054930((longlong)local_30,0x2f17,SVar4,puVar5);
FUN_140054930((longlong)local_30,(ulonglong)*param_4,SVar4,puVar5);
FUN_140014500((longlong)local_30,(ulonglong)*param_5,SVar4,puVar5);
FUN_1400d9b40((longlong)local_30,param_6,SVar4,puVar5);
FUN_140014500((longlong)local_30,param_7[1] - *param_7 >> 4,SVar4,puVar5);
puVar3 = (undefined8 *)*param_7;
if (puVar3 != (undefined8 *)param_7[1]) {
do {
FUN_1400d9b40((longlong)local_30,puVar3,SVar4,puVar5);
puVar3 = puVar3 + 2;
} while (puVar3 != (undefined8 *)param_7[1]);
}
FUN_140014500((longlong)local_30,param_8[1] - *param_8 >> 2,SVar4,puVar5);
puVar2 = (uint *)*param_8;
if (puVar2 != (uint *)param_8[1]) {
do {
FUN_140014500((longlong)local_30,(ulonglong)*puVar2,SVar4,puVar5);
puVar2 = puVar2 + 1;
} while (puVar2 != (uint *)param_8[1]);
}
FUN_140014500((longlong)local_30,param_9[1] - *param_9 >> 2,SVar4,puVar5);
puVar2 = (uint *)*param_9;
if (puVar2 != (uint *)param_9[1]) {
do {
FUN_140014500((longlong)local_30,(ulonglong)*puVar2,SVar4,puVar5);
puVar2 = puVar2 + 1;
} while (puVar2 != (uint *)param_9[1]);
}
FUN_140014500((longlong)local_30,param_10[1] - *param_10 >> 4,SVar4,puVar5);
puVar3 = (undefined8 *)*param_10;
if (puVar3 != (undefined8 *)param_10[1]) {
do {
FUN_1400d9b40((longlong)local_30,puVar3,SVar4,puVar5);
puVar3 = puVar3 + 2;
} while (puVar3 != (undefined8 *)param_10[1]);
}
uVar1 = (**(code **)(*param_1 + 0x18))
(param_1,local_res10,1,param_3,local_30,L"REQ_MAIL_ITEM_MOVE",0x2f17);
FUN_1400d1800(&local_28);
if ((local_20 != 0) && (local_14 < 0)) {
/* WARNING: Subroutine does not return */
FUN_14006be00();
}
return uVar1;
}