Function at 0x419304
Capabilities:
Access peb ldr_data
Check for peb ntglobalflag flag
Get process heap flags
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
mov ecx, 9
push 0
push 0
dec ecx
jne 0x41930c
push ebx
push esi
test dl, dl
je 0x419321
add esp, 0xfffffff0
call fcn.004028c8
mov byte [ebp - 1], dl
mov esi, eax
xor eax, eax
push ebp
push 0x41ae0f
push dword fs:[eax]
mov dword fs:[eax], esp
xor edx, edx
mov eax, esi
call fcn.004027c8
mov dword [0x41d6fc], esi
xor ecx, ecx
mov dl, 1
mov eax, dword [0x40e7bc]
call fcn.0040e8cc
mov dword [esi + 4], eax
mov ebx, dword [esi + 4]
xor eax, eax
mov dword [ebx + 0x78], eax
xor eax, eax
mov dword [ebx + 0x84], eax
xor eax, eax
mov dword [ebx + 0x88], eax
mov dword [ebx + 0x8c], 0x1d0
mov dword [ebx + 0x90], 0x1a4
mov byte [ebx + 0x94], 0
mov dword [ebx + 0x9c], 0xffffff
push 0
push 1
lea eax, [ebp - 0x1c]
push eax
xor ecx, ecx
mov dl, 8
mov eax, 0x41ae40
call fcn.0040d2d4
lea edx, [ebp - 0x1c]
lea eax, [ebx + 0xa8]
mov ecx, dword [0x40c518]
call fcn.00403858
mov byte [ebx + 0xb8], 0
mov byte [ebx + 0xba], 1
mov byte [ebx + 0xbb], 1
xor eax, eax
mov dword [ebx + 0xbc], eax
mov byte [ebx + 0xc2], 1
xor eax, eax
mov dword [ebx + 0x98], eax
mov byte [ebx + 0xa0], 1
mov byte [ebx + 0xd8], 1
lea eax, [ebx + 0x80]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0xa4]
xor edx, edx
call fcn.00403118
xor eax, eax
mov dword [ebx + 0xdc], eax
xor eax, eax
mov dword [ebx + 0xe0], eax
mov byte [ebx + 0x1c5], 0xff
lea eax, [ebp - 0x20]
mov edx, 0x41ae50
call fcn.00403118
mov edx, dword [ebp - 0x20]
mov eax, ebx
call fcn.0040edb0
xor edx, edx
mov eax, ebx
call fcn.0040ede4
mov byte [ebx + 0x1c6], 0
push 0x41ae64
mov eax, dword [0x41c6bc]
mov eax, dword [eax]
push eax
call sub.user32.dll_LoadIconA
mov edx, eax
mov eax, ebx
call fcn.0040ee88
xor edx, edx
mov eax, ebx
call fcn.0040ee5c
mov byte [ebx + 0x1c4], 0
mov dword [ebx + 0x1d8], 0xffffff
lea eax, [ebx + 0x1c8]
xor edx, edx
call fcn.00403118
mov byte [ebx + 0xc0], 0
mov byte [ebx + 0x1cd], 0
mov dword [ebx + 0x1d4], ebx
mov dword [ebx + 0x1d0], 0x40f554
xor eax, eax
mov dword [ebx + 0x1bc], eax
xor eax, eax
mov dword [ebx + 0x1c0], eax
mov byte [ebx + 0x1dc], 0
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x3c]
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x7c]
mov dl, 1
mov eax, dword [0x40f66c]
call fcn.0040f720
mov dword [esi + 8], eax
mov ebx, dword [esi + 8]
xor eax, eax
mov dword [ebx + 0x78], eax
mov dword [ebx + 0x84], 0x1a9
mov dword [ebx + 0x88], 0x186
mov dword [ebx + 0x8c], 0x1e
mov dword [ebx + 0x90], 0x19
mov byte [ebx + 0x94], 0
mov dword [ebx + 0x9c], 0xf0fbff
push 0x80
push 2
lea eax, [ebp - 0x1c]
push eax
xor ecx, ecx
mov dl, 0xe
mov eax, 0x41ae74
call fcn.0040d2d4
lea edx, [ebp - 0x1c]
lea eax, [ebx + 0xa8]
mov ecx, dword [0x40c518]
call fcn.00403858
mov byte [ebx + 0xb8], 0
mov byte [ebx + 0xba], 1
mov byte [ebx + 0xbb], 1
mov dword [ebx + 0xbc], 0x7f89
mov byte [ebx + 0xc2], 1
xor eax, eax
mov dword [ebx + 0x98], eax
mov byte [ebx + 0xa0], 0
mov byte [ebx + 0xd8], 1
lea eax, [ebx + 0x80]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0xa4]
mov edx, 0x41ae80
call fcn.00403118
xor eax, eax
mov dword [ebx + 0xdc], eax
xor eax, eax
mov dword [ebx + 0xe0], eax
mov byte [ebx + 0x1d8], 0
mov dword [ebx + 0x1dc], 0x80
lea eax, [ebx + 0x1b8]
xor edx, edx
call fcn.00403118
lea edx, [ebp - 0x3c]
xor eax, eax
call fcn.0040d048
lea edx, [ebp - 0x3c]
lea eax, [ebx + 0x1bc]
mov ecx, dword [0x40c4fc]
call fcn.00403858
mov byte [ebx + 0xc1], 1
push 0x41ae8c
mov eax, dword [0x41c6bc]
mov eax, dword [eax]
push eax
call sub.user32.dll_LoadBitmapA
mov edx, eax
mov eax, ebx
call fcn.0040fbe4
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x3c]
mov dl, 1
mov eax, dword [0x4103dc]
call fcn.004027c8
mov dword [esi + 0xc], eax
mov ebx, dword [esi + 0xc]
lea eax, [ebx + 0x34]
mov edx, 0x41ae94
call fcn.00403118
lea eax, [ebx + 0x38]
xor edx, edx
call fcn.00403118
mov byte [ebx + 0x3c], 0
lea eax, [ebx + 0x40]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0x44]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0x48]
xor edx, edx
call fcn.00403118
xor eax, eax
mov dword [ebx + 0x4c], eax
lea eax, [ebx + 0x50]
mov edx, 0x41aed8
call fcn.00403118
xor eax, eax
mov dword [ebx + 0x54], eax
mov dl, 1
mov eax, dword [0x410b58]
call fcn.004027c8
mov dword [esi + 0x10], eax
mov ebx, dword [esi + 0x10]
mov byte [ebx + 4], 0xb
mov dword [ebx + 8], 2
lea eax, [ebx + 0xc]
xor edx, edx
call fcn.00403118
mov dword [ebx + 0x14], ebx
mov dword [ebx + 0x10], 0x410bdc
lea eax, [ebx + 0x18]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0x1c]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0x20]
xor edx, edx
call fcn.00403118
mov dl, 1
mov eax, dword [0x410ef8]
call fcn.004027c8
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x14]
mov dword [eax + 4], 1
mov dword [eax + 8], 2
mov byte [eax + 0xc], 0
mov dl, 1
mov eax, dword [0x410ef8]
call fcn.004027c8
mov dword [esi + 0x18], eax
mov eax, dword [esi + 0x18]
mov dword [eax + 4], 1
mov dword [eax + 8], 2
mov byte [eax + 0xc], 1
mov dl, 1
mov eax, dword [0x41103c]
call fcn.004027c8
mov dword [esi + 0x1c], eax
mov eax, dword [esi + 0x1c]
mov byte [eax + 5], 3
mov dx, 1
call fcn.004110a4
mov dl, 1
mov eax, dword [0x4103dc]
call fcn.004027c8
mov dword [esi + 0x20], eax
mov ebx, dword [esi + 0x20]
lea eax, [ebx + 0x34]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0x38]
xor edx, edx
call fcn.00403118
mov byte [ebx + 0x3c], 0
lea eax, [ebx + 0x40]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0x44]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0x48]
xor edx, edx
call fcn.00403118
xor eax, eax
mov dword [ebx + 0x4c], eax
lea eax, [ebx + 0x50]
mov edx, 0x41aed8
call fcn.00403118
xor eax, eax
mov dword [ebx + 0x54], eax
mov dl, 1
mov eax, dword [0x411148]
call fcn.004027c8
mov dword [esi + 0x24], eax
mov ebx, dword [esi + 0x24]
mov edx, 2
mov eax, ebx
call fcn.004111cc
lea eax, [ebx + 0x14]
mov edx, 0x41af0c
call fcn.00403118
mov dl, 1
mov eax, dword [0x40fd6c]
call fcn.004027c8
mov dword [esi + 0x28], eax
mov eax, dword [esi + 0x28]
mov byte [eax + 4], 7
xor edx, edx
mov dword [eax + 8], edx
xor edx, edx
mov dword [eax + 0xc], edx
mov byte [eax + 5], 0
mov byte [eax + 6], 0
mov byte [eax + 7], 0
mov dl, 1
mov eax, dword [0x411390]
call fcn.004027c8
mov dword [esi + 0x2c], eax
mov dl, 1
mov eax, dword [0x4114d0]
call fcn.004027c8
mov dword [esi + 0x30], eax
mov dl, 1
mov eax, dword [0x40fd6c]
call fcn.004027c8
mov dword [esi + 0x34], eax
mov eax, dword [esi + 0x34]
mov byte [eax + 4], 6
xor edx, edx
mov dword [eax + 8], edx
xor edx, edx
mov dword [eax + 0xc], edx
mov byte [eax + 5], 0
mov byte [eax + 6], 0
mov byte [eax + 7], 1
mov dl, 1
mov eax, dword [0x40fd6c]
call fcn.004027c8
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x38]
mov byte [eax + 4], 0xc
xor edx, edx
mov dword [eax + 8], edx
xor edx, edx
mov dword [eax + 0xc], edx
mov byte [eax + 5], 0
mov byte [eax + 6], 0
mov byte [eax + 7], 1
mov dl, 1
mov eax, dword [0x411390]
call fcn.004027c8
mov dword [esi + 0x3c], eax
mov dl, 1
mov eax, dword [0x411610]
call fcn.004027c8
mov dword [esi + 0x40], eax
mov dl, 1
mov eax, dword [0x411390]
call fcn.004027c8
mov dword [esi + 0x44], eax
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x7c]
mov dl, 1
mov eax, dword [0x4118a4]
call fcn.0041191c
mov dword [esi + 0x48], eax
mov ebx, dword [esi + 0x48]
mov byte [ebx + 0x14], 0
mov dword [ebx + 0x24], esi
push 1
lea eax, [ebx + 0x1c]
mov ecx, 1
mov edx, dword [0x41187c]
call fcn.00403d60
add esp, 4
push 0
lea eax, [ebx + 0x20]
mov ecx, 1
mov edx, dword [0x411890]
call fcn.00403d60
add esp, 4
mov dl, 1
mov eax, dword [0x41103c]
call fcn.004027c8
mov dword [esi + 0x4c], eax
mov eax, dword [esi + 0x4c]
mov byte [eax + 5], 1
mov dx, 5
call fcn.004110a4
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x7c]
mov dl, 1
mov eax, dword [0x411cdc]
call fcn.00411d90
mov dword [esi + 0x50], eax
mov ebx, dword [esi + 0x50]
xor eax, eax
mov dword [ebx + 0x78], eax
mov dword [ebx + 0x84], 5
mov dword [ebx + 0x88], 0x163
mov dword [ebx + 0x8c], 0x1c4
mov dword [ebx + 0x90], 0x1e
mov byte [ebx + 0x94], 0
mov dword [ebx + 0x9c], 0xff000018
push 0x80
push 1
lea eax, [ebp - 0x1c]
push eax
xor ecx, ecx
mov dl, 8
mov eax, 0x41af64
call fcn.0040d2d4
lea edx, [ebp - 0x1c]
lea eax, [ebx + 0xa8]
mov ecx, dword [0x40c518]
call fcn.00403858
mov byte [ebx + 0xb8], 0
mov byte [ebx + 0xba], 1
mov byte [ebx + 0xbb], 1
mov dword [ebx + 0xbc], 0x7f89
mov byte [ebx + 0xc2], 1
xor eax, eax
mov dword [ebx + 0x98], eax
mov byte [ebx + 0xa0], 1
mov byte [ebx + 0xd8], 0
lea eax, [ebx + 0x80]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0xa4]
xor edx, edx
call fcn.00403118
xor eax, eax
mov dword [ebx + 0xdc], eax
xor eax, eax
mov dword [ebx + 0xe0], eax
mov eax, dword [0x41c6b4]
mov eax, dword [eax]
mov dword [ebx + 0xc4], eax
mov dword [ebx + 0xc8], 4
mov dword [ebx + 0xcc], 0xff00000f
xor eax, eax
mov dword [ebx + 0xd0], eax
xor eax, eax
mov dword [ebx + 0xd4], eax
lea eax, [ebx + 0x1c0]
xor edx, edx
call fcn.00403118
mov byte [ebx + 0x1c5], 0
mov dword [ebx + 0x1b8], ebx
mov dword [ebx + 0x1b4], 0x411f2c
mov byte [ebx + 0x1bc], 0
mov byte [ebx + 0x1c4], 0
mov dword [ebx + 0x1c8], 0x5a
mov byte [ebx + 0x1bd], 1
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x3c]
mov dl, 1
mov eax, dword [0x412124]
call fcn.004027c8
mov dword [esi + 0x54], eax
mov dl, 1
mov eax, dword [0x411148]
call fcn.004027c8
mov dword [esi + 0x58], eax
mov ebx, dword [esi + 0x58]
mov edx, 2
mov eax, ebx
call fcn.004111cc
lea eax, [ebx + 0x14]
mov edx, 0x41af70
call fcn.00403118
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x7c]
mov dl, 1
mov eax, dword [0x411cdc]
call fcn.00411d90
mov dword [esi + 0x5c], eax
mov ebx, dword [esi + 0x5c]
xor eax, eax
mov dword [ebx + 0x78], eax
mov dword [ebx + 0x84], 0x9b
mov dword [ebx + 0x88], 0x18c
mov dword [ebx + 0x8c], 0x73
mov dword [ebx + 0x90], 0x14
mov byte [ebx + 0x94], 0
mov dword [ebx + 0x9c], 0xff000018
push 0x80
push 1
lea eax, [ebp - 0x1c]
push eax
xor ecx, ecx
mov dl, 8
mov eax, 0x41af64
call fcn.0040d2d4
lea edx, [ebp - 0x1c]
lea eax, [ebx + 0xa8]
mov ecx, dword [0x40c518]
call fcn.00403858
mov byte [ebx + 0xb8], 0
mov byte [ebx + 0xba], 1
mov byte [ebx + 0xbb], 1
xor eax, eax
mov dword [ebx + 0xbc], eax
mov byte [ebx + 0xc2], 1
xor eax, eax
mov dword [ebx + 0x98], eax
mov byte [ebx + 0xa0], 1
mov byte [ebx + 0xd8], 0
lea eax, [ebx + 0x80]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0xa4]
xor edx, edx
call fcn.00403118
xor eax, eax
mov dword [ebx + 0xdc], eax
xor eax, eax
mov dword [ebx + 0xe0], eax
mov eax, dword [0x41c6b4]
mov eax, dword [eax]
mov dword [ebx + 0xc4], eax
mov dword [ebx + 0xc8], 4
mov dword [ebx + 0xcc], 0xff00000f
xor eax, eax
mov dword [ebx + 0xd0], eax
xor eax, eax
mov dword [ebx + 0xd4], eax
lea eax, [ebx + 0x1c0]
xor edx, edx
call fcn.00403118
mov byte [ebx + 0x1c5], 2
mov dword [ebx + 0x1b8], ebx
mov dword [ebx + 0x1b4], 0x411f2c
mov byte [ebx + 0x1bc], 0
mov byte [ebx + 0x1c4], 0
mov dword [ebx + 0x1c8], 0xa
mov byte [ebx + 0x1bd], 1
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x3c]
mov dl, 1
mov eax, dword [0x41103c]
call fcn.004027c8
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0x60]
mov byte [eax + 5], 2
mov dx, 3
call fcn.004110a4
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x7c]
mov dl, 1
mov eax, dword [0x412238]
call fcn.004122e4
mov dword [esi + 0x64], eax
mov ebx, dword [esi + 0x64]
xor eax, eax
mov dword [ebx + 0x78], eax
mov dword [ebx + 0x84], 0xb
mov dword [ebx + 0x88], 0x18e
mov dword [ebx + 0x8c], 0x8c
mov dword [ebx + 0x90], 0x14
mov byte [ebx + 0x94], 0
mov dword [ebx + 0x9c], 0xf0fbff
push 0x80
push 1
lea eax, [ebp - 0x1c]
push eax
xor ecx, ecx
mov dl, 8
mov eax, 0x41af64
call fcn.0040d2d4
lea edx, [ebp - 0x1c]
lea eax, [ebx + 0xa8]
mov ecx, dword [0x40c518]
call fcn.00403858
mov byte [ebx + 0xb8], 0
mov byte [ebx + 0xba], 1
mov byte [ebx + 0xbb], 1
xor eax, eax
mov dword [ebx + 0xbc], eax
mov byte [ebx + 0xc2], 1
xor eax, eax
mov dword [ebx + 0x98], eax
mov byte [ebx + 0xa0], 1
mov byte [ebx + 0xd8], 0
lea eax, [ebx + 0x80]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0xa4]
xor edx, edx
call fcn.00403118
xor eax, eax
mov dword [ebx + 0xdc], eax
xor eax, eax
mov dword [ebx + 0xe0], eax
mov eax, dword [0x41c6b4]
mov eax, dword [eax]
mov dword [ebx + 0xc4], eax
mov dword [ebx + 0xc8], 4
mov dword [ebx + 0xcc], 0xff00000f
xor eax, eax
mov dword [ebx + 0xd0], eax
xor eax, eax
mov dword [ebx + 0xd4], eax
mov byte [ebx + 0xb9], 1
lea eax, [ebx + 0x1b8]
mov edx, 0x41af7c
call fcn.00403118
xor edx, edx
mov eax, ebx
call fcn.004124bc
xor edx, edx
mov eax, ebx
call fcn.004124b0
xor eax, eax
mov dword [ebx + 0x1b0], eax
mov byte [ebx + 0x1b4], 0
mov byte [ebx + 0x1bc], 0
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x3c]
mov dl, 1
mov eax, dword [0x412500]
call fcn.00412584
mov dword [esi + 0x68], eax
mov ebx, dword [esi + 0x68]
mov byte [ebx + 0x21], 1
lea eax, [ebx + 0x24]
mov edx, 0x41af94
call fcn.00403118
lea eax, [ebx + 0x28]
mov edx, 0x41afa4
call fcn.00403118
mov byte [ebx + 0x2c], 1
mov byte [ebx + 0x2d], 0
lea eax, [ebx + 0x30]
xor edx, edx
call fcn.00403118
mov dl, 1
mov eax, dword [0x413258]
call fcn.004027c8
mov dword [esi + 0x6c], eax
mov dl, 1
mov eax, dword [0x4133b0]
call fcn.004027c8
mov dword [esi + 0x70], eax
mov ebx, dword [esi + 0x70]
lea edx, [ebp - 0x3c]
xor eax, eax
call fcn.0040d048
lea edx, [ebp - 0x3c]
lea eax, [ebx + 0x24]
mov ecx, dword [0x40c4fc]
call fcn.00403858
lea edx, [ebp - 0x3c]
mov eax, 1
call fcn.0040d048
lea edx, [ebp - 0x3c]
lea eax, [ebx + 0x40]
mov ecx, dword [0x40c4fc]
call fcn.00403858
xor edx, edx
mov eax, ebx
call fcn.00413428
mov dl, 1
mov eax, dword [0x41103c]
call fcn.004027c8
mov dword [esi + 0x74], eax
mov eax, dword [esi + 0x74]
mov byte [eax + 5], 1
mov dx, 2
call fcn.004110a4
mov dl, 1
mov eax, dword [0x4135a0]
call fcn.004027c8
mov dword [esi + 0x78], eax
mov eax, dword [esi + 0x78]
mov byte [eax + 0x41], 1
mov byte [eax + 0x42], 1
mov byte [eax + 0x43], 1
mov byte [eax + 0x44], 0
mov byte [eax + 0x40], 0x70
mov dl, 1
mov eax, dword [0x41103c]
call fcn.004027c8
mov dword [esi + 0x7c], eax
mov eax, dword [esi + 0x7c]
mov byte [eax + 5], 1
mov dx, 2
call fcn.004110a4
mov dl, 1
mov eax, dword [0x41103c]
call fcn.004027c8
mov dword [esi + 0x80], eax
mov eax, dword [esi + 0x80]
mov byte [eax + 5], 2
mov dx, 1
call fcn.004110a4
mov dl, 1
mov eax, dword [0x41393c]
call fcn.00413994
mov dword [esi + 0x84], eax
mov ebx, dword [esi + 0x84]
mov edx, 0x32
mov eax, ebx
call fcn.00413a28
mov dl, 1
mov eax, ebx
call fcn.00413a34
xor edx, edx
mov eax, ebx
call fcn.00413a40
mov byte [ebx + 0x14], 0
mov dl, 1
mov eax, dword [0x412124]
call fcn.004027c8
mov dword [esi + 0x88], eax
mov dl, 1
mov eax, dword [0x413258]
call fcn.004027c8
mov dword [esi + 0x8c], eax
mov dl, 1
mov eax, dword [0x413aec]
call fcn.004027c8
mov dword [esi + 0x90], eax
mov ebx, dword [esi + 0x90]
lea eax, [ebx + 0x20]
mov edx, 0x41afac
call fcn.00403118
mov dword [ebx + 0xc], 1
mov dword [ebx + 0x10], 0xffffffff
mov dword [ebx + 0x14], 1
mov byte [ebx + 0x1c], 1
mov byte [ebx + 0x29], 0
mov byte [ebx + 0x28], 0
mov dl, 1
mov eax, dword [0x412124]
call fcn.004027c8
mov dword [esi + 0x94], eax
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x7c]
mov dl, 1
mov eax, dword [0x413e54]
call fcn.0040dae8
mov dword [esi + 0x98], eax
mov ebx, dword [esi + 0x98]
xor eax, eax
mov dword [ebx + 0x78], eax
xor eax, eax
mov dword [ebx + 0x84], eax
mov dword [ebx + 0x88], 0x19
mov dword [ebx + 0x8c], 0x1d0
mov dword [ebx + 0x90], 0x145
mov byte [ebx + 0x94], 0
mov dword [ebx + 0x9c], 0xf0fbff
push 0xff
push 1
lea eax, [ebp - 0x1c]
push eax
xor ecx, ecx
mov dl, 0xa
mov eax, 0x41af64
call fcn.0040d2d4
lea edx, [ebp - 0x1c]
lea eax, [ebx + 0xa8]
mov ecx, dword [0x40c518]
call fcn.00403858
mov byte [ebx + 0xb8], 0
mov byte [ebx + 0xba], 1
mov byte [ebx + 0xbb], 1
xor eax, eax
mov dword [ebx + 0xbc], eax
mov byte [ebx + 0xc2], 1
xor eax, eax
mov dword [ebx + 0x98], eax
mov byte [ebx + 0xa0], 0
mov byte [ebx + 0xd8], 1
lea eax, [ebx + 0x80]
xor edx, edx
call fcn.00403118
lea eax, [ebx + 0xa4]
xor edx, edx
call fcn.00403118
xor eax, eax
mov dword [ebx + 0xdc], eax
xor eax, eax
mov dword [ebx + 0xe0], eax
mov eax, dword [0x41c6b4]
mov eax, dword [eax]
mov dword [ebx + 0xc4], eax
mov dword [ebx + 0xc8], 4
mov dword [ebx + 0xcc], 0xff00000f
xor eax, eax
mov dword [ebx + 0xd0], eax
xor eax, eax
mov dword [ebx + 0xd4], eax
mov byte [ebx + 0x1c5], 2
mov dword [ebx + 0x1c8], 0xaeffff
mov dword [ebx + 0x1cc], 0xbbffbb
mov eax, ebx
call fcn.00414094
mov dl, 1
mov eax, dword [0x411610]
call fcn.004027c8
mov dword [esi + 0x9c], eax
mov dl, 1
mov eax, dword [0x414854]
call fcn.004027c8
mov dword [esi + 0xa0], eax
mov ebx, dword [esi + 0xa0]
mov byte [ebx + 8], 1
lea eax, [ebp - 0x20]
xor edx, edx
call fcn.00403118
mov edx, dword [ebp - 0x20]
mov eax, ebx
call fcn.00414a0c
mov dl, 1
mov eax, dword [0x411148]
call fcn.004027c8
mov dword [esi + 0xa4], eax
mov eax, dword [esi + 0xa4]
mov dword [ebp - 8], eax
mov edx, 2
mov eax, dword [ebp - 8]
call fcn.004111cc
mov eax, dword [ebp - 8]
add eax, 0x14
mov edx, 0x41afb0
call fcn.00403118
mov dl, 1
mov eax, dword [0x41103c]
call fcn.004027c8
mov dword [esi + 0xa8], eax
mov eax, dword [esi + 0xa8]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov byte [eax + 5], 1
mov dx, 2
mov eax, dword [ebp - 0xc]
call fcn.004110a4
mov eax, dword [esi + 4]
mov ecx, dword [eax + 0x7c]
mov dl, 1
mov eax, dword [0x4118a4]
call fcn.0041191c
mov dword [esi + 0xac], eax
mov ebx, dword [esi + 0xac]
mov byte [ebx + 0x14], 0
mov eax, ebx
call fcn.004119d8
mov dword [ebx + 0x24], esi
push 2
lea eax, [ebx + 0x1c]
mov ecx, 1
mov edx, dword [0x41187c]
call fcn.00403d60
add esp, 4
push 0
lea eax, [ebx + 0x20]
mov ecx, 1
mov edx, dword [0x411890]
call fcn.00403d60
add esp, 4
mov dl, 1
mov eax, dword [0x414ae0]
call fcn.004027c8
mov dword [esi + 0xb0], eax
mov eax, dword [esi + 0x4c]
push eax
push 0x4110cc
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 4]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x228], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x22c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x230], edx
mov eax, dword [esi + 0x60]
push eax
push 0x4110cc
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x1ac], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x1b0], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x1b4], edx
mov eax, dword [esi + 0x44]
push eax
push 0x411400
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0xc]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0xc4], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0xc8], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0xcc], edx
mov eax, dword [esi + 0x28]
push eax
push 0x4102ac
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x10]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x30], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x34], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x38], edx
mov eax, dword [esi + 0x44]
push eax
push 0x41147c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x10]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x24], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x28], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x2c], edx
mov eax, dword [esi + 0x18]
push eax
push 0x410f50
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x14]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x34], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x38], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x90]
push eax
push 0x413bb8
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x18]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x34], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x38], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0xc]
push eax
push 0x410ad4
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x1c]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x54]
push eax
push 0x41218c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x20]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0xc4], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0xc8], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0xcc], edx
mov eax, dword [esi + 0x24]
push eax
push 0x41134c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x20]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x64], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x68], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x6c], edx
mov eax, dword [esi + 0x88]
push eax
push 0x41218c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x24]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x18], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x1c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x20], edx
mov eax, dword [esi + 0x30]
push eax
push 0x4115b4
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x24]
mov eax, dword [eax + 0x10]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x14], edx
mov eax, dword [esi + 0x14]
push eax
push 0x410f50
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x28]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x34], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x38], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x34]
push eax
push 0x41023c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x2c]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x3c], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x40], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x44], edx
mov eax, dword [esi + 0x58]
push eax
push 0x41134c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x2c]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x48], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x4c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x50], edx
mov eax, dword [esi + 0x58]
push eax
push 0x411214
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x30]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x2c], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x30], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x34], edx
mov eax, dword [esi + 0x3c]
push eax
push 0x411400
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x34]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x34], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x38], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x2c]
push eax
push 0x41147c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x34]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x14], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x18], edx
mov eax, dword [esi + 0x30]
push eax
push 0x411540
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x38]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x34], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x38], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x3c]
push eax
push 0x41147c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x38]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x14], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x18], edx
mov eax, dword [esi + 0x38]
push eax
push 0x41031c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x3c]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x3c], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x40], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x44], edx
mov eax, dword [esi + 0x20]
push eax
push 0x410ad4
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x40]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x2c], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x30], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x34], edx
mov eax, dword [esi + 0x50]
push eax
push 0x411f08
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x40]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x20], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x24], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x28], edx
mov eax, dword [esi + 0x10]
push eax
push 0x410c30
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x44]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x3c], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x40], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x44], edx
mov eax, dword [esi + 4]
push eax
push 0x40e008
lea edx, [ebp - 0x48]
mov ax, 4
call fcn.0040c708
mov eax, dword [esi + 0x48]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x48]
mov dword [eax], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x1c]
push eax
push 0x4110cc
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x4c]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x48]
push eax
push 0x411aec
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x4c]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x14], edx
mov eax, dword [esi + 0x80]
push eax
push 0x4110cc
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x4c]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x18], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x1c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x20], edx
mov eax, dword [esi + 0x78]
push eax
push 0x41375c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x4c]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x24], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x28], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x2c], edx
mov eax, dword [esi + 0x60]
push eax
push 0x4110cc
lea edx, [ebp - 0x48]
mov ax, 1
call fcn.0040c708
mov eax, dword [esi + 0x50]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x1d8], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x1dc], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x1e0], edx
mov eax, dword [esi + 0x50]
push eax
push 0x411e98
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x54]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x2c], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x30], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x34], edx
mov eax, dword [esi + 0x2c]
push eax
push 0x411400
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x58]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x18], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x1c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x20], edx
mov eax, dword [esi + 0x5c]
push eax
push 0x411f08
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x58]
mov eax, dword [eax + 0x10]
mov edx, dword [ebp - 0x48]
mov dword [eax], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x50]
push eax
push 0x411f08
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x58]
mov eax, dword [eax + 0x10]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x14], edx
mov eax, dword [esi + 0x24]
push eax
push 0x411214
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x60]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x68]
push eax
push 0x4127a8
lea edx, [ebp - 0x48]
mov ax, 1
call fcn.0040c708
mov eax, dword [esi + 0x60]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x14], edx
mov eax, dword [esi + 0x80]
push eax
push 0x4110cc
lea edx, [ebp - 0x48]
mov ax, 1
call fcn.0040c708
mov eax, dword [esi + 0x60]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x18], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x1c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x20], edx
mov eax, dword [esi + 0x6c]
push eax
push 0x4132c8
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x68]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x58], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x5c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x60], edx
mov eax, dword [esi + 0x5c]
push eax
push 0x411f08
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x68]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x34], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x38], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x3c], edx
mov eax, dword [esi + 0x74]
push eax
push 0x4110cc
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x6c]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x48], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x4c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x50], edx
mov eax, dword [esi + 0x70]
push eax
push 0x413558
lea edx, [ebp - 0x48]
mov ax, 2
call fcn.0040c708
mov eax, dword [esi + 0x6c]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x3c], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x40], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x44], edx
mov eax, dword [esi + 0x5c]
push eax
push 0x4120c8
lea edx, [ebp - 0x48]
mov ax, 2
call fcn.0040c708
mov eax, dword [esi + 0x70]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x8c], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x90], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x94], edx
mov eax, dword [esi + 0x5c]
push eax
push 0x411e98
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x74]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x70]
push eax
push fcn.00413460
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x74]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x14], edx
mov eax, dword [esi + 0x7c]
push eax
push 0x4110cc
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x78]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x60], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x64], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x68], edx
mov eax, dword [esi + 0x68]
push eax
push 0x4128e0
lea edx, [ebp - 0x48]
mov ax, 2
call fcn.0040c708
mov eax, dword [esi + 0x7c]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 8], edx
mov eax, dword [esi + 4]
push eax
push 0x40f5a0
lea edx, [ebp - 0x48]
mov ax, 3
call fcn.0040c708
mov eax, dword [esi + 0x7c]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x14], edx
mov eax, dword [esi + 0x68]
push eax
push 0x4125f8
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x80]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x1c]
push eax
push 0x4110cc
lea edx, [ebp - 0x48]
mov ax, 2
call fcn.0040c708
mov eax, dword [esi + 0x84]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x18], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x1c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x20], edx
mov eax, dword [esi + 0x8c]
push eax
push 0x4132c8
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x88]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x2c], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x30], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x34], edx
mov eax, dword [esi + 0x50]
push eax
push 0x411f08
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x88]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x20], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x24], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x28], edx
mov eax, dword [esi + 0x40]
push eax
push 0x4116d0
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x8c]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x48], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x4c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x50], edx
mov eax, dword [esi + 0x94]
push eax
push 0x41218c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x90]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x38], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x3c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x40], edx
mov eax, dword [esi + 0xa8]
push eax
push 0x4110cc
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x94]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x2c], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x30], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x34], edx
mov eax, dword [esi + 0x90]
push eax
push 0x413dfc
lea edx, [ebp - 0x48]
mov ax, 1
call fcn.0040c708
mov eax, dword [esi + 0x94]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x20], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x24], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x28], edx
mov eax, dword [esi + 0xa0]
push eax
push 0x41492c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0x9c]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x2c], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x30], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x34], edx
mov eax, dword [esi + 0x90]
push eax
push 0x413dfc
lea edx, [ebp - 0x48]
mov ax, 1
call fcn.0040c708
mov eax, dword [esi + 0x9c]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x20], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x24], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x28], edx
mov eax, dword [esi + 0x98]
push eax
push 0x413f14
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0xa0]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x24], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x28], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x2c], edx
mov eax, dword [esi + 0x98]
push eax
push 0x413fd4
lea edx, [ebp - 0x48]
mov ax, 1
call fcn.0040c708
mov eax, dword [esi + 0xa0]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x18], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x1c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x20], edx
mov eax, dword [esi + 0x90]
push eax
push 0x413dfc
lea edx, [ebp - 0x48]
mov ax, 1
call fcn.0040c708
mov eax, dword [esi + 0xa0]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x14], edx
mov eax, dword [esi + 0xa0]
push eax
push 0x4149bc
lea edx, [ebp - 0x48]
mov ax, 1
call fcn.0040c708
mov eax, dword [esi + 0xa4]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0x18], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x1c], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x20], edx
mov eax, dword [esi + 0x68]
push eax
push 0x412974
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0xa4]
mov eax, dword [eax + 0x10]
mov edx, dword [ebp - 0x48]
mov dword [eax], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 8], edx
mov eax, dword [esi + 0xa4]
push eax
push 0x411214
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0xa8]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 8], edx
mov eax, dword [esi + 0x9c]
push eax
push 0x4116d0
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0xa8]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x14], edx
mov eax, dword [esi + 4]
push eax
push 0x40f5a0
lea edx, [ebp - 0x48]
mov ax, 3
call fcn.0040c708
mov eax, dword [esi + 0xac]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x48]
mov dword [eax], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 8], edx
mov eax, dword [esi + 0xb0]
push eax
push 0x414b3c
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0xac]
mov eax, dword [eax + 0x1c]
mov edx, dword [ebp - 0x48]
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 0x10], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0x14], edx
mov eax, dword [esi + 4]
push eax
push 0x40e128
lea edx, [ebp - 0x48]
xor eax, eax
call fcn.0040c708
mov eax, dword [esi + 0xb0]
mov edx, dword [ebp - 0x48]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x44]
mov dword [eax + 8], edx
mov edx, dword [ebp - 0x40]
mov dword [eax + 0xc], edx
xor edx, edx
mov eax, dword [esi + 4]
call fcn.0040e0bc
xor edx, edx
mov eax, dword [esi + 4]
call fcn.0040e094
xor edx, edx
mov eax, dword [esi + 4]
call fcn.0040e86c
mov eax, dword [esi + 4]
xor edx, edx
mov dword [eax + 0x1b8], edx
xor edx, edx
mov eax, dword [esi + 8]
call fcn.0040e0bc
xor edx, edx
mov eax, dword [esi + 8]
call fcn.0040e094
mov edx, 0x414ff0
mov eax, dword [esi + 0x48]
call fcn.00411b38
xor edx, edx
mov eax, dword [esi + 0x50]
call fcn.0040e0bc
xor edx, edx
mov eax, dword [esi + 0x50]
call fcn.0040e094
xor edx, edx
mov eax, dword [esi + 0x5c]
call fcn.0040e0bc
xor edx, edx
mov eax, dword [esi + 0x5c]
call fcn.0040e094
xor edx, edx
mov eax, dword [esi + 0x64]
call fcn.0040e0bc
xor edx, edx
mov eax, dword [esi + 0x64]
call fcn.0040e094
xor edx, edx
mov eax, dword [esi + 0x98]
call fcn.0040e0bc
xor edx, edx
mov eax, dword [esi + 0x98]
call fcn.0040e094
mov edx, 0x418c3c
mov eax, dword [esi + 0xac]
call fcn.00411b38
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x7c]
call fcn.0040a5bc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x41ae16
lea eax, [ebp - 0x3c]
mov edx, dword [0x40c4fc]
call fcn.00403648
lea eax, [ebp - 0x20]
call fcn.00402ff4
lea eax, [ebp - 0x1c]
mov edx, dword [0x40c518]
call fcn.00403648
ret