Function at 0x41a74c
Capabilities:
Get number of processors

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x3a
push 0
push 0
dec ecx
jne 0x41a754
push ebx
push esi
push edi
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00402788
mov edi, dword [0x41e618]
xor eax, eax
push ebp
push 0x41bf35
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.0040c3ec
mov dword [ebp - 8], eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.00407314
mov eax, dword [ebp - 4]
mov edx, 0x41bf4c
call fcn.004026e4
jne 0x41a8b0
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41a8a5
inc ebx
xor esi, esi
lea ecx, [ebp - 0x10]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x10]
lea edx, [ebp - 0xc]
call fcn.0041a0a0
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x14]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41a89d
lea ecx, [ebp - 0x18]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x18]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x1c]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x1c]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x20]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x20]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41a7b8
mov eax, dword [0x41e63c]
mov dword [eax], 0x20
mov eax, dword [ebp - 4]
mov edx, 0x41bf64
call fcn.004026e4
jne 0x41a9d1
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41a9c6
inc ebx
xor esi, esi
lea ecx, [ebp - 0x28]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x28]
lea edx, [ebp - 0x24]
call fcn.0041a0a0
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x2c]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41a9be
lea ecx, [ebp - 0x30]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x30]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x34]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x34]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x38]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x38]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41a8d9
mov eax, dword [0x41e63c]
mov dword [eax], 0x20
mov eax, dword [ebp - 4]
mov edx, 0x41bf70
call fcn.004026e4
jne 0x41aaf2
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41aae7
inc ebx
xor esi, esi
lea ecx, [ebp - 0x40]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x40]
lea edx, [ebp - 0x3c]
call fcn.0041a0a0
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x44]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x44]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41aadf
lea ecx, [ebp - 0x48]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x48]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x4c]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x4c]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x50]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x50]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41a9fa
mov eax, dword [0x41e63c]
mov dword [eax], 0x20
mov eax, dword [ebp - 4]
mov edx, 0x41bf80
call fcn.004026e4
jne 0x41ac13
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41ac08
inc ebx
xor esi, esi
lea ecx, [ebp - 0x58]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x58]
lea edx, [ebp - 0x54]
call fcn.0041a0a0
mov edx, dword [ebp - 0x54]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x5c]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x5c]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41ac00
lea ecx, [ebp - 0x60]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x60]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x64]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x64]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x68]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x68]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41ab1b
mov eax, dword [0x41e63c]
mov dword [eax], 0x10
mov eax, dword [ebp - 4]
mov edx, 0x41bf90
call fcn.004026e4
jne 0x41ad34
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41ad29
inc ebx
xor esi, esi
lea ecx, [ebp - 0x70]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x70]
lea edx, [ebp - 0x6c]
call fcn.0041a0a0
mov edx, dword [ebp - 0x6c]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x74]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x74]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41ad21
lea ecx, [ebp - 0x78]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x78]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x7c]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x7c]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x80]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x80]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41ac3c
mov eax, dword [0x41e63c]
mov dword [eax], 0x28
mov eax, dword [ebp - 4]
mov edx, 0x41bfa0
call fcn.004026e4
jne 0x41ae79
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41ae6e
inc ebx
xor esi, esi
lea ecx, [ebp - 0x88]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x88]
lea edx, [ebp - 0x84]
call fcn.0041a0a0
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x8c]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x8c]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41ae66
lea ecx, [ebp - 0x90]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x90]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x94]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x94]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x98]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x98]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41ad5d
mov eax, dword [0x41e63c]
mov dword [eax], 0x28
mov eax, dword [ebp - 4]
mov edx, 0x41bfb0
call fcn.004026e4
jne 0x41afbe
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41afb3
inc ebx
xor esi, esi
lea ecx, [ebp - 0xa0]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0xa0]
lea edx, [ebp - 0x9c]
call fcn.0041a0a0
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0xa4]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0xa4]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41afab
lea ecx, [ebp - 0xa8]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0xa8]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0xac]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0xac]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0xb0]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0xb0]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41aea2
mov eax, dword [0x41e63c]
mov dword [eax], 0x40
mov eax, dword [ebp - 4]
mov edx, 0x41bfc0
call fcn.004026e4
jne 0x41b103
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41b0f8
inc ebx
xor esi, esi
lea ecx, [ebp - 0xb8]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0xb8]
lea edx, [ebp - 0xb4]
call fcn.0041a0a0
mov edx, dword [ebp - 0xb4]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0xbc]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0xbc]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41b0f0
lea ecx, [ebp - 0xc0]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0xc0]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0xc4]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0xc4]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0xc8]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0xc8]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41afe7
mov eax, dword [0x41e63c]
mov dword [eax], 0x60
mov eax, dword [ebp - 4]
mov edx, 0x41bfd0
call fcn.004026e4
jne 0x41b248
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41b23d
inc ebx
xor esi, esi
lea ecx, [ebp - 0xd0]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0xd0]
lea edx, [ebp - 0xcc]
call fcn.0041a0a0
mov edx, dword [ebp - 0xcc]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0xd4]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0xd4]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41b235
lea ecx, [ebp - 0xd8]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0xd8]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0xdc]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0xdc]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0xe0]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0xe0]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41b12c
mov eax, dword [0x41e63c]
mov dword [eax], 0x80
mov eax, dword [ebp - 4]
mov edx, 0x41bfe0
call fcn.004026e4
jne 0x41b38d
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41b382
inc ebx
xor esi, esi
lea ecx, [ebp - 0xe8]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0xe8]
lea edx, [ebp - 0xe4]
call fcn.0041a0a0
mov edx, dword [ebp - 0xe4]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0xec]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0xec]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41b37a
lea ecx, [ebp - 0xf0]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0xf0]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0xf4]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0xf4]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0xf8]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0xf8]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41b271
mov eax, dword [0x41e63c]
mov dword [eax], 0x20
mov eax, dword [ebp - 4]
mov edx, 0x41bff4
call fcn.004026e4
jne 0x41b4d2
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41b4c7
inc ebx
xor esi, esi
lea ecx, [ebp - 0x100]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x100]
lea edx, [ebp - 0xfc]
call fcn.0041a0a0
mov edx, dword [ebp - 0xfc]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x104]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x104]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41b4bf
lea ecx, [ebp - 0x108]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x108]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x10c]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x10c]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x110]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x110]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41b3b6
mov eax, dword [0x41e63c]
mov dword [eax], 0x28
mov eax, dword [ebp - 4]
mov edx, 0x41c008
call fcn.004026e4
jne 0x41b617
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41b60c
inc ebx
xor esi, esi
lea ecx, [ebp - 0x118]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x118]
lea edx, [ebp - 0x114]
call fcn.0041a0a0
mov edx, dword [ebp - 0x114]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x11c]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x11c]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41b604
lea ecx, [ebp - 0x120]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x120]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x124]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x124]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x128]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x128]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41b4fb
mov eax, dword [0x41e63c]
mov dword [eax], 0x30
mov eax, dword [ebp - 4]
mov edx, 0x41c01c
call fcn.004026e4
jne 0x41b75c
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41b751
inc ebx
xor esi, esi
lea ecx, [ebp - 0x130]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x130]
lea edx, [ebp - 0x12c]
call fcn.0041a0a0
mov edx, dword [ebp - 0x12c]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x134]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x134]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41b749
lea ecx, [ebp - 0x138]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x138]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x13c]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x13c]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x140]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x140]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41b640
mov eax, dword [0x41e63c]
mov dword [eax], 0x20
mov eax, dword [ebp - 4]
mov edx, 0x41c030
call fcn.004026e4
jne 0x41b8a1
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41b896
inc ebx
xor esi, esi
lea ecx, [ebp - 0x148]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x148]
lea edx, [ebp - 0x144]
call fcn.0041a0a0
mov edx, dword [ebp - 0x144]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x14c]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x14c]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41b88e
lea ecx, [ebp - 0x150]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x150]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x154]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x154]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x158]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x158]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41b785
mov eax, dword [0x41e63c]
mov dword [eax], 0x28
mov eax, dword [ebp - 4]
mov edx, 0x41c044
call fcn.004026e4
jne 0x41b9e6
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41b9db
inc ebx
xor esi, esi
lea ecx, [ebp - 0x160]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x160]
lea edx, [ebp - 0x15c]
call fcn.0041a0a0
mov edx, dword [ebp - 0x15c]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x164]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x164]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41b9d3
lea ecx, [ebp - 0x168]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x168]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x16c]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x16c]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x170]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x170]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41b8ca
mov eax, dword [0x41e63c]
mov dword [eax], 0x30
mov eax, dword [ebp - 4]
mov edx, 0x41c058
call fcn.004026e4
jne 0x41bb2b
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41bb20
inc ebx
xor esi, esi
lea ecx, [ebp - 0x178]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x178]
lea edx, [ebp - 0x174]
call fcn.0041a0a0
mov edx, dword [ebp - 0x174]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x17c]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x17c]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41bb18
lea ecx, [ebp - 0x180]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x180]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x184]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x184]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x188]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x188]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41ba0f
mov eax, dword [0x41e63c]
mov dword [eax], 0x80
mov eax, dword [ebp - 4]
mov edx, 0x41c06c
call fcn.004026e4
jne 0x41bc70
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41bc65
inc ebx
xor esi, esi
lea ecx, [ebp - 0x190]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x190]
lea edx, [ebp - 0x18c]
call fcn.0041a0a0
mov edx, dword [ebp - 0x18c]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x194]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x194]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41bc5d
lea ecx, [ebp - 0x198]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x198]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x19c]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x19c]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x1a0]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x1a0]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41bb54
mov eax, dword [0x41e63c]
mov dword [eax], 0x20
mov eax, dword [ebp - 4]
mov edx, 0x41c080
call fcn.004026e4
jne 0x41bdb5
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41bdaa
inc ebx
xor esi, esi
lea ecx, [ebp - 0x1a8]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x1a8]
lea edx, [ebp - 0x1a4]
call fcn.0041a0a0
mov edx, dword [ebp - 0x1a4]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x1ac]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x1ac]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41bda2
lea ecx, [ebp - 0x1b0]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x1b0]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x1b4]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x1b4]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x1b8]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x1b8]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41bc99
mov eax, dword [0x41e63c]
mov dword [eax], 0x28
mov eax, dword [ebp - 4]
mov edx, 0x41c094
call fcn.004026e4
jne 0x41befa
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov ebx, dword [eax + 0x1c]
dec ebx
test ebx, ebx
jl 0x41beef
inc ebx
xor esi, esi
lea ecx, [ebp - 0x1c0]
mov eax, dword [0x41e658]
mov eax, dword [eax]
mov edx, esi
call fcn.0040c544
mov eax, dword [ebp - 0x1c0]
lea edx, [ebp - 0x1bc]
call fcn.0041a0a0
mov edx, dword [ebp - 0x1bc]
mov eax, dword [ebp - 8]
call fcn.0040cbb4
lea ecx, [ebp - 0x1c4]
mov eax, dword [ebp - 8]
xor edx, edx
call fcn.0040c544
mov eax, dword [ebp - 0x1c4]
mov edx, dword [ebp - 4]
call fcn.004026e4
jne 0x41bee7
lea ecx, [ebp - 0x1c8]
mov eax, dword [ebp - 8]
mov edx, 1
call fcn.0040c544
mov edx, dword [ebp - 0x1c8]
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.004082e8
lea ecx, [ebp - 0x1cc]
mov eax, dword [ebp - 8]
mov edx, 6
call fcn.0040c544
mov eax, dword [ebp - 0x1cc]
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 1
call fcn.004071fc
push 0x41bf58
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
mov ecx, 2
call fcn.004071fc
lea ecx, [ebp - 0x1d0]
mov eax, dword [ebp - 8]
mov edx, 7
call fcn.0040c544
mov eax, dword [ebp - 0x1d0]
call fcn.0040b864
inc eax
push eax
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
call fcn.0040ab94
mov edx, eax
dec edx
mov eax, dword [edi]
mov eax, dword [eax + 0x30]
pop ecx
call fcn.00408324
inc esi
dec ebx
jne 0x41bdde
mov eax, dword [0x41e63c]
mov dword [eax], 0x3e8
mov eax, dword [ebp - 8]
call fcn.00408b90
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x41bf3c
lea eax, [ebp - 0x1d0]
mov edx, 0x64
call fcn.00402354
lea eax, [ebp - 0x40]
mov edx, 0xe
call fcn.00402354
lea eax, [ebp - 4]
call fcn.00402330
ret