1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
int __fastcall sub_401768(int a1)
{
int v2; // r6
int v3; // r0
int v4; // r5
int v5; // r0
int v6; // r2
int *v8; // [sp+4h] [bp-14h]
char v9; // [sp+17h] [bp-1h] BYREF
v8 = (int *)off_40181C;
v2 = sub_4011EC();
if ( v2 == 0 )
{
v3 = sub_401580(a1: 14, a2: 0);
if ( v3 != 0 )
{
v4 = v3;
v6 = off_401824[1];
v5 = *off_401824;
*(_BYTE *)v4 = *(_QWORD *)off_401824;
*(_DWORD *)(v4 + 4) = v6;
*(_BYTE *)(v4 + 3) = HIBYTE(v5);
*(_BYTE *)(v4 + 2) = BYTE2(v5);
*(_BYTE *)(v4 + 1) = BYTE1(v5);
sub_401000(a1: v4 + 8, a2: a1 + 2, a3: 6, a4: v4 + 4, a5: 11, a6: v8, a7: 48, a8: 1);
((void (__fastcall *)(int, int, int *, int, int, int))loc_40133C)(
a1: v4,
a2: 14,
a3: (int *)off_40181C,
a4: 48,
a5: a1 + 8,
a6: 48);
v9 = 1;
if ( *(_BYTE *)(a1 + 6) == 0 || (v2 = 5, sub_4011BE(a1: &v9) == 0) && v9 != 1 )
v2 = 0;
sub_401482(a1: v4);
}
else
{
return 2;
}
}
return v2;
}
|