0x183674860 | 0x183674860 |// WARNING: [rz-ghidra] Detected overlap for variable var_f1h | 0x183674860 |uint64_t fcn.183674860(int64_t arg1, int64_t arg2) |{ | int32_t *piVar1; | int32_t iVar2; | char cVar3; | undefined4 uVar4; | undefined8 uVar5; | int64_t iVar6; | int64_t iVar7; | int64_t *piVar8; | undefined8 *puVar9; | int64_t iVar10; | uint64_t uVar11; | undefined8 uVar12; | uint64_t uVar13; | uint64_t uVar14; | int64_t var_160h; | int64_t var_150h; | int64_t var_148h; | int64_t iStack_140; | int64_t var_108h; | int64_t var_f8h; | int64_t var_e0h; | 0x183674a0f | if (((((*(int32_t *)arg1 != -1) || (*(int32_t *)(arg1 + 4) != -2)) && 0x1836749c3 | (iVar7 = func_0x000184770e70(*(undefined8 *)arg1), iVar7 != 0)) && 0x1836749e1 | ((cVar3 = (*(code *)0x185f59da0)(iVar7), cVar3 != '\0' && 0x1836749fc | (piVar8 = (int64_t *)(*(code *)0x185f59da0)(iVar7), piVar8 != (int64_t *)0x0)))) && 0x183674a0b | (*(char *)(arg1 + 0x20) == '\x01')) { 0x183674a22 | (*(code *)0x185f59da0)(piVar8, *(undefined8 *)(*piVar8 + 0x48)); | } 0x183674893 | *(undefined8 *)arg1 = 0xfffffffeffffffff; 0x18367489a | if (*(char *)(arg1 + 0x1f) < '\0') { 0x1836749ae | **(undefined2 **)(arg1 + 8) = 0; 0x1836749b3 | *(undefined8 *)(arg1 + 0x10) = 0; | } else { 0x1836748a0 | *(undefined2 *)(arg1 + 8) = 0; 0x1836748a6 | *(undefined *)(arg1 + 0x1f) = 0; | } 0x1836748aa | *(undefined *)(arg1 + 0x20) = 0; 0x1836748ae | uVar5 = func_0x000180dc4ff0(); 0x1836748bc | iVar6 = func_0x000184300b20(uVar5, arg2, 1); 0x1836748c1 | iVar7 = iVar6 + 8; 0x1836748c8 | if (iVar6 == 0) { 0x1836748cc | iVar7 = 0; | } 0x1836748cc | iVar7 = func_0x0001817a0ac0(iVar7); 0x1836748e1 | if ((iVar7 == 0) || (*(int64_t *)(iVar7 + 0x30) == 0)) { 0x183674ac7 | if (2 < *(int32_t *)0x191de85c0) goto code_r0x000183674b98; 0x183674ad4 | func_0x00018030d390(&var_160h, 0x190c00cd8, 0x1b, 2); 0x183674af2 | uVar5 = 0x190c00d20; 0x183674af9 | uVar12 = 0x42; |code_r0x000183674aff: 0x183674aff | func_0x000184dcd0d0(&var_150h, uVar5, uVar12); 0x183674b0e | var_160h = 0x18ff81648; 0x183674aff | func_0x00018030e9d0(&var_160h); 0x183674b28 | *(undefined8 *)((int64_t)&var_150h + (int64_t)*(int32_t *)(var_150h + 4)) = 0x18fe1b290; |joined_r0x000183674c92: 0x183674c92 | if (var_f8h._7_1_ < '\0') { 0x183674b3e | var_148h = 0x18fe20d40; 0x183674b58 | func_0x0001841dcbe0(var_108h, CONCAT17(var_f8h._7_1_, (unkbyte7)var_f8h) & 0x7fffffffffffffff); | } 0x183674b5d | arg1 = (int64_t)&var_148h; 0x183674b69 | var_148h = 0x18fe20db0; 0x183674b7a | iVar7 = iStack_140; 0x183674b7a | if (iStack_140 != 0x191de1450) { |code_r0x000183674ec8: 0x183674ecd | LOCK(); 0x183674ecd | piVar1 = (int32_t *)(iVar7 + 8); 0x183674ecd | iVar2 = *piVar1; 0x183674ecd | *piVar1 = *piVar1 + -1; 0x183674ecd | UNLOCK(); 0x183674ed4 | if (iVar2 == 0) { 0x183674ee1 | (*(code *)0x185f59da0)(); | } | } 0x183674b8b | func_0x00018424db70(arg1); 0x183674b80 | func_0x0001848f8b80(&var_e0h); | } else { 0x1836748e7 | piVar8 = *(int64_t **)(*(int64_t *)(iVar7 + 0x30) + 0xb0); 0x1836748f1 | if (piVar8 != (int64_t *)0x0) { 0x183674908 | if (*(int64_t *)(*piVar8 + 0x18) == 0x184d06f20) { 0x18367490e | iVar7 = piVar8[8]; | } else { 0x183674a2d | iVar7 = (*(code *)0x185f59da0)(); | } 0x183674915 | if (iVar7 == 0) goto code_r0x000183674a3b; 0x183674928 | cVar3 = (*(code *)0x185f59da0)(iVar7); 0x183674930 | if (cVar3 == '\0') { 0x183674a86 | if (*(int32_t *)0x191de85c0 < 3) { 0x183674a93 | func_0x00018030d390(&var_160h, 0x190c00cd8, 0x28, 2); 0x183674ab1 | uVar5 = 0x190c00dc0; 0x183674ab8 | uVar12 = 0x5c; 0x183674abe | goto code_r0x000183674aff; | } | goto code_r0x000183674b98; | } 0x183674943 | iVar6 = (*(code *)0x185f59da0)(iVar7); 0x183674966 | if ((iVar6 == 0) || (cVar3 = (*(code *)0x185f59da0)(iVar6), cVar3 == '\0')) { 0x183674973 | if (2 < *(int32_t *)0x191de85c0) goto code_r0x000183674b98; 0x183674980 | func_0x00018030d390(&var_160h, 0x190c00cd8, 0x2f, 2); 0x18367499e | uVar5 = 0x190c00e20; 0x1836749a5 | goto code_r0x000183674a74; | } 0x183674bba | puVar9 = (undefined8 *)(*(code *)0x185f59da0)(iVar6); 0x183674bc6 | cVar3 = func_0x000185236570(puVar9); 0x183674bcd | if (cVar3 != '\0') { 0x183674cf5 | iVar10 = (*(code *)0x185f59da0)(iVar6); 0x183674cfe | if (iVar10 != 0) { 0x183674d12 | (*(code *)0x185f59da0)(iVar6, &var_160h); 0x183674d1b | *(int64_t *)arg1 = var_160h; 0x183674d1e | uVar13 = CONCAT71((unkint7)((uint64_t)iVar6 >> 8), 1); 0x183674d28 | if (*(int32_t *)0x191de85c0 < 3) { 0x183674d35 | func_0x00018030d390(&var_160h, 0x190c00cd8, 0x45, 2); 0x183674d60 | uVar5 = func_0x000184dcd0d0(&var_150h, 0x190c00f20, 0x30); 0x183674d78 | uVar12 = func_0x000184dcd0d0(uVar5, 0x190b98c00, 0x18); 0x183674d82 | uVar12 = func_0x00018041ca10(uVar12, *(undefined4 *)arg1); 0x183674d97 | uVar12 = func_0x000184dcd0d0(uVar12, 0x19012a0b4, 2); 0x183674da2 | uVar12 = func_0x00018041ca10(uVar12, *(undefined4 *)(arg1 + 4)); 0x183674db7 | func_0x000184dcd0d0(uVar12, 0x190125408, 1); 0x183674dcc | uVar5 = func_0x000184dcd0d0(uVar5, 0x1908f0abc, 5); 0x183674dd1 | iVar6 = (int64_t)*(char *)((int64_t)puVar9 + 0x17); 0x183674dd9 | if (iVar6 < 0) { 0x183674ddb | iVar6 = puVar9[1]; 0x183674ddf | puVar9 = (undefined8 *)*puVar9; | } 0x183674de8 | uVar5 = func_0x000184dcd0d0(uVar5, puVar9, iVar6); 0x183674dfd | uVar5 = func_0x000184dcd0d0(uVar5, 0x190c00f58, 0x12); 0x183674e12 | uVar4 = (*(code *)0x185f59da0)(iVar7); 0x183674e1d | func_0x00018084a240(uVar5, uVar4); 0x183674e29 | var_160h = 0x18ff81648; 0x183674d35 | func_0x00018030e9d0(&var_160h); 0x183674e46 | *(undefined8 *)((int64_t)&var_150h + (int64_t)*(int32_t *)(var_150h + 4)) = 0x18fe1b290; 0x183674e52 | var_148h = 0x18fe20d40; 0x183674e5f | if (var_f8h._7_1_ < '\0') { 0x183674e7b | func_0x0001841dcbe0(var_108h, 0x183674e6b | CONCAT17(var_f8h._7_1_, (unkbyte7)var_f8h) & 0x7fffffffffffffff); | } 0x183674e8c | var_148h = 0x18fe20db0; 0x183674e9d | if (iStack_140 != 0x191de1450) { 0x183674ef1 | LOCK(); 0x183674ef1 | piVar1 = (int32_t *)(iStack_140 + 8); 0x183674ef1 | iVar2 = *piVar1; 0x183674ef1 | *piVar1 = *piVar1 + -1; 0x183674ef1 | UNLOCK(); 0x183674ef8 | if (iVar2 == 0) { 0x183674f01 | (*(code *)0x185f59da0)(); | } | } 0x183674e80 | func_0x00018424db70(&var_148h); 0x183674e9f | func_0x0001848f8b80(&var_e0h); | } | goto code_r0x000183674b9a; | } 0x183674cab | if (*(int32_t *)0x191de85c0 < 3) { 0x183674cb8 | func_0x00018030d390(&var_160h, 0x190c00cd8, 0x3f, 2); 0x183674cd6 | uVar5 = 0x190c00ec0; 0x183674cdd | uVar12 = 0x58; 0x183674ce3 | goto code_r0x000183674aff; | } | goto code_r0x000183674b98; | } 0x183674bda | if (2 < *(int32_t *)0x191de85c0) goto code_r0x000183674b98; 0x183674be3 | func_0x00018030d390(&var_160h, 0x190c00cd8, 0x38, 2); 0x183674c0b | uVar5 = func_0x000184dcd0d0(&var_150h, 0x190c00e70, 0x40); 0x183674c10 | uVar13 = (uint64_t)*(int32_t *)((int64_t)puVar9 + 0x24); 0x183674c17 | if ((int64_t)uVar13 < 1) { 0x183674c9d | iVar7 = 0; 0x183674c9f | uVar13 = 0; |code_r0x000183674c4d: 0x183674c53 | func_0x000184dcd0d0(uVar5, iVar7, uVar13); 0x183674c64 | var_160h = 0x18ff81648; 0x183674c5f | func_0x00018030e9d0(&var_160h); 0x183674c7e | *(undefined8 *)((int64_t)&var_150h + (int64_t)*(int32_t *)(var_150h + 4)) = 0x18fe1b290; 0x183674c7e | goto joined_r0x000183674c92; | } 0x183674c1d | uVar14 = (uint64_t)*(char *)((int64_t)puVar9 + 0x17); 0x183674c28 | if ((int64_t)uVar14 < 0) { 0x183674c2a | uVar14 = puVar9[1]; | } 0x183674c2e | uVar11 = (uint64_t)*(int32_t *)(puVar9 + 4); 0x183674c35 | if (uVar11 <= uVar14) { 0x183674c3e | if (*(char *)((int64_t)puVar9 + 0x17) < '\0') { 0x183674c40 | puVar9 = (undefined8 *)*puVar9; | } 0x183674c46 | if (uVar14 - uVar11 < uVar13) { 0x183674c46 | uVar13 = uVar14 - uVar11; | } 0x183674c4a | iVar7 = (int64_t)puVar9 + uVar11; 0x183674c4a | goto code_r0x000183674c4d; | } 0x183674ebc | iVar7 = 0x1901257f0; 0x183674ec3 | func_0x000186069580(); 0x183674ec3 | goto code_r0x000183674ec8; | } |code_r0x000183674a3b: 0x183674a42 | if (*(int32_t *)0x191de85c0 < 3) { 0x183674a4f | func_0x00018030d390(&var_160h, 0x190c00cd8, 0x23, 2); 0x183674a6d | uVar5 = 0x190c00d70; |code_r0x000183674a74: 0x183674a74 | uVar12 = 0x46; 0x183674a7a | goto code_r0x000183674aff; | } | } |code_r0x000183674b98: 0x183674b98 | uVar13 = 0; |code_r0x000183674b9a: 0x183674bac | return uVar13 & 0xffffffff; |} [{"offset":6499551328,"name":"fcn.183674860","size":1705,"is-pure":false,"realsz":1705,"noreturn":false,"stackframe":392,"calltype":"ms","cost":527,"cc":37,"loops":20,"bits":64,"type":"fcn","nbbs":62,"edges":97,"ebbs":1,"signature":"fcn.183674860(int64_t arg1, int64_t arg2);","minbound":6499551328,"maxbound":6499553033,"callrefs":[{"from":6499551406,"to":6456889328,"type":"CALL"},{"from":6499551420,"to":6512708384,"type":"CALL"},{"from":6499551436,"to":6467226304,"type":"CALL"},{"from":6499551528,"to":6740346544,"type":"CALL"},{"from":6499551555,"to":6740346544,"type":"CALL"},{"from":6499551582,"to":6740346544,"type":"CALL"},{"from":6499551636,"to":6445650832,"type":"CALL"},{"from":6499551653,"to":6499551860,"type":"CODE"},{"from":6499551675,"to":6499551402,"type":"CODE"},{"from":6499551683,"to":6517362288,"type":"CALL"},{"from":6499551713,"to":6740346544,"type":"CALL"},{"from":6499551740,"to":6740346544,"type":"CALL"},{"from":6499551778,"to":6740346544,"type":"CALL"},{"from":6499551784,"to":6499551369,"type":"CODE"},{"from":6499551789,"to":6740346544,"type":"CALL"},{"from":6499551798,"to":6499551506,"type":"CODE"},{"from":6499551843,"to":6445650832,"type":"CALL"},{"from":6499551866,"to":6499551999,"type":"CODE"},{"from":6499551911,"to":6445650832,"type":"CALL"},{"from":6499551934,"to":6499551999,"type":"CODE"},{"from":6499551976,"to":6445650832,"type":"CALL"},{"from":6499552002,"to":6524031184,"type":"CALL"},{"from":6499552021,"to":6445656528,"type":"CALL"},{"from":6499552088,"to":6511512544,"type":"CALL"},{"from":6499552139,"to":6511975280,"type":"CALL"},{"from":6499552147,"to":6518967168,"type":"CALL"},{"from":6499552186,"to":6740346544,"type":"CALL"},{"from":6499552198,"to":6528656752,"type":"CALL"},{"from":6499552244,"to":6445650832,"type":"CALL"},{"from":6499552267,"to":6524031184,"type":"CALL"},{"from":6499552339,"to":6524031184,"type":"CALL"},{"from":6499552362,"to":6445656528,"type":"CALL"},{"from":6499552408,"to":6499552093,"type":"CODE"},{"from":6499552418,"to":6499552333,"type":"CODE"},{"from":6499552460,"to":6445650832,"type":"CALL"},{"from":6499552483,"to":6499551999,"type":"CODE"},{"from":6499552501,"to":6740346544,"type":"CALL"},{"from":6499552530,"to":6740346544,"type":"CALL"},{"from":6499552585,"to":6445650832,"type":"CALL"},{"from":6499552608,"to":6524031184,"type":"CALL"},{"from":6499552632,"to":6524031184,"type":"CALL"},{"from":6499552642,"to":6446762512,"type":"CALL"},{"from":6499552663,"to":6524031184,"type":"CALL"},{"from":6499552674,"to":6446762512,"type":"CALL"},{"from":6499552695,"to":6524031184,"type":"CALL"},{"from":6499552716,"to":6524031184,"type":"CALL"},{"from":6499552744,"to":6524031184,"type":"CALL"},{"from":6499552765,"to":6524031184,"type":"CALL"},{"from":6499552786,"to":6740346544,"type":"CALL"},{"from":6499552797,"to":6451143232,"type":"CALL"},{"from":6499552817,"to":6445656528,"type":"CALL"},{"from":6499552891,"to":6511512544,"type":"CALL"},{"from":6499552938,"to":6511975280,"type":"CALL"},{"from":6499552946,"to":6518967168,"type":"CALL"},{"from":6499552951,"to":6499552154,"type":"CODE"},{"from":6499552963,"to":6543545728,"type":"CALL"},{"from":6499552993,"to":6740346544,"type":"CALL"},{"from":6499552999,"to":6499552128,"type":"CODE"},{"from":6499553025,"to":6740346544,"type":"CALL"},{"from":6499553031,"to":6499552927,"type":"CODE"}],"datarefs":[{"from":6499551486,"to":6523219744,"type":"DATA"},{"from":6499551596,"to":6742246848,"type":"DATA"},{"from":6499551609,"to":6723472600,"type":"DATA"},{"from":6499551646,"to":6723472928,"type":"DATA"},{"from":6499551803,"to":6742246848,"type":"DATA"},{"from":6499551816,"to":6723472600,"type":"DATA"},{"from":6499551853,"to":6723472752,"type":"DATA"},{"from":6499551871,"to":6742246848,"type":"DATA"},{"from":6499551884,"to":6723472600,"type":"DATA"},{"from":6499551921,"to":6723472832,"type":"DATA"},{"from":6499551936,"to":6742246848,"type":"DATA"},{"from":6499551949,"to":6723472600,"type":"DATA"},{"from":6499551986,"to":6723472672,"type":"DATA"},{"from":6499552007,"to":6710367816,"type":"DATA"},{"from":6499552033,"to":6708900496,"type":"DATA"},{"from":6499552045,"to":6708923712,"type":"DATA"},{"from":6499552098,"to":6708923824,"type":"DATA"},{"from":6499552112,"to":6742217808,"type":"DATA"},{"from":6499552211,"to":6742246848,"type":"DATA"},{"from":6499552220,"to":6723472600,"type":"DATA"},{"from":6499552254,"to":6723473008,"type":"DATA"},{"from":6499552344,"to":6710367816,"type":"DATA"},{"from":6499552375,"to":6708900496,"type":"DATA"},{"from":6499552387,"to":6708923712,"type":"DATA"},{"from":6499552420,"to":6742246848,"type":"DATA"},{"from":6499552433,"to":6723472600,"type":"DATA"},{"from":6499552470,"to":6723473088,"type":"DATA"},{"from":6499552545,"to":6742246848,"type":"DATA"},{"from":6499552558,"to":6723472600,"type":"DATA"},{"from":6499552595,"to":6723473184,"type":"DATA"},{"from":6499552616,"to":6723046400,"type":"DATA"},{"from":6499552647,"to":6712107188,"type":"DATA"},{"from":6499552679,"to":6712087560,"type":"DATA"},{"from":6499552700,"to":6720260796,"type":"DATA"},{"from":6499552749,"to":6723473240,"type":"DATA"},{"from":6499552802,"to":6710367816,"type":"DATA"},{"from":6499552831,"to":6708900496,"type":"DATA"},{"from":6499552843,"to":6708923712,"type":"DATA"},{"from":6499552901,"to":6708923824,"type":"DATA"},{"from":6499552915,"to":6742217808,"type":"DATA"},{"from":6499552956,"to":6712088560,"type":"DATA"}],"codexrefs":[{"from":6499551653,"to":6499551860,"type":"CODE"},{"from":6499551675,"to":6499551402,"type":"CODE"},{"from":6499551784,"to":6499551369,"type":"CODE"},{"from":6499551798,"to":6499551506,"type":"CODE"},{"from":6499551866,"to":6499551999,"type":"CODE"},{"from":6499551934,"to":6499551999,"type":"CODE"},{"from":6499552408,"to":6499552093,"type":"CODE"},{"from":6499552418,"to":6499552333,"type":"CODE"},{"from":6499552483,"to":6499551999,"type":"CODE"},{"from":6499552951,"to":6499552154,"type":"CODE"},{"from":6499552999,"to":6499552128,"type":"CODE"},{"from":6499553031,"to":6499552927,"type":"CODE"}],"dataxrefs":[],"indegree":12,"outdegree":48,"nlocals":7,"nargs":2,"stackvars":[{"name":"var_160h","arg":false,"type":"int64_t","storage":{"type":"stack","stack":-352}},{"name":"var_150h","arg":false,"type":"int64_t","storage":{"type":"stack","stack":-336}},{"name":"var_148h","arg":false,"type":"int64_t","storage":{"type":"stack","stack":-328}},{"name":"var_108h","arg":false,"type":"int64_t","storage":{"type":"stack","stack":-264}},{"name":"var_f8h","arg":false,"type":"int64_t","storage":{"type":"stack","stack":-248}},{"name":"var_f1h","arg":false,"type":"int64_t","storage":{"type":"stack","stack":-241}},{"name":"var_e0h","arg":false,"type":"int64_t","storage":{"type":"stack","stack":-224}}],"regvars":[{"name":"arg1","arg":true,"type":"int64_t","storage":{"type":"reg","reg":"rcx"}},{"name":"arg2","arg":true,"type":"int64_t","storage":{"type":"reg","reg":"rdx"}}]}]