Function at 0x4050d1
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x50
mov dword [ebp - 4], 0
push 0x10
call fcn.0049961c
add esp, 4
mov dword [ebp - 8], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
push 0x1c4
call fcn.0049961c
add esp, 4
mov dword [ebp - 0xc], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x71
rep stosd dword es:[edi], eax
add ebx, 0x68
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x24
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 9
rep stosd dword es:[edi], eax
add ebx, 0x20
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x405152
pop ebx
add ebx, 0x74
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx], 0x5c9886
pop ebx
add ebx, 8
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40523a
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40529a
pop ebx
add ebx, 0x28
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x6c
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x1b
rep stosd dword es:[edi], eax
add ebx, 0x38
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx], 0x5c9886
pop ebx
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x4052fa
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x2c
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xb
rep stosd dword es:[edi], eax
add ebx, 0x24
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ebx
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40537c
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x2c
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xb
rep stosd dword es:[edi], eax
add ebx, 0x1c
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
add ebx, 4
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ebx
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x405554
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x18
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 6
rep stosd dword es:[edi], eax
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40572c
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40577c
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x28
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xa
rep stosd dword es:[edi], eax
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x4057d5
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x1c
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 7
rep stosd dword es:[edi], eax
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x405825
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x30
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xc
rep stosd dword es:[edi], eax
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x405875
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 8
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x4058c5
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x24
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 9
rep stosd dword es:[edi], eax
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x405917
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x24
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 9
rep stosd dword es:[edi], eax
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x405967
pop ebx
add ebx, 4
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x2c
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0xb
rep stosd dword es:[edi], eax
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x4059b7
pop ebx
add ebx, 0x28
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x48
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 0x12
rep stosd dword es:[edi], eax
add ebx, 0x44
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x405a4e
pop ebx
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x405a07
pop ebx
add ebx, 0xc
push ebx
push 0xc
call fcn.0049961c
add esp, 4
pop ebx
mov dword [ebx], eax
mov edi, eax
mov esi, 0x5c987e
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push ebx
mov ebx, edi
mov ecx, 1
push ecx
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x405abb
pop ebx
add ebx, 8
push ebx
push 8
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
pop ebx
add ebx, 4
push ebx
push 8
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
pop ebx
add ebx, 8
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
push 0x10
call fcn.0049961c
add esp, 4
mov dword [ebp - 0x24], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
push dword [ebp + 8]
call fcn.0040968b
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jle 0x405bdb
jmp 0x408d77
mov dword [ebp - 0x28], esp
push 0xfffffff0
push dword [ebp + 8]
mov eax, 0x11
call fcn.0049962e
cmp dword [ebp - 0x28], esp
je 0x405c02
push 6
call fcn.00499628
add esp, 4
mov dword [ebp - 4], eax
push 0x80000301
push 0
push 0x2000000
push 1
mov ebx, 0x499a60
call fcn.00499634
add esp, 0x10
push 0x80000301
push 0
push eax
push 0x80000301
push 0
push dword [ebp - 4]
push 2
mov ebx, 0x499a70
call fcn.00499634
add esp, 0x1c
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], esp
push dword [ebp - 0x2c]
push 0xfffffff0
push dword [ebp + 8]
mov eax, 0x12
call fcn.0049962e
cmp dword [ebp - 0x30], esp
je 0x405c74
push 6
call fcn.00499628
add esp, 4
mov dword [ebp - 0x28], esp
push dword [ebp - 8]
push dword [ebp + 8]
mov eax, 0xa
call fcn.0049962e
cmp dword [ebp - 0x28], esp
je 0x405c99
push 6
call fcn.00499628
add esp, 4
cmp dword [0x5f3310], 0
jne 0x405cc9
push ioctlsocket
push 0
push 0x46202c
push 1
mov ebx, 0x49a1e0
call fcn.00499634
add esp, 0x10
mov dword [0x5f3310], eax
mov dword [0x5f3314], 3
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x28], ebx
mov eax, dword [ebp + 8]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x28
mov dword [ebp - 0x28], ebx
cmp dword [ebp + 0xc], 0x19
mov eax, 0
setl al
test eax, eax
je 0x405d08
mov eax, 0x19
jmp 0x405d0b
mov eax, dword [ebp + 0xc]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x2c
mov dword [ebp - 0x28], ebx
cmp dword [ebp + 0x28], 0
mov eax, 0
sete al
test eax, eax
je 0x405d37
mov eax, 0
jmp 0x405d3a
mov eax, dword [ebp + 0x24]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x30
mov dword [ebp - 0x28], ebx
cmp dword [ebp + 0x30], 0
mov eax, 0
sete al
test eax, eax
je 0x405d66
mov eax, 0
jmp 0x405d69
mov eax, dword [ebp + 0x2c]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x34
mov dword [ebp - 0x28], ebx
push 0x80000301
push 0
push 0x20000
push 0x80000301
push 0
push dword [ebp - 4]
push 2
mov ebx, 0x499a90
call fcn.00499634
add esp, 0x1c
cmp dword [ebp - 4], eax
mov eax, 0
sete al
test eax, eax
je 0x405dbc
mov eax, 1
jmp 0x405dc1
mov eax, 0
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x38
mov dword [ebp - 0x28], ebx
push 0x80000301
push 0
push 0x10000
push 0x80000301
push 0
push dword [ebp - 4]
push 2
mov ebx, 0x499a90
call fcn.00499634
add esp, 0x1c
cmp dword [ebp - 4], eax
mov eax, 0
sete al
test eax, eax
je 0x405e14
mov eax, 1
jmp 0x405e19
mov eax, 0
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xa8
mov dword [ebp - 0x28], ebx
cmp dword [ebp + 0x18], 0
mov eax, 0
sete al
test eax, eax
je 0x405e48
mov eax, 1
jmp 0x405e4b
mov eax, dword [ebp + 0x14]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
cmp dword [ebp + 0x74], 0
je 0x405e71
mov ebx, dword [ebp - 0xc]
add ebx, 0x3c
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0
jmp 0x405ea6
mov ebx, dword [ebp - 0xc]
add ebx, 0x3c
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0xc]
add ebx, 0xa8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0
je 0x405e9c
mov eax, 1
jmp 0x405ea1
mov eax, 0
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xa4
mov dword [ebp - 0x28], ebx
cmp dword [ebp + 0x20], 0
mov eax, 0
sete al
test eax, eax
je 0x405ed0
mov eax, 1
jmp 0x405ed3
mov eax, dword [ebp + 0x1c]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x40
mov dword [ebp - 0x28], ebx
cmp dword [ebp + 0x38], 0
mov eax, 0
sete al
test eax, eax
je 0x405eff
mov eax, 1
jmp 0x405f02
mov eax, dword [ebp + 0x34]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x44
mov dword [ebp - 0x28], ebx
cmp dword [ebp + 0x40], 0
mov eax, 0
sete al
test eax, eax
je 0x405f2e
mov eax, 0
jmp 0x405f31
mov eax, dword [ebp + 0x3c]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x58
mov dword [ebp - 0x28], ebx
cmp dword [ebp + 0x60], 0
mov eax, 0
sete al
test eax, eax
je 0x405f5d
mov eax, dword [0x5f3318]
jmp 0x405f60
mov eax, dword [ebp + 0x5c]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x60
mov dword [ebp - 0x28], ebx
cmp dword [ebp + 0x68], 0
mov eax, 0
sete al
test eax, eax
je 0x405f8c
mov eax, 0xffffffff
jmp 0x405f8f
mov eax, dword [ebp + 0x64]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x64
mov dword [ebp - 0x28], ebx
cmp dword [ebp + 0x70], 0
mov eax, 0
sete al
test eax, eax
je 0x405fbb
mov eax, 0xff
jmp 0x405fbe
mov eax, dword [ebp + 0x6c]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x94
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0xc8
mov ebx, dword [ebp - 0xc]
add ebx, 0x98
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x96
mov ebx, dword [ebp - 0xc]
add ebx, 0x9c
mov dword [ebp - 0x28], ebx
push 0
mov ebx, 0x49a9a0
call fcn.00499634
add esp, 4
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xa0
mov dword [ebp - 0x28], ebx
push 0
mov ebx, 0x49a9b0
call fcn.00499634
add esp, 4
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov eax, 0x5bc920
xor ecx, ecx
test eax, eax
je 0x406041
mov ecx, dword [eax + 4]
push ecx
add eax, 8
push eax
mov ebx, dword [ebp + 0x54]
mov eax, dword [ebx]
xor ebx, ebx
test eax, eax
je 0x406054
mov ebx, dword [eax + 4]
add eax, 8
push eax
cmp ebx, ecx
mov eax, 1
jne 0x40606b
dec eax
test ecx, ecx
je 0x40606b
call fcn.0040193b
add esp, 0xc
test eax, eax
je 0x406223
mov ebx, dword [ebp - 0xc]
add ebx, 0x5c
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], 0
push 0
lea eax, [ebp - 0x2c]
push eax
mov dword [ebp - 0x30], 0
push 0
push dword [ebp - 0x30]
mov dword [ebp - 0x34], 0
push 0
push dword [ebp - 0x34]
push 0x7d0
push dword [ebp + 0x54]
call fcn.004097c5
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x2c]
test ebx, ebx
je 0x4060c4
push ebx
call fcn.00499622
add esp, 4
mov eax, dword [ebp - 0x38]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x58
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
cmp dword [ebx], 0
jne 0x40615b
mov ebx, dword [ebp - 0xc]
add ebx, 0x54
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0xc]
add ebx, 0x5c
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], 0
push 0
lea eax, [ebp - 0x30]
push eax
mov dword [ebp - 0x34], 0
push 0
push dword [ebp - 0x34]
push 1
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov dword [ebp - 0x38], 0
push 0
push dword [ebp - 0x38]
push dword [ebp + 0x54]
call fcn.00409f05
mov dword [ebp - 0x3c], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x40613a
push ebx
call fcn.00499622
add esp, 4
mov eax, dword [ebp - 0x3c]
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406150
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
jmp 0x406223
mov ebx, dword [ebp - 0xc]
add ebx, 0x58
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp dword [ebx], 1
jne 0x4061e5
mov ebx, dword [ebp - 0xc]
add ebx, 0x54
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0xc]
add ebx, 0x5c
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], 0
push 0
lea eax, [ebp - 0x30]
push eax
push 1
push 0
push 1
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov dword [ebp - 0x34], 0
push 0
push dword [ebp - 0x34]
push dword [ebp + 0x54]
call fcn.00409f05
mov dword [ebp - 0x38], eax
mov ebx, dword [ebp - 0x30]
test ebx, ebx
je 0x4061c4
push ebx
call fcn.00499622
add esp, 4
mov eax, dword [ebp - 0x38]
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x4061da
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
jmp 0x406223
mov ebx, dword [ebp - 0xc]
add ebx, 0x54
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp + 0x54]
mov eax, dword [ebx]
test eax, eax
je 0x40620a
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40621d
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xac
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0xffffff
mov ebx, dword [ebp - 0xc]
add ebx, 0xb0
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x808080
mov ebx, dword [ebp - 0xc]
add ebx, 0xb4
mov dword [ebp - 0x28], ebx
mov eax, 0x5c4984
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406271
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0xb8
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0xc
mov ebx, dword [ebp - 0xc]
add ebx, 0xbc
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 1
mov ebx, dword [ebp - 0xc]
add ebx, 0x68
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4062ca
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4062c6
imul eax, dword [ebx]
jmp 0x4062bb
mov ecx, eax
test ecx, ecx
je 0x406345
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4062e8
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4062fc
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406310
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406324
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4062d0
call fcn.00499622
add esp, 4
mov eax, 0x5bc920
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x2c
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
cmp dword [ebx], 0
je 0x4066b9
mov ebx, dword [ebp - 0xc]
add ebx, 0x68
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
call fcn.00401922
mov dword [ebp - 0x34], eax
fild dword [ebp - 0x34]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x5bd004]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
call fcn.00402dfa
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x68
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x30], 1
mov eax, dword [ebp - 0x10]
cmp eax, 0
jge 0x4063c4
push 0xa
call fcn.00499628
add esp, 4
mov dword [ebp - 0x2c], eax
lea ebx, [ebp - 0x30]
call fcn.0040179f
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0049961c
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x2c]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
call fcn.0040179f
pop edx
mov eax, ecx
cmp ecx, edx
jle 0x406405
mov ecx, edx
sub eax, ecx
sub edx, ecx
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov ebx, esi
mov ecx, eax
test ecx, ecx
je 0x406492
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406433
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406447
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40645b
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40646f
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40641b
pop edx
pop edi
test edx, edx
je 0x4064f7
mov ebx, edi
push edx
push ebx
push 0x24
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 9
rep stosd dword es:[edi], eax
add ebx, 0x20
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ebx
pop edx
add ebx, 4
dec edx
jne 0x40649c
mov ebx, dword [ebp - 0x28]
push dword [ebx]
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40652a
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40653d
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x1a
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x406570
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406583
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x12
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x4065b9
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4065cc
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x28], ebx
mov eax, 0x5c4989
test eax, eax
je 0x4065f5
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406608
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40662e
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406641
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x14
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 4
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x406677
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40668a
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x28], ebx
mov eax, 0x5c5747
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x4066af
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
add dword [ebp - 0x14], 0x1a
mov ebx, dword [ebp - 0xc]
add ebx, 0x30
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
cmp dword [ebx], 0
je 0x406a1b
mov ebx, dword [ebp - 0xc]
add ebx, 0x68
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
call fcn.00401922
mov dword [ebp - 0x34], eax
fild dword [ebp - 0x34]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x5bd004]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
call fcn.00402dfa
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x68
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x30], 1
mov eax, dword [ebp - 0x10]
cmp eax, 0
jge 0x406726
push 0xa
call fcn.00499628
add esp, 4
mov dword [ebp - 0x2c], eax
lea ebx, [ebp - 0x30]
call fcn.0040179f
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0049961c
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x2c]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
call fcn.0040179f
pop edx
mov eax, ecx
cmp ecx, edx
jle 0x406767
mov ecx, edx
sub eax, ecx
sub edx, ecx
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov ebx, esi
mov ecx, eax
test ecx, ecx
je 0x4067f4
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406795
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4067a9
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4067bd
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4067d1
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x40677d
pop edx
pop edi
test edx, edx
je 0x406859
mov ebx, edi
push edx
push ebx
push 0x24
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 9
rep stosd dword es:[edi], eax
add ebx, 0x20
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ebx
pop edx
add ebx, 4
dec edx
jne 0x4067fe
mov ebx, dword [ebp - 0x28]
push dword [ebx]
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40688c
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40689f
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x1a
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x4068d2
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4068e5
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x12
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40691b
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40692e
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x28], ebx
mov eax, 0x5c574c
test eax, eax
je 0x406957
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40696a
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x406990
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4069a3
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x14
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 3
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x4069d9
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4069ec
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x28], ebx
mov eax, 0x5c6406
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406a11
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
add dword [ebp - 0x14], 0x1a
mov ebx, dword [ebp - 0xc]
add ebx, 0x34
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
cmp dword [ebx], 0
je 0x406d7d
mov ebx, dword [ebp - 0xc]
add ebx, 0x68
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
call fcn.00401922
mov dword [ebp - 0x34], eax
fild dword [ebp - 0x34]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x5bd004]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
call fcn.00402dfa
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x68
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x30], 1
mov eax, dword [ebp - 0x10]
cmp eax, 0
jge 0x406a88
push 0xa
call fcn.00499628
add esp, 4
mov dword [ebp - 0x2c], eax
lea ebx, [ebp - 0x30]
call fcn.0040179f
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0049961c
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x2c]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
call fcn.0040179f
pop edx
mov eax, ecx
cmp ecx, edx
jle 0x406ac9
mov ecx, edx
sub eax, ecx
sub edx, ecx
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov ebx, esi
mov ecx, eax
test ecx, ecx
je 0x406b56
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406af7
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406b0b
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406b1f
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406b33
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x406adf
pop edx
pop edi
test edx, edx
je 0x406bbb
mov ebx, edi
push edx
push ebx
push 0x24
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 9
rep stosd dword es:[edi], eax
add ebx, 0x20
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ebx
pop edx
add ebx, 4
dec edx
jne 0x406b60
mov ebx, dword [ebp - 0x28]
push dword [ebx]
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x406bee
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406c01
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x1a
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x406c34
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406c47
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x12
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x406c7d
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406c90
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x28], ebx
mov eax, 0x5c640d
test eax, eax
je 0x406cb9
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406ccc
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x406cf2
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406d05
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x14
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 2
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x406d3b
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406d4e
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x28], ebx
mov eax, 0x5c7027
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x406d73
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
add dword [ebp - 0x14], 0x1a
mov ebx, dword [ebp - 0xc]
add ebx, 0x38
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
cmp dword [ebx], 0
je 0x407154
mov ebx, dword [ebp - 0xc]
add ebx, 0x68
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
call fcn.00401922
mov dword [ebp - 0x34], eax
fild dword [ebp - 0x34]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x5bd004]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
call fcn.00402dfa
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x68
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x30], 1
mov eax, dword [ebp - 0x10]
cmp eax, 0
jge 0x406dea
push 0xa
call fcn.00499628
add esp, 4
mov dword [ebp - 0x2c], eax
lea ebx, [ebp - 0x30]
call fcn.0040179f
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0049961c
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x2c]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
call fcn.0040179f
pop edx
mov eax, ecx
cmp ecx, edx
jle 0x406e2b
mov ecx, edx
sub eax, ecx
sub edx, ecx
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov ebx, esi
mov ecx, eax
test ecx, ecx
je 0x406eb8
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406e59
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406e6d
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406e81
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x406e95
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x406e41
pop edx
pop edi
test edx, edx
je 0x406f1d
mov ebx, edi
push edx
push ebx
push 0x24
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 9
rep stosd dword es:[edi], eax
add ebx, 0x20
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ebx
pop edx
add ebx, 4
dec edx
jne 0x406ec2
mov ebx, dword [ebp - 0x28]
push dword [ebx]
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x406f50
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406f63
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x1a
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x406f96
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406fa9
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x12
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x406fdf
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406ff2
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x28], ebx
mov eax, 0x5c702e
test eax, eax
je 0x40701b
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40702e
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x407054
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407067
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x28], ebx
mov eax, 0x5c7d3b
test eax, eax
je 0x407090
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x4070a3
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x4070c9
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4070dc
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x14
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 1
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x407112
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407125
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x28], ebx
mov eax, 0x5c8ab0
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x40714a
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
add dword [ebp - 0x14], 0x1a
mov ebx, dword [ebp - 0xc]
add ebx, 0x3c
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
cmp dword [ebx], 0
je 0x4074b6
mov ebx, dword [ebp - 0xc]
add ebx, 0x68
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
call fcn.00401922
mov dword [ebp - 0x34], eax
fild dword [ebp - 0x34]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
fadd qword [0x5bd004]
fstp qword [ebp - 0x3c]
fld qword [ebp - 0x3c]
call fcn.00402dfa
mov dword [ebp - 0x10], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x68
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x30], 1
mov eax, dword [ebp - 0x10]
cmp eax, 0
jge 0x4071c1
push 0xa
call fcn.00499628
add esp, 4
mov dword [ebp - 0x2c], eax
lea ebx, [ebp - 0x30]
call fcn.0040179f
push ecx
shl ecx, 2
add ecx, 8
push ecx
call fcn.0049961c
add esp, 4
mov edi, eax
mov dword [edi], 1
add edi, 4
pop ecx
push eax
push ecx
lea esi, [ebp - 0x2c]
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
call fcn.0040179f
pop edx
mov eax, ecx
cmp ecx, edx
jle 0x407202
mov ecx, edx
sub eax, ecx
sub edx, ecx
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov ebx, esi
mov ecx, eax
test ecx, ecx
je 0x40728f
push edi
push edx
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407230
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407244
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x407258
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40726c
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
pop ecx
add ebx, 4
dec ecx
jne 0x407218
pop edx
pop edi
test edx, edx
je 0x4072f4
mov ebx, edi
push edx
push ebx
push 0x24
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 9
rep stosd dword es:[edi], eax
add ebx, 0x20
push ebx
push 0x10
call fcn.0049961c
add esp, 4
pop ebx
push ebx
mov dword [ebx], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
mov dword [ebx + 0xc], 0
pop ebx
pop ebx
pop edx
add ebx, 4
dec edx
jne 0x407299
mov ebx, dword [ebp - 0x28]
push dword [ebx]
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x407327
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40733a
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x26
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40736d
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407380
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x12
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x4073b6
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4073c9
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x28], ebx
mov eax, 0x5c8ab7
test eax, eax
je 0x4073f2
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x407405
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x40742b
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40743e
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x14
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0
mov ebx, dword [ebp - 0xc]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x10]
dec eax
jns 0x407474
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407487
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x28], ebx
mov eax, 0x5c9870
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x4074ac
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
add dword [ebp - 0x14], 0x26
mov ebx, dword [ebp - 0xc]
add ebx, 0x74
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0xc]
add ebx, 0x68
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov ebx, dword [ebx]
call fcn.00401922
mov dword [ebp - 0x38], eax
fild dword [ebp - 0x38]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x38]
fsub qword [0x5bd004]
fstp qword [ebp - 0x40]
fild dword [ebp - 0x14]
fstp qword [ebp - 0x48]
fld qword [ebp - 0x48]
fadd qword [ebp - 0x40]
fadd qword [0x5bc96c]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
call fcn.00402dfa
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x78
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0x16
mov ebx, dword [ebp - 0xc]
add ebx, 0x6c
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 8]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0xc]
add ebx, 0x74
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x2c]
fild dword [ebx]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x38]
fild dword [0x5f3314]
fstp qword [ebp - 0x40]
fsub qword [ebp - 0x40]
mov ebx, dword [ebp - 0x30]
fild dword [ebx]
fstp qword [ebp - 0x48]
fsub qword [ebp - 0x48]
fsub qword [0x5bc97c]
fstp qword [ebp - 0x50]
fld qword [ebp - 0x50]
call fcn.00402dfa
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0xc]
add ebx, 0x70
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0
mov dword [ebp - 0x28], esp
push 0xfffffff0
push dword [ebp + 8]
mov eax, 0x11
call fcn.0049962e
cmp dword [ebp - 0x28], esp
je 0x4075a7
push 6
call fcn.00499628
add esp, 4
mov dword [ebp - 0x18], eax
push 0x80000301
push 0
push 0x80000
push 0x80000301
push 0
push dword [ebp - 0x18]
push 2
mov ebx, 0x499a90
call fcn.00499634
add esp, 0x1c
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x2c], esp
push dword [ebp - 0x28]
push 0xfffffff0
push dword [ebp + 8]
mov eax, 0x12
call fcn.0049962e
cmp dword [ebp - 0x2c], esp
je 0x4075ff
push 6
call fcn.00499628
add esp, 4
push 0x5f3300
push 4
mov eax, 2
call fcn.00499616
add esp, 8
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x28], eax
mov ebx, dword [0x5f3300]
mov dword [ebp - 0x2c], ebx
call fcn.0040179f
mov dword [ebp - 0x30], ecx
mov edi, dword [ebp - 0x2c]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x407646
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x30]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x2c]
call fcn.0049963a
add esp, 8
mov dword [0x5f3300], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x30]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x28]
push edi
push eax
push 0x1c4
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
mov ecx, 0x12
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4076a5
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4076c6
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x4077ba
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x24
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407736
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407753
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407770
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407791
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x407702
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 0x12
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4077e0
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 9
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
mov ebx, dword [eax]
call dword [ebx + 4]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x4078a3
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x10
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407874
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407891
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x407840
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x4078f9
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x4078d8
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40791f
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x407ae3
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x6c
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407992
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4079af
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4079cc
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x4079e9
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407a06
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407a27
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
mov ebx, dword [eax]
call dword [ebx + 4]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407a58
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 7
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407a7c
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407a99
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407ab6
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407ad3
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x40795b
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x407bfe
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x2c
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
mov ecx, 9
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0xc
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0xc
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x407b18
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x407d1d
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x2c
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
mov ecx, 7
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0xc
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0xc
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x407c33
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x407d73
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x18
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x407d52
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x407dc9
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0xc
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x407da8
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x407edc
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x28
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407e35
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407e52
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407e6f
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407e8e
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407ead
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407ecc
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x407dfe
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x407f32
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x1c
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x407f11
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x407fb7
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x30
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x407fa0
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x407f67
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x40800d
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 8
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x407fec
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x408092
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x24
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40807b
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 5
rep movsd dword es:[edi], dword [esi]
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x408042
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x408114
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x24
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
mov ecx, 6
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x408100
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x4080c7
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x408199
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x2c
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
mov ecx, 7
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x408182
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 3
rep movsd dword es:[edi], dword [esi]
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x408149
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 9
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x408278
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x48
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
push eax
mov ecx, 0xe
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40820e
push eax
mov ebx, eax
call fcn.00401021
inc eax
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x408268
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x408247
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
pop eax
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x4081d5
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
mov ebx, eax
call fcn.0040179f
pop eax
sub ebx, eax
push ecx
push ebx
push eax
shl ecx, 2
add ecx, ebx
push ecx
call fcn.0049961c
add esp, 4
pop esi
mov edi, eax
pop ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
pop ecx
test ecx, ecx
je 0x4082d2
push eax
lodsd eax, dword [esi]
push esi
push edi
push ecx
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop ecx
pop edi
pop esi
stosd dword es:[edi], eax
dec ecx
jne 0x4082b1
pop eax
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 8
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 8
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
push esi
push edi
push eax
push 0x10
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 5
rep movsd dword es:[edi], dword [esi]
lodsd eax, dword [esi]
push esi
push edi
test eax, eax
je 0x40833f
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.0049961c
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
stosd dword es:[edi], eax
mov ecx, 8
rep movsd dword es:[edi], dword [esi]
pop eax
pop edi
mov dword [edi], eax
mov ebx, dword [0x5f3300]
call fcn.00401922
mov dword [ebp - 0x1c], eax
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40837b
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40838e
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x1bc
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 8]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x4083d1
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4083e4
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x1c0
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 8]
add ebx, 0xc
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
cmp dword [ebp + 0x14], 0
je 0x408470
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x408431
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408444
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xdc
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], 0
push 0
push dword [ebp - 0x2c]
push dword [ebp + 8]
push dword [ebp - 0x28]
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 8]
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x408490
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4084a3
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x68
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
call fcn.00401922
xor ecx, ecx
push eax
lea eax, [ebp - 0x20]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x408940
mov ebx, dword [ebp - 0x24]
mov dword [ebp - 0x28], ebx
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x4084f7
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40850a
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x20]
dec eax
jns 0x40852e
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408541
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x20]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
fld dword [ebx]
call fcn.00402dfa
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x24]
add ebx, 4
mov dword [ebp - 0x28], ebx
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x408586
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408599
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x20]
dec eax
jns 0x4085bd
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4085d0
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x20]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
fld dword [ebx]
call fcn.00402dfa
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x24]
add ebx, 8
mov dword [ebp - 0x28], ebx
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x408618
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40862b
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x20]
dec eax
jns 0x40864f
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408662
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x20]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40868f
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4086a2
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x20]
dec eax
jns 0x4086c6
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4086d9
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x20]
add ebx, 8
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x2c]
fld dword [ebx]
mov ebx, dword [ebp - 0x30]
fadd dword [ebx]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x38]
call fcn.00402dfa
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [ebp - 0x24]
add ebx, 0xc
mov dword [ebp - 0x28], ebx
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40872c
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40873f
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x20]
dec eax
jns 0x408763
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408776
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x20]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x4087a6
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4087b9
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x20]
dec eax
jns 0x4087dd
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4087f0
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x20]
add ebx, 0xc
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x2c]
fld dword [ebx]
mov ebx, dword [ebp - 0x30]
fadd dword [ebx]
fstp qword [ebp - 0x38]
fld qword [ebp - 0x38]
call fcn.00402dfa
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40883a
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40884d
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xdc
mov dword [ebp - 0x28], ebx
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40887d
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408890
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov ebx, dword [ebx + 0x68]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x20]
dec eax
jns 0x4088b4
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4088c7
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x2c], ebx
push dword [ebp - 0x20]
push dword [ebp - 0x2c]
push 1
lea eax, [ebp - 0x24]
push eax
push dword [ebp - 0x28]
mov eax, dword [esp]
mov eax, dword [eax]
mov eax, dword [eax]
call dword [eax + 0xc]
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x40890d
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408920
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x164
mov dword [ebp - 0x28], ebx
mov eax, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
pop eax
pop ebx
pop ecx
jmp 0x4084c3
add esp, 0xc
push dword [ebp - 0x1c]
call fcn.0040a84d
cmp dword [ebp + 0x44], 0
jle 0x408b4e
cmp dword [ebp + 0x50], 0
jne 0x4089f9
push 8
call fcn.0049961c
add esp, 4
mov dword [ebp - 0x28], eax
mov edi, eax
mov esi, 0x5bc920
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0
lea eax, [ebp - 0x28]
push eax
push dword [ebp + 0x44]
push dword [ebp - 0x1c]
call fcn.0040b483
mov ebx, dword [ebp - 0x28]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4089a9
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4089a5
imul eax, dword [ebx]
jmp 0x40899a
mov ecx, eax
test ecx, ecx
je 0x4089ec
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4089c7
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4089db
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4089af
call fcn.00499622
add esp, 4
jmp 0x408a09
push 1
push dword [ebp + 0x4c]
push dword [ebp + 0x44]
push dword [ebp - 0x1c]
call fcn.0040b483
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x408a29
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408a3c
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xf8
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x408a75
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408a88
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xfc
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0xffffff
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x408ac1
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408ad4
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x100
mov dword [ebp - 0x28], ebx
mov eax, 0x5c4984
push eax
mov ebx, dword [ebp - 0x28]
mov ebx, dword [ebx]
test ebx, ebx
je 0x408afc
push ebx
call fcn.00499622
add esp, 4
pop eax
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x408b22
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408b35
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x104
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 0xc
push dword [ebp - 0x1c]
call fcn.0040c5e9
push dword [ebp + 8]
push dword [ebp - 0x1c]
call fcn.0040cc7d
push dword [ebp + 8]
push dword [ebp - 0x1c]
call fcn.004237ba
push dword [ebp + 8]
push dword [ebp - 0x1c]
call fcn.004246ef
push dword [ebp + 8]
push dword [ebp - 0x1c]
call fcn.00436353
push dword [ebp + 8]
push dword [ebp - 0x1c]
call fcn.0043991d
push dword [ebp + 8]
push dword [ebp - 0x1c]
call fcn.0043b1c5
push dword [ebp + 8]
push dword [ebp - 0x1c]
call fcn.00443977
push dword [ebp + 8]
push dword [ebp - 0x1c]
call fcn.00446796
push dword [ebp + 8]
push dword [ebp - 0x1c]
call fcn.0044b101
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x408bd9
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408bec
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x16c
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 1
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x408c25
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408c38
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x144
mov dword [ebp - 0x28], ebx
mov ebx, dword [ebp - 0x28]
mov dword [ebx], 1
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x408c71
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408c84
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x4c
mov dword [ebp - 0x28], ebx
push ioctlsocket
push 0
push 0x47a90d
push 1
mov ebx, 0x49a1e0
call fcn.00499634
add esp, 0x10
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x30], esp
push dword [ebp - 0x2c]
push 0xfffffffc
push dword [ebp + 8]
mov eax, 0x12
call fcn.0049962e
cmp dword [ebp - 0x30], esp
je 0x408cdc
push 6
call fcn.00499628
add esp, 4
mov ebx, dword [ebp - 0x28]
mov dword [ebx], eax
mov ebx, dword [0x5f3300]
call fcn.0040179f
push ebx
push ecx
mov eax, dword [ebp - 0x1c]
dec eax
jns 0x408d01
push 4
call fcn.00499628
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408d14
push 1
call fcn.00499628
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x4c
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], esp
mov ebx, dword [ebp - 0x28]
push dword [ebx]
push str.Hw_hProc
push dword [ebp + 8]
mov eax, 0x13
call fcn.0049962e
cmp dword [ebp - 0x2c], esp
je 0x408d4d
push 6
call fcn.00499628
add esp, 4
mov dword [ebp - 0x28], esp
push dword [ebp - 0x1c]
push str.Hw_lbID
push dword [ebp + 8]
mov eax, 0x13
call fcn.0049962e
cmp dword [ebp - 0x28], esp
je 0x408d77
push 6
call fcn.00499628
add esp, 4
mov ebx, dword [ebp - 8]
push ebx
call fcn.00499622
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
add ebx, 0x48
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408d9a
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408dae
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 0x14
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x408dd0
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x408dcc
imul eax, dword [ebx]
jmp 0x408dc1
mov ecx, eax
test ecx, ecx
je 0x408e4b
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408dee
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408e02
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408e16
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408e2a
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x408dd6
call fcn.00499622
add esp, 4
pop ebx
add ebx, 0x4c
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408e67
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 0x28
push ebx
mov ebx, dword [ebx]
push ebx
mov eax, dword [ebx]
call dword [eax]
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x408ead
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x408ea9
imul eax, dword [ebx]
jmp 0x408e9e
mov ecx, eax
test ecx, ecx
je 0x408ef0
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408ecb
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408edf
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x408eb3
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x408f1a
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x408f16
imul eax, dword [ebx]
jmp 0x408f0b
mov ecx, eax
test ecx, ecx
je 0x408f35
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x408f20
call fcn.00499622
add esp, 4
pop ebx
add ebx, 0x14
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408f51
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 0x14
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x408f73
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x408f6f
imul eax, dword [ebx]
jmp 0x408f64
mov ecx, eax
test ecx, ecx
je 0x409082
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408f91
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408fa5
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408fb9
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408fcd
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408fe1
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 8
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x408ff5
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 0x14
push ebx
mov ebx, dword [ebx]
push ebx
mov eax, dword [ebx]
call dword [eax]
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40901d
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 0x20
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x409031
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x409045
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x409059
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40906d
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x408f79
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4090ac
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4090a8
imul eax, dword [ebx]
jmp 0x40909d
mov ecx, eax
test ecx, ecx
je 0x409145
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 0x24
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4090b2
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40916f
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40916b
imul eax, dword [ebx]
jmp 0x409160
mov ecx, eax
test ecx, ecx
je 0x409208
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 0x1c
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x409175
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x409232
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40922e
imul eax, dword [ebx]
jmp 0x409223
mov ecx, eax
test ecx, ecx
je 0x40924d
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x409238
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x409277
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x409273
imul eax, dword [ebx]
jmp 0x409268
mov ecx, eax
test ecx, ecx
je 0x409292
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40927d
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4092bc
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4092b8
imul eax, dword [ebx]
jmp 0x4092ad
mov ecx, eax
test ecx, ecx
je 0x409353
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 0x10
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4092da
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4092ee
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x409302
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x409316
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40932a
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40933e
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4092c2
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40937d
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x409379
imul eax, dword [ebx]
jmp 0x40936e
mov ecx, eax
test ecx, ecx
je 0x409398
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x409383
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4093c2
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4093be
imul eax, dword [ebx]
jmp 0x4093b3
mov ecx, eax
test ecx, ecx
je 0x4093f1
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 0x20
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4093e0
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4093c8
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40941b
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x409417
imul eax, dword [ebx]
jmp 0x40940c
mov ecx, eax
test ecx, ecx
je 0x409436
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x409421
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x409460
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40945c
imul eax, dword [ebx]
jmp 0x409451
mov ecx, eax
test ecx, ecx
je 0x40948f
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 0xc
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x40947e
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x409466
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4094b9
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4094b5
imul eax, dword [ebx]
jmp 0x4094aa
mov ecx, eax
test ecx, ecx
je 0x4094e8
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 0x18
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x4094d7
push ebx
call fcn.00499622
add esp, 4
pop ebx
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4094bf
call fcn.00499622
add esp, 4
pop ebx
add ebx, 4
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x409512
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40950e
imul eax, dword [ebx]
jmp 0x409503
mov ecx, eax
test ecx, ecx
je 0x409541
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
add ebx, 0x1c
push ebx
mov ebx, dword [ebx]
test ebx, ebx
je 0x409530
call fcn.00499622
add esp, 4
pop ebx
add ebx, 0x28
push ebx
mov ebx, dword [ebx]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40956b