51 lines
1.4 KiB
C
51 lines
1.4 KiB
C
/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
|
|
* Ghidra 12.1.2 decompiler output for 0x14000da10 FUN_14000da10
|
|
* Pseudocode, not original source. */
|
|
|
|
byte * FUN_14000da10(byte *param_1,int param_2)
|
|
|
|
{
|
|
int iVar1;
|
|
byte bVar2;
|
|
|
|
if ((param_1 == (byte *)0x0) || (bVar2 = *param_1, bVar2 == 0)) {
|
|
return (byte *)0x0;
|
|
}
|
|
if (param_2 == 1) {
|
|
do {
|
|
if (bVar2 == 0xef) {
|
|
if ((param_1[1] == 0xbb) && (param_1[2] == 0xbf)) {
|
|
param_1 = param_1 + 3;
|
|
}
|
|
else {
|
|
if (param_1[1] != 0xbf) goto LAB_14000da70;
|
|
if (param_1[2] == 0xbe) {
|
|
param_1 = param_1 + 3;
|
|
}
|
|
else {
|
|
if (param_1[2] != 0xbf) goto LAB_14000da70;
|
|
param_1 = param_1 + 3;
|
|
}
|
|
}
|
|
}
|
|
else {
|
|
LAB_14000da70:
|
|
iVar1 = isspace((uint)bVar2);
|
|
if ((((iVar1 == 0) && (bVar2 != 10)) && (bVar2 != 0xd)) &&
|
|
((*param_1 != 10 && (*param_1 != 0xd)))) {
|
|
return param_1;
|
|
}
|
|
param_1 = param_1 + 1;
|
|
}
|
|
bVar2 = *param_1;
|
|
} while (bVar2 != 0);
|
|
}
|
|
else {
|
|
for (; ((bVar2 = *param_1, bVar2 != 0 &&
|
|
(((iVar1 = isspace((uint)bVar2), iVar1 != 0 || (bVar2 == 10)) || (bVar2 == 0xd)))) ||
|
|
((*param_1 == 10 || (*param_1 == 0xd)))); param_1 = param_1 + 1) {
|
|
}
|
|
}
|
|
return param_1;
|
|
}
|
|
|