Function at 0x4012e3
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
push 8
call fcn.0043035f
add esp, 4
mov dword [ebp - 4], eax
mov edi, eax
mov esi, 0x49b8c1
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0043035f
add esp, 4
mov dword [ebp - 8], eax
mov edi, eax
mov esi, 0x49b8c1
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0043035f
add esp, 4
mov dword [ebp - 0xc], eax
mov edi, eax
mov esi, 0x49b8c1
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0043035f
add esp, 4
mov dword [ebp - 0x10], eax
mov edi, eax
mov esi, 0x49b8c1
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
mov dword [ebp - 0x14], 0
push 8
call fcn.0043035f
add esp, 4
mov dword [ebp - 0x18], eax
mov edi, eax
mov esi, 0x49b8c1
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0xc
call fcn.0043035f
add esp, 4
mov dword [ebp - 0x1c], eax
mov ebx, eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
push 0x14
call fcn.0043035f
add esp, 4
mov dword [ebp - 0x20], eax
mov ebx, eax
mov edi, eax
xor eax, eax
mov ecx, 5
rep stosd dword es:[edi], eax
push ebx
push 0xc
call fcn.0043035f
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
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x28], 0
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x401412
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40140e
imul eax, dword [ebx]
jmp 0x401403
mov ecx, eax
test ecx, ecx
je 0x40142d
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430371
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x401418
call fcn.00430371
add esp, 4
mov eax, 0x49b8c1
mov dword [ebp - 4], eax
mov ebx, dword [ebp - 8]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40145b
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x401457
imul eax, dword [ebx]
jmp 0x40144c
mov ecx, eax
test ecx, ecx
je 0x401476
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430371
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x401461
call fcn.00430371
add esp, 4
mov eax, 0x49b8c1
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 0xc]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4014a4
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4014a0
imul eax, dword [ebx]
jmp 0x401495
mov ecx, eax
test ecx, ecx
je 0x4014bf
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430371
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4014aa
call fcn.00430371
add esp, 4
mov eax, 0x49b8c1
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 0x10]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4014ed
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4014e9
imul eax, dword [ebx]
jmp 0x4014de
mov ecx, eax
test ecx, ecx
je 0x401508
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430371
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4014f3
call fcn.00430371
add esp, 4
mov eax, 0x49b8c1
mov dword [ebp - 0x10], eax
cmp dword [ebp + 0xc], 5
je 0x401530
cmp dword [ebp + 0xc], 2
je 0x401530
xor eax, eax
jmp 0x401535
mov eax, 1
test eax, eax
je 0x40157e
mov dword [ebp - 0x2c], esp
push 0
push 0
push 0x421
push dword [0x538278]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x2c], esp
je 0x401571
push 6
call fcn.00430365
add esp, 4
mov eax, dword [ebp + 8]
mov dword [0x53827c], eax
jmp 0x4015da
cmp dword [ebp + 0xc], 0x114
je 0x40159c
cmp dword [ebp + 0xc], 0x115
je 0x40159c
xor eax, eax
jmp 0x4015a1
mov eax, 1
test eax, eax
je 0x4015b6
mov eax, dword [ebp + 0x14]
mov dword [0x53827c], eax
jmp 0x4015da
mov dword [ebp - 0x2c], esp
mov eax, 7
call fcn.0043036b
cmp dword [ebp - 0x2c], esp
je 0x4015d5
push 6
call fcn.00430365
add esp, 4
mov dword [0x53827c], eax
mov ebx, dword [0x538280]
call fcn.00401283
xor ecx, ecx
push eax
lea eax, [ebp - 0x14]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x40183a
cmp dword [0x538284], 1
jne 0x40161d
mov dword [0x538284], 0
jmp 0x40183a
mov ebx, dword [0x538280]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40163d
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401650
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov eax, dword [0x53827c]
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], eax
jne 0x401728
mov ebx, dword [0x538280]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40168a
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40169d
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
lea eax, [ebp - 4]
push eax
push 4
mov eax, 2
call fcn.00430359
add esp, 8
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 4]
mov dword [ebp - 0x34], ebx
call fcn.0040129c
mov dword [ebp - 0x38], ecx
mov edi, dword [ebp - 0x34]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4016ea
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x38]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x34]
call fcn.0043037d
add esp, 8
mov dword [ebp - 4], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x38]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x30]
push edi
push eax
push 0x10
call fcn.0043035f
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
mov ebx, dword [0x538280]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401748
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40175b
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0x28
jne 0x401832
mov ebx, dword [0x538280]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401794
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4017a7
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
lea eax, [ebp - 8]
push eax
push 4
mov eax, 2
call fcn.00430359
add esp, 8
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 8]
mov dword [ebp - 0x34], ebx
call fcn.0040129c
mov dword [ebp - 0x38], ecx
mov edi, dword [ebp - 0x34]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x4017f4
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x38]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x34]
call fcn.0043037d
add esp, 8
mov dword [ebp - 8], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x38]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x30]
push edi
push eax
push 0x10
call fcn.0043035f
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
pop eax
pop ebx
pop ecx
jmp 0x4015ee
add esp, 0xc
mov ebx, dword [0x538288]
call fcn.00401283
xor ecx, ecx
push eax
lea eax, [ebp - 0x14]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x401993
cmp dword [0x53828c], 1
jne 0x401880
mov dword [0x53828c], 0
jmp 0x401993
mov ebx, dword [0x538288]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4018a0
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4018b3
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov eax, dword [0x53827c]
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], eax
jne 0x40198b
mov ebx, dword [0x538288]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4018ed
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401900
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
lea eax, [ebp - 0xc]
push eax
push 4
mov eax, 2
call fcn.00430359
add esp, 8
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0xc]
mov dword [ebp - 0x34], ebx
call fcn.0040129c
mov dword [ebp - 0x38], ecx
mov edi, dword [ebp - 0x34]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x40194d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x38]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x34]
call fcn.0043037d
add esp, 8
mov dword [ebp - 0xc], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x38]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x30]
push edi
push eax
push 0x20
call fcn.0043035f
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
pop eax
pop ebx
pop ecx
jmp 0x401851
add esp, 0xc
mov ebx, dword [0x538290]
call fcn.00401283
xor ecx, ecx
push eax
lea eax, [ebp - 0x14]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x401aec
cmp dword [0x538294], 1
jne 0x4019d9
mov dword [0x538294], 0
jmp 0x401aec
mov ebx, dword [0x538290]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4019f9
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401a0c
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov eax, dword [0x538278]
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], eax
jne 0x401ae4
mov ebx, dword [0x538290]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401a46
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401a59
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
lea eax, [ebp - 0x10]
push eax
push 4
mov eax, 2
call fcn.00430359
add esp, 8
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x34], ebx
call fcn.0040129c
mov dword [ebp - 0x38], ecx
mov edi, dword [ebp - 0x34]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x401aa6
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x38]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x34]
call fcn.0043037d
add esp, 8
mov dword [ebp - 0x10], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x38]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x30]
push edi
push eax
push 0x18
call fcn.0043035f
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
pop eax
pop ebx
pop ecx
jmp 0x4019aa
add esp, 0xc
mov ebx, dword [0x538298]
call fcn.00401283
xor ecx, ecx
push eax
lea eax, [ebp - 0x14]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x401bd7
mov ebx, dword [0x538298]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401b31
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401b44
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov dword [ebp - 0x2c], ebx
lea eax, [ebp - 0x18]
push eax
push 4
mov eax, 2
call fcn.00430359
add esp, 8
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov dword [ebp - 0x30], eax
mov ebx, dword [ebp - 0x18]
mov dword [ebp - 0x34], ebx
call fcn.0040129c
mov dword [ebp - 0x38], ecx
mov edi, dword [ebp - 0x34]
mov dword [edi], 1
add edi, 4
mov eax, ecx
inc eax
mov dword [edi], eax
add edi, 4
cmp edi, ebx
je 0x401b91
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x38]
inc eax
shl eax, 2
add eax, 8
push eax
push dword [ebp - 0x34]
call fcn.0043037d
add esp, 8
mov dword [ebp - 0x18], eax
mov edi, eax
add edi, 8
mov eax, dword [ebp - 0x38]
shl eax, 2
add edi, eax
mov eax, dword [ebp - 0x30]
push edi
push eax
push 0x18
call fcn.0043035f
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
pop eax
pop ebx
pop ecx
jmp 0x401b03
add esp, 0xc
mov ebx, dword [ebp - 4]
call fcn.00401283
xor ecx, ecx
push eax
lea eax, [ebp - 0x14]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x402f61
cmp dword [ebp + 0xc], 5
jne 0x401d6d
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401c20
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401c33
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0x27
jne 0x401c9c
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401c69
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401c7c
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x34]
cmp dword [ebx], 0x3e
jne 0x401c9c
mov eax, 1
jmp 0x401c9e
xor eax, eax
test eax, eax
je 0x401d6d
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401cc3
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401cd6
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
cmp dword [ebp + 8], eax
jne 0x401d6d
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401d0b
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401d1e
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x401d5e
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
cmp dword [ebp + 0xc], 2
jne 0x401ee1
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401d94
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401da7
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0x27
jne 0x401ee1
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401ddd
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401df0
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
cmp dword [ebp + 8], eax
jne 0x401e58
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401e25
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401e38
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x34]
cmp dword [ebx], 0x3f
jne 0x401e58
mov eax, 1
jmp 0x401e5a
xor eax, eax
test eax, eax
je 0x401ee1
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401e7f
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401e92
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x401ed2
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
cmp dword [ebp + 0xc], 0x204
jne 0x40217e
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401f0b
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401f1e
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0x27
jne 0x40205d
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401f54
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401f67
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
cmp dword [ebp + 8], eax
jne 0x401fcf
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401f9c
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401faf
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x34]
cmp dword [ebx], 0x41
jne 0x401fcf
mov eax, 1
jmp 0x401fd1
xor eax, eax
test eax, eax
je 0x402058
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401ff6
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402009
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x402049
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
jmp 0x40217e
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40207a
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40208d
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
cmp dword [ebp + 0x14], eax
jne 0x4020f5
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4020c2
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4020d5
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x34]
cmp dword [ebx], 0x41
jne 0x4020f5
mov eax, 1
jmp 0x4020f7
xor eax, eax
test eax, eax
je 0x40217e
mov ebx, dword [ebp - 8]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40211c
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40212f
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x40216f
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
cmp dword [ebp + 0xc], 0x111
jne 0x402828
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4021a8
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4021bb
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0x13
jne 0x40229b
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4021f1
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402204
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
cmp dword [ebp + 0x14], eax
jne 0x40229b
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402239
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40224c
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 1
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x40228c
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4022b8
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4022cb
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0x28
jne 0x4023c3
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402301
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402314
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
cmp dword [ebp + 0x14], eax
jne 0x4023c3
push dword [ebp + 0x10]
call fcn.00405156
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0x300
jne 0x4023c3
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402361
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402374
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x4023b4
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4023e0
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4023f3
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0x22
jne 0x402573
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402429
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40243c
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0x157
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x402479
push 6
call fcn.00430365
add esp, 4
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 1
jne 0x402573
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4024a3
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4024b6
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
cmp dword [ebp + 0x14], eax
jne 0x4024ea
push dword [ebp + 0x10]
call fcn.00405156
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 9
jne 0x4024ea
mov eax, 1
jmp 0x4024ec
xor eax, eax
test eax, eax
je 0x402573
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402511
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402524
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x402564
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402590
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4025a3
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0x23
jne 0x402828
push dword [ebp + 0x10]
call fcn.00405156
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jne 0x402669
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4025ee
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402601
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
mov eax, dword [ebx]
cmp dword [ebp + 0x14], eax
jne 0x402669
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402636
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402649
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp dword [ebx], 0x33
jne 0x402669
mov eax, 1
jmp 0x40266b
xor eax, eax
test eax, eax
je 0x4026f2
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402690
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4026a3
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x4026e3
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
push dword [ebp + 0x10]
call fcn.00405156
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jne 0x40279f
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402724
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402737
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
mov eax, dword [ebx]
cmp dword [ebp + 0x14], eax
jne 0x40279f
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40276c
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40277f
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x40], ebx
mov ebx, dword [ebp - 0x40]
cmp dword [ebx], 0x34
jne 0x40279f
mov eax, 1
jmp 0x4027a1
xor eax, eax
test eax, eax
je 0x402828
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4027c6
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4027d9
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x402819
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
cmp dword [ebp + 0xc], 0x4e
jne 0x402f59
mov dword [ebp - 0x2c], esp
mov eax, 9
call fcn.0043036b
cmp dword [ebp - 0x2c], esp
je 0x402851
push 6
call fcn.00430365
add esp, 4
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], esp
push 0
push 0xc
push dword [ebp - 0x1c]
push dword [ebp + 0x14]
push dword [ebp - 0x30]
mov eax, 0xa
call fcn.0043036b
cmp dword [ebp - 0x34], esp
je 0x402886
push 6
call fcn.00430365
add esp, 4
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4028a3
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4028b6
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0x26
jne 0x402bee
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4028f2
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402905
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], eax
jne 0x402bee
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffd
jne 0x402984
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402951
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402964
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x34]
cmp dword [ebx], 0x3d
jne 0x402984
mov eax, 1
jmp 0x402986
xor eax, eax
test eax, eax
je 0x402a12
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4029ab
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4029be
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x4029fe
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffe
jne 0x402a77
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402a44
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402a57
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x34]
cmp dword [ebx], 0x3c
jne 0x402a77
mov eax, 1
jmp 0x402a79
xor eax, eax
test eax, eax
je 0x402b00
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402a9e
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402ab1
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x402af1
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffb
jne 0x402b65
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402b32
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402b45
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x34]
cmp dword [ebx], 0x41
jne 0x402b65
mov eax, 1
jmp 0x402b67
xor eax, eax
test eax, eax
je 0x402bee
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402b8c
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402b9f
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x402bdf
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402c0b
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402c1e
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0x51
jne 0x402f59
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402c5a
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402c6d
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], eax
jne 0x402f59
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffd
jne 0x402cec
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402cb9
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402ccc
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x34]
cmp dword [ebx], 0x48
jne 0x402cec
mov eax, 1
jmp 0x402cee
xor eax, eax
test eax, eax
je 0x402d7a
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402d13
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402d26
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x402d66
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffe6e
jne 0x402de2
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402daf
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402dc2
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x34]
cmp dword [ebx], 0x47
jne 0x402de2
mov eax, 1
jmp 0x402de4
xor eax, eax
test eax, eax
je 0x402e6b
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402e09
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402e1c
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x402e5c
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffb
jne 0x402ed0
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402e9d
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402eb0
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x34]
cmp dword [ebx], 0x41
jne 0x402ed0
mov eax, 1
jmp 0x402ed2
xor eax, eax
test eax, eax
je 0x402f59
mov ebx, dword [ebp - 4]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402ef7
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402f0a
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x402f4a
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x402f61
pop eax
pop ebx
pop ecx
jmp 0x401beb
add esp, 0xc
mov ebx, dword [ebp - 8]
call fcn.00401283
xor ecx, ecx
push eax
lea eax, [ebp - 0x14]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x4030c4
cmp dword [ebp + 0xc], 0x111
jne 0x4030bc
push dword [ebp + 0x10]
call fcn.00405192
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 8]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402fb8
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402fcb
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
mov eax, dword [ebx]
cmp dword [ebp - 0x2c], eax
jne 0x403033
mov ebx, dword [ebp - 8]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403000
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403013
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x40
jne 0x403033
mov eax, 1
jmp 0x403035
xor eax, eax
test eax, eax
je 0x4030bc
mov ebx, dword [ebp - 8]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40305a
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40306d
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x4030ad
push 6
call fcn.00430365
add esp, 4
mov dword [0x538284], 1
jmp 0x4030c4
pop eax
pop ebx
pop ecx
jmp 0x402f75
add esp, 0xc
mov ebx, dword [ebp - 0x10]
call fcn.00401283
xor ecx, ecx
push eax
lea eax, [ebp - 0x14]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x403272
cmp dword [ebp + 0xc], 0x111
jne 0x40326a
mov ebx, dword [ebp - 0x10]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403110
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403123
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
cmp dword [ebp + 0x14], eax
jne 0x40326a
push dword [ebp + 0x10]
call fcn.00405192
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 0x10]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403163
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403176
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
mov eax, dword [ebx]
cmp dword [ebp - 0x2c], eax
jne 0x4031e1
mov ebx, dword [ebp - 0x10]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4031ae
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4031c1
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x49
jne 0x4031e1
mov eax, 1
jmp 0x4031e3
xor eax, eax
test eax, eax
je 0x40326a
mov ebx, dword [ebp - 0x10]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403208
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40321b
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x40325b
push 6
call fcn.00430365
add esp, 4
mov dword [0x538294], 1
jmp 0x403272
pop eax
pop ebx
pop ecx
jmp 0x4030d8
add esp, 0xc
mov ebx, dword [ebp - 0x18]
call fcn.00401283
xor ecx, ecx
push eax
lea eax, [ebp - 0x14]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x403788
cmp dword [ebp + 0xc], 0x4e
jne 0x403780
mov dword [ebp - 0x2c], esp
mov eax, 9
call fcn.0043036b
cmp dword [ebp - 0x2c], esp
je 0x4032bd
push 6
call fcn.00430365
add esp, 4
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], esp
mov eax, dword [ebp - 0x20]
push eax
push 0x19
call fcn.0043035f
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x38], eax
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, 0xb
call fcn.0043036b
cmp dword [ebp - 0x34], esp
je 0x403345
push 6
call fcn.00430365
add esp, 4
push eax
mov ebx, dword [ebp - 0x38]
push ebx
mov edi, dword [ebp - 0x3c]
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 0xc
pop edi
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call fcn.00430371
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x40]
mov eax, dword [ebp - 0x20]
push eax
push 0x19
call fcn.0043035f
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], eax
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push dword [ebp + 0x14]
push dword [ebp - 0x30]
mov eax, 0xc
call fcn.0043036b
cmp dword [ebp - 0x44], esp
je 0x40343f
push 6
call fcn.00430365
add esp, 4
push eax
mov ebx, dword [ebp - 0x48]
push ebx
mov edi, dword [ebp - 0x4c]
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 0xc
pop edi
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call fcn.00430371
add esp, 4
pop eax
mov ebx, dword [ebp - 0x20]
mov ebx, dword [ebx]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffdf8
jne 0x40351c
mov ebx, dword [ebp - 0x20]
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x18]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4034e5
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4034f8
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x34]
cmp dword [ebx], eax
jne 0x40351c
mov eax, 1
jmp 0x40351e
xor eax, eax
test eax, eax
je 0x403780
mov ebx, dword [ebp - 0x20]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x18]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40354c
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40355f
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x14
mov dword [ebp - 0x30], ebx
mov ebx, dword [ebp - 0x30]
mov eax, dword [ebx]
mov ebx, dword [ebp - 0x2c]
mov dword [ebx], eax
mov dword [ebp - 0x2c], esp
mov eax, 9
call fcn.0043036b
cmp dword [ebp - 0x2c], esp
je 0x403595
push 6
call fcn.00430365
add esp, 4
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], esp
mov eax, dword [ebp - 0x20]
push eax
push 0x19
call fcn.0043035f
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x38], eax
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, 0xb
call fcn.0043036b
cmp dword [ebp - 0x34], esp
je 0x40361d
push 6
call fcn.00430365
add esp, 4
push eax
mov ebx, dword [ebp - 0x38]
push ebx
mov edi, dword [ebp - 0x3c]
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 0xc
pop edi
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call fcn.00430371
add esp, 4
pop eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x44], esp
push 0
push dword [ebp - 0x40]
push dword [ebp + 0x14]
mov eax, dword [ebp - 0x20]
push eax
push 0x19
call fcn.0043035f
add esp, 4
mov edi, eax
pop ebx
push eax
mov dword [ebp - 0x4c], ebx
mov dword [ebp - 0x48], eax
push ebx
mov ebx, dword [ebx]
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov byte [edi], al
inc edi
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
push dword [ebp - 0x30]
mov eax, 0xd
call fcn.0043036b
cmp dword [ebp - 0x44], esp
je 0x403717
push 6
call fcn.00430365
add esp, 4
push eax
mov ebx, dword [ebp - 0x48]
push ebx
mov edi, dword [ebp - 0x4c]
push edi
mov edi, dword [edi]
push ebx
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
pop ebx
add ebx, 0xc
pop edi
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov al, byte [ebx]
inc ebx
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
mov eax, dword [ebx]
add ebx, 4
mov dword [edi], eax
add edi, 4
call fcn.00430371
add esp, 4
pop eax
jmp 0x403788
pop eax
pop ebx
pop ecx
jmp 0x403286
add esp, 0xc
mov ebx, dword [ebp - 0xc]
call fcn.00401283
xor ecx, ecx
push eax
lea eax, [ebp - 0x14]
mov ebx, eax
pop eax
inc ecx
push ecx
push ebx
mov dword [ebx], ecx
push eax
cmp ecx, eax
jg 0x404f59
cmp dword [ebp + 0xc], 0x114
jne 0x40438a
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4037d4
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4037e7
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
cmp dword [ebp + 0x14], eax
jne 0x40438a
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40381c
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40382f
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov dword [0x53829c], eax
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403863
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403876
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x1c
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov dword [0x5382a0], eax
mov dword [ebp - 0x2c], esp
push 0
push 0
push 0xe1
push dword [ebp + 0x14]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x2c], esp
je 0x4038be
push 6
call fcn.00430365
add esp, 4
mov dword [ebp - 0x24], eax
push dword [ebp + 0x10]
call fcn.00405192
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x403926
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4038f3
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403906
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x42
jne 0x403926
mov eax, 1
jmp 0x403928
xor eax, eax
test eax, eax
je 0x403afa
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40394d
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403960
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x2c], ebx
fild dword [ebp - 0x24]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
mov ebx, dword [ebp - 0x2c]
fild dword [ebx]
fstp qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
call fcn.004012bc
mov dword [ebp - 0x28], eax
mov eax, dword [0x53829c]
cmp dword [ebp - 0x28], eax
jg 0x403a10
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4039ba
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4039cd
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [0x53829c]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x403a0b
push 6
call fcn.00430365
add esp, 4
jmp 0x403a7b
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403a2d
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403a40
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [ebp - 0x28]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x403a7b
push 6
call fcn.00430365
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403a98
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403aab
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x403aeb
push 6
call fcn.00430365
add esp, 4
mov dword [0x53828c], 1
jmp 0x404f59
push dword [ebp + 0x10]
call fcn.00405192
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jne 0x403b5f
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403b2c
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403b3f
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x43
jne 0x403b5f
mov eax, 1
jmp 0x403b61
xor eax, eax
test eax, eax
je 0x403d33
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403b86
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403b99
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x2c], ebx
fild dword [ebp - 0x24]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
mov ebx, dword [ebp - 0x2c]
fild dword [ebx]
fstp qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
call fcn.004012bc
mov dword [ebp - 0x28], eax
mov eax, dword [0x5382a0]
cmp dword [ebp - 0x28], eax
jl 0x403c49
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403bf3
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403c06
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [0x5382a0]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x403c44
push 6
call fcn.00430365
add esp, 4
jmp 0x403cb4
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403c66
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403c79
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [ebp - 0x28]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x403cb4
push 6
call fcn.00430365
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403cd1
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403ce4
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x403d24
push 6
call fcn.00430365
add esp, 4
mov dword [0x53828c], 1
jmp 0x404f59
push dword [ebp + 0x10]
call fcn.00405192
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jne 0x403d98
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403d65
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403d78
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x44
jne 0x403d98
mov eax, 1
jmp 0x403d9a
xor eax, eax
test eax, eax
je 0x403f6c
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403dbf
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403dd2
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x14
mov dword [ebp - 0x2c], ebx
fild dword [ebp - 0x24]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
mov ebx, dword [ebp - 0x2c]
fild dword [ebx]
fstp qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
call fcn.004012bc
mov dword [ebp - 0x28], eax
mov eax, dword [0x53829c]
cmp dword [ebp - 0x28], eax
jg 0x403e82
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403e2c
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403e3f
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [0x53829c]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x403e7d
push 6
call fcn.00430365
add esp, 4
jmp 0x403eed
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403e9f
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403eb2
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [ebp - 0x28]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x403eed
push 6
call fcn.00430365
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403f0a
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403f1d
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x403f5d
push 6
call fcn.00430365
add esp, 4
mov dword [0x53828c], 1
jmp 0x404f59
push dword [ebp + 0x10]
call fcn.00405192
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jne 0x403fd1
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403f9e
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403fb1
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x45
jne 0x403fd1
mov eax, 1
jmp 0x403fd3
xor eax, eax
test eax, eax
je 0x4041a5
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403ff8
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40400b
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x14
mov dword [ebp - 0x2c], ebx
fild dword [ebp - 0x24]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
mov ebx, dword [ebp - 0x2c]
fild dword [ebx]
fstp qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
call fcn.004012bc
mov dword [ebp - 0x28], eax
mov eax, dword [0x5382a0]
cmp dword [ebp - 0x28], eax
jl 0x4040bb
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404065
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404078
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [0x5382a0]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x4040b6
push 6
call fcn.00430365
add esp, 4
jmp 0x404126
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4040d8
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4040eb
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [ebp - 0x28]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x404126
push 6
call fcn.00430365
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404143
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404156
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x404196
push 6
call fcn.00430365
add esp, 4
mov dword [0x53828c], 1
jmp 0x404f59
push dword [ebp + 0x10]
call fcn.00405192
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 5
jne 0x40420a
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4041d7
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4041ea
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x46
jne 0x40420a
mov eax, 1
jmp 0x40420c
xor eax, eax
test eax, eax
je 0x40438a
push dword [ebp + 0x10]
call fcn.00405156
mov dword [ebp - 0x28], eax
mov eax, dword [0x5382a0]
cmp dword [ebp - 0x28], eax
jl 0x4042a0
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40424a
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40425d
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [0x5382a0]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x40429b
push 6
call fcn.00430365
add esp, 4
jmp 0x40430b
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4042bd
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4042d0
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [ebp - 0x28]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x40430b
push 6
call fcn.00430365
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404328
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40433b
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x40437b
push 6
call fcn.00430365
add esp, 4
mov dword [0x53828c], 1
jmp 0x404f59
cmp dword [ebp + 0xc], 0x115
jne 0x404f51
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4043b4
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4043c7
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
cmp dword [ebp + 0x14], eax
jne 0x404f51
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4043fc
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40440f
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x18
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov dword [0x53829c], eax
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404443
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404456
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x1c
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebx]
mov dword [0x5382a0], eax
mov dword [ebp - 0x2c], esp
push 0
push 0
push 0xe1
push dword [ebp + 0x14]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x2c], esp
je 0x40449e
push 6
call fcn.00430365
add esp, 4
mov dword [ebp - 0x24], eax
push dword [ebp + 0x10]
call fcn.00405192
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x404506
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4044d3
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4044e6
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x42
jne 0x404506
mov eax, 1
jmp 0x404508
xor eax, eax
test eax, eax
je 0x4046d5
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40452d
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404540
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x2c], ebx
fild dword [ebp - 0x24]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
mov ebx, dword [ebp - 0x2c]
fild dword [ebx]
fstp qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
call fcn.004012bc
mov dword [ebp - 0x28], eax
mov eax, dword [0x53829c]
cmp dword [ebp - 0x28], eax
jg 0x4045f0
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40459a
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4045ad
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [0x53829c]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x4045eb
push 6
call fcn.00430365
add esp, 4
jmp 0x40465b
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40460d
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404620
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [ebp - 0x28]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x40465b
push 6
call fcn.00430365
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404678
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40468b
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x4046cb
push 6
call fcn.00430365
add esp, 4
mov dword [0x53828c], 1
push dword [ebp + 0x10]
call fcn.00405192
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jne 0x40473a
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404707
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40471a
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x43
jne 0x40473a
mov eax, 1
jmp 0x40473c
xor eax, eax
test eax, eax
je 0x404909
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404761
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404774
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x10
mov dword [ebp - 0x2c], ebx
fild dword [ebp - 0x24]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
mov ebx, dword [ebp - 0x2c]
fild dword [ebx]
fstp qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
call fcn.004012bc
mov dword [ebp - 0x28], eax
mov eax, dword [0x5382a0]
cmp dword [ebp - 0x28], eax
jl 0x404824
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4047ce
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4047e1
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [0x5382a0]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x40481f
push 6
call fcn.00430365
add esp, 4
jmp 0x40488f
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404841
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404854
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [ebp - 0x28]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x40488f
push 6
call fcn.00430365
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4048ac
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4048bf
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x4048ff
push 6
call fcn.00430365
add esp, 4
mov dword [0x53828c], 1
push dword [ebp + 0x10]
call fcn.00405192
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jne 0x40496e
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40493b
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40494e
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x44
jne 0x40496e
mov eax, 1
jmp 0x404970
xor eax, eax
test eax, eax
je 0x404b3d
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404995
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4049a8
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x14
mov dword [ebp - 0x2c], ebx
fild dword [ebp - 0x24]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
mov ebx, dword [ebp - 0x2c]
fild dword [ebx]
fstp qword [ebp - 0x3c]
fsub qword [ebp - 0x3c]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
call fcn.004012bc
mov dword [ebp - 0x28], eax
mov eax, dword [0x53829c]
cmp dword [ebp - 0x28], eax
jg 0x404a58
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404a02
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404a15
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [0x53829c]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x404a53
push 6
call fcn.00430365
add esp, 4
jmp 0x404ac3
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404a75
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404a88
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [ebp - 0x28]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x404ac3
push 6
call fcn.00430365
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404ae0
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404af3
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x404b33
push 6
call fcn.00430365
add esp, 4
mov dword [0x53828c], 1
push dword [ebp + 0x10]
call fcn.00405192
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jne 0x404ba2
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404b6f
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404b82
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x45
jne 0x404ba2
mov eax, 1
jmp 0x404ba4
xor eax, eax
test eax, eax
je 0x404d71
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404bc9
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404bdc
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0x14
mov dword [ebp - 0x2c], ebx
fild dword [ebp - 0x24]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
mov ebx, dword [ebp - 0x2c]
fild dword [ebx]
fstp qword [ebp - 0x3c]
fadd qword [ebp - 0x3c]
fstp qword [ebp - 0x44]
fld qword [ebp - 0x44]
call fcn.004012bc
mov dword [ebp - 0x28], eax
mov eax, dword [0x5382a0]
cmp dword [ebp - 0x28], eax
jl 0x404c8c
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404c36
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404c49
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [0x5382a0]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x404c87
push 6
call fcn.00430365
add esp, 4
jmp 0x404cf7
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404ca9
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404cbc
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [ebp - 0x28]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x404cf7
push 6
call fcn.00430365
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404d14
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404d27
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x404d67
push 6
call fcn.00430365
add esp, 4
mov dword [0x53828c], 1
push dword [ebp + 0x10]
call fcn.00405192
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 5
jne 0x404dd6
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404da3
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404db6
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 0xc
mov dword [ebp - 0x38], ebx
mov ebx, dword [ebp - 0x38]
cmp dword [ebx], 0x46
jne 0x404dd6
mov eax, 1
jmp 0x404dd8
xor eax, eax
test eax, eax
je 0x404f51
push dword [ebp + 0x10]
call fcn.00405156
mov dword [ebp - 0x28], eax
mov eax, dword [0x5382a0]
cmp dword [ebp - 0x28], eax
jl 0x404e6c
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404e16
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404e29
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [0x5382a0]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x404e67
push 6
call fcn.00430365
add esp, 4
jmp 0x404ed7
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404e89
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404e9c
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 1
push dword [ebp - 0x28]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 6
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x404ed7
push 6
call fcn.00430365
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.0040129c
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404ef4
push 4
call fcn.00430365
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404f07
push 1
call fcn.00430365
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov dword [ebp - 0x30], esp
push 0
push 0
push 0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 8
call fcn.0043036b
cmp dword [ebp - 0x30], esp
je 0x404f47
push 6
call fcn.00430365
add esp, 4
mov dword [0x53828c], 1
pop eax
pop ebx
pop ecx
jmp 0x40379c
add esp, 0xc
cmp dword [ebp + 0xc], 2
jne 0x404f7b
mov eax, dword [0x5382a4]
cmp dword [ebp + 8], eax
jne 0x404f7b
mov eax, 1
jmp 0x404f7d
xor eax, eax
test eax, eax
je 0x404fda
mov dword [ebp - 0x2c], esp
push dword [ebp + 8]
mov eax, 0xe
call fcn.0043036b
cmp dword [ebp - 0x2c], esp
je 0x404fa7
push 6
call fcn.00430365
add esp, 4
mov dword [ebp - 0x2c], esp
push 0x49b8c9
mov eax, 0xf
call fcn.0043036b
cmp dword [ebp - 0x2c], esp
je 0x404fcb
push 6
call fcn.00430365
add esp, 4
mov eax, 0
jmp 0x404fe4
mov eax, 1
jmp 0x404fe4
push eax
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x405003
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x404fff
imul eax, dword [ebx]
jmp 0x404ff4
mov ecx, eax
test ecx, ecx
je 0x40501e
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430371
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x405009
call fcn.00430371
add esp, 4
mov ebx, dword [ebp - 8]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x405044
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405040
imul eax, dword [ebx]
jmp 0x405035
mov ecx, eax
test ecx, ecx
je 0x40505f
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430371
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40504a
call fcn.00430371
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x405085
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405081
imul eax, dword [ebx]
jmp 0x405076
mov ecx, eax
test ecx, ecx
je 0x4050a0
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430371
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40508b
call fcn.00430371
add esp, 4
mov ebx, dword [ebp - 0x10]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4050c6
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4050c2
imul eax, dword [ebx]
jmp 0x4050b7
mov ecx, eax
test ecx, ecx
je 0x4050e1
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430371
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4050cc
call fcn.00430371
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x405107
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405103
imul eax, dword [ebx]
jmp 0x4050f8
mov ecx, eax
test ecx, ecx
je 0x405122
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430371
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40510d
call fcn.00430371
add esp, 4
mov ebx, dword [ebp - 0x1c]
push ebx
call fcn.00430371
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.00430371
add esp, 4
pop ebx
call fcn.00430371
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x10