blob: d5209c92e8697cc22a3f3e25a7b8d1d3ee01d721 (
plain) (
blame)
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
46
47
48
49
50
51
52
53
54
55
56
|
int __fastcall sub_402F90(int a1, int a2)
{
int v4; // r7
int v5; // r5
int *v6; // r6
int v7; // r4
int v8; // r2
int v9; // r3
__int64 v10; // kr00_8
int v11; // r0
int v12; // r0
v4 = 0;
sub_405084(a1: 0, a2: aAmdTaGcpCreate_2);
v5 = a1 + 2048;
v6 = (int *)(a1 + 7680);
while ( 1 )
{
if ( v4 == 0x40000000 )
{
v7 = 785;
goto LABEL_10;
}
if ( *(_DWORD *)(v5 + 32) == 0 )
break;
v4 += 0x1000000;
v5 += 88;
}
sub_40124C(a1: v5, a2: 88);
*(_DWORD *)(v5 + 32) = 1;
*(_QWORD *)(v5 + 8) = *(_QWORD *)(a2 + 16);
v8 = *v6;
v9 = v6[2];
v10 = *(_QWORD *)(a2 + 24);
++*v6;
v6[2] = v9 + 1;
v11 = v9 & 0xFFFFFF | v4;
*(_QWORD *)(v5 + 16) = v10;
*(_DWORD *)v5 = v11;
if ( v8 == 0 )
{
v12 = sub_405428(a1: 1);
if ( v12 != 0 )
{
v7 = v12 | 0x20000000;
goto LABEL_10;
}
v11 = *(_DWORD *)v5;
}
*(_DWORD *)(a2 + 6480) = v11;
v7 = 0;
sub_405084(a1: 0, a2: aAmdTaGcpCreate_3);
LABEL_10:
sub_405084(a1: 0, a2: aAmdTaGcpCreate_4);
return v7;
}
|