Function at 0x401568
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
push 8
call fcn.0042e987
add esp, 4
mov dword [ebp - 4], eax
mov edi, eax
mov esi, 0x4acdab
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0042e987
add esp, 4
mov dword [ebp - 8], eax
mov edi, eax
mov esi, 0x4acdab
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0042e987
add esp, 4
mov dword [ebp - 0xc], eax
mov edi, eax
mov esi, 0x4acdab
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0042e987
add esp, 4
mov dword [ebp - 0x10], eax
mov edi, eax
mov esi, 0x4acdab
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.0042e987
add esp, 4
mov dword [ebp - 0x18], eax
mov edi, eax
mov esi, 0x4acdab
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0xc
call fcn.0042e987
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.0042e987
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.0042e987
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 0x401697
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x401693
imul eax, dword [ebx]
jmp 0x401688
mov ecx, eax
test ecx, ecx
je 0x4016b2
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042e981
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40169d
call fcn.0042e981
add esp, 4
mov eax, 0x4acdab
mov dword [ebp - 4], eax
mov ebx, dword [ebp - 8]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4016e0
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4016dc
imul eax, dword [ebx]
jmp 0x4016d1
mov ecx, eax
test ecx, ecx
je 0x4016fb
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042e981
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4016e6
call fcn.0042e981
add esp, 4
mov eax, 0x4acdab
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 0xc]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x401729
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x401725
imul eax, dword [ebx]
jmp 0x40171a
mov ecx, eax
test ecx, ecx
je 0x401744
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042e981
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40172f
call fcn.0042e981
add esp, 4
mov eax, 0x4acdab
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 0x10]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x401772
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x40176e
imul eax, dword [ebx]
jmp 0x401763
mov ecx, eax
test ecx, ecx
je 0x40178d
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042e981
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x401778
call fcn.0042e981
add esp, 4
mov eax, 0x4acdab
mov dword [ebp - 0x10], eax
cmp dword [ebp + 0xc], 5
je 0x4017b5
cmp dword [ebp + 0xc], 2
je 0x4017b5
xor eax, eax
jmp 0x4017ba
mov eax, 1
test eax, eax
je 0x401803
mov dword [ebp - 0x2c], esp
push 0
push 0
push 0x421
push dword [0x5c863c]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x2c], esp
je 0x4017f6
push 6
call fcn.0042e98d
add esp, 4
mov eax, dword [ebp + 8]
mov dword [0x5c8640], eax
jmp 0x40185f
cmp dword [ebp + 0xc], 0x114
je 0x401821
cmp dword [ebp + 0xc], 0x115
je 0x401821
xor eax, eax
jmp 0x401826
mov eax, 1
test eax, eax
je 0x40183b
mov eax, dword [ebp + 0x14]
mov dword [0x5c8640], eax
jmp 0x40185f
mov dword [ebp - 0x2c], esp
mov eax, 0xb
call fcn.0042e993
cmp dword [ebp - 0x2c], esp
je 0x40185a
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8640], eax
mov ebx, dword [0x5c8644]
call fcn.00401508
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 0x401abf
cmp dword [0x5c8648], 1
jne 0x4018a2
mov dword [0x5c8648], 0
jmp 0x401abf
mov ebx, dword [0x5c8644]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4018c2
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4018d5
push 1
call fcn.0042e98d
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov eax, dword [0x5c8640]
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], eax
jne 0x4019ad
mov ebx, dword [0x5c8644]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40190f
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401922
push 1
call fcn.0042e98d
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.0042e97b
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.00401521
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 0x40196f
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.0042e99f
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.0042e987
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
mov ebx, dword [0x5c8644]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4019cd
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4019e0
push 1
call fcn.0042e98d
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 0x401ab7
mov ebx, dword [0x5c8644]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401a19
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401a2c
push 1
call fcn.0042e98d
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.0042e97b
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.00401521
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 0x401a79
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.0042e99f
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.0042e987
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 0x401873
add esp, 0xc
mov ebx, dword [0x5c864c]
call fcn.00401508
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 0x401c18
cmp dword [0x5c8650], 1
jne 0x401b05
mov dword [0x5c8650], 0
jmp 0x401c18
mov ebx, dword [0x5c864c]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401b25
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401b38
push 1
call fcn.0042e98d
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov eax, dword [0x5c8640]
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], eax
jne 0x401c10
mov ebx, dword [0x5c864c]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401b72
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401b85
push 1
call fcn.0042e98d
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.0042e97b
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.00401521
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 0x401bd2
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.0042e99f
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.0042e987
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 0x401ad6
add esp, 0xc
mov ebx, dword [0x5c8654]
call fcn.00401508
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 0x401d71
cmp dword [0x5c8658], 1
jne 0x401c5e
mov dword [0x5c8658], 0
jmp 0x401d71
mov ebx, dword [0x5c8654]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401c7e
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401c91
push 1
call fcn.0042e98d
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov eax, dword [0x5c863c]
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], eax
jne 0x401d69
mov ebx, dword [0x5c8654]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401ccb
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401cde
push 1
call fcn.0042e98d
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.0042e97b
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.00401521
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 0x401d2b
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.0042e99f
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.0042e987
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 0x401c2f
add esp, 0xc
mov ebx, dword [0x5c865c]
call fcn.00401508
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 0x401e5c
mov ebx, dword [0x5c865c]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401db6
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401dc9
push 1
call fcn.0042e98d
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.0042e97b
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.00401521
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 0x401e16
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.0042e99f
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.0042e987
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 0x401d88
add esp, 0xc
mov ebx, dword [ebp - 4]
call fcn.00401508
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 0x4031e6
cmp dword [ebp + 0xc], 5
jne 0x401ff2
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401ea5
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401eb8
push 1
call fcn.0042e98d
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 0x401f21
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401eee
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401f01
push 1
call fcn.0042e98d
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 0x401f21
mov eax, 1
jmp 0x401f23
xor eax, eax
test eax, eax
je 0x401ff2
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401f48
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401f5b
push 1
call fcn.0042e98d
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 0x401ff2
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x401f90
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x401fa3
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x401fe3
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
cmp dword [ebp + 0xc], 2
jne 0x402166
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402019
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40202c
push 1
call fcn.0042e98d
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 0x402166
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402062
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402075
push 1
call fcn.0042e98d
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 0x4020dd
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4020aa
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4020bd
push 1
call fcn.0042e98d
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 0x4020dd
mov eax, 1
jmp 0x4020df
xor eax, eax
test eax, eax
je 0x402166
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402104
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402117
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x402157
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
cmp dword [ebp + 0xc], 0x204
jne 0x402403
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402190
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4021a3
push 1
call fcn.0042e98d
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 0x4022e2
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4021d9
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4021ec
push 1
call fcn.0042e98d
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 0x402254
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402221
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402234
push 1
call fcn.0042e98d
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 0x402254
mov eax, 1
jmp 0x402256
xor eax, eax
test eax, eax
je 0x4022dd
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40227b
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40228e
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x4022ce
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
jmp 0x402403
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4022ff
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402312
push 1
call fcn.0042e98d
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 0x40237a
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402347
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40235a
push 1
call fcn.0042e98d
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 0x40237a
mov eax, 1
jmp 0x40237c
xor eax, eax
test eax, eax
je 0x402403
mov ebx, dword [ebp - 8]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4023a1
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4023b4
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x4023f4
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
cmp dword [ebp + 0xc], 0x111
jne 0x402aad
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40242d
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402440
push 1
call fcn.0042e98d
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 0x402520
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402476
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402489
push 1
call fcn.0042e98d
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 0x402520
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4024be
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4024d1
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x402511
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40253d
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402550
push 1
call fcn.0042e98d
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 0x402648
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402586
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402599
push 1
call fcn.0042e98d
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 0x402648
push dword [ebp + 0x10]
call fcn.004053db
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0x300
jne 0x402648
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4025e6
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4025f9
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x402639
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402665
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402678
push 1
call fcn.0042e98d
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 0x4027f8
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4026ae
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4026c1
push 1
call fcn.0042e98d
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, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x4026fe
push 6
call fcn.0042e98d
add esp, 4
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 1
jne 0x4027f8
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402728
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40273b
push 1
call fcn.0042e98d
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 0x40276f
push dword [ebp + 0x10]
call fcn.004053db
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 9
jne 0x40276f
mov eax, 1
jmp 0x402771
xor eax, eax
test eax, eax
je 0x4027f8
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402796
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4027a9
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x4027e9
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402815
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402828
push 1
call fcn.0042e98d
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 0x402aad
push dword [ebp + 0x10]
call fcn.004053db
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jne 0x4028ee
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402873
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402886
push 1
call fcn.0042e98d
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 0x4028ee
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4028bb
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4028ce
push 1
call fcn.0042e98d
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 0x4028ee
mov eax, 1
jmp 0x4028f0
xor eax, eax
test eax, eax
je 0x402977
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402915
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402928
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x402968
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
push dword [ebp + 0x10]
call fcn.004053db
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jne 0x402a24
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4029a9
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4029bc
push 1
call fcn.0042e98d
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 0x402a24
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4029f1
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402a04
push 1
call fcn.0042e98d
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 0x402a24
mov eax, 1
jmp 0x402a26
xor eax, eax
test eax, eax
je 0x402aad
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402a4b
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402a5e
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x402a9e
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
cmp dword [ebp + 0xc], 0x4e
jne 0x4031de
mov dword [ebp - 0x2c], esp
mov eax, 0xd
call fcn.0042e993
cmp dword [ebp - 0x2c], esp
je 0x402ad6
push 6
call fcn.0042e98d
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, 0xe
call fcn.0042e993
cmp dword [ebp - 0x34], esp
je 0x402b0b
push 6
call fcn.0042e98d
add esp, 4
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402b28
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402b3b
push 1
call fcn.0042e98d
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 0x402e73
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402b77
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402b8a
push 1
call fcn.0042e98d
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 0x402e73
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffd
jne 0x402c09
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402bd6
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402be9
push 1
call fcn.0042e98d
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 0x402c09
mov eax, 1
jmp 0x402c0b
xor eax, eax
test eax, eax
je 0x402c97
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402c30
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402c43
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x402c83
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffe
jne 0x402cfc
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402cc9
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402cdc
push 1
call fcn.0042e98d
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 0x402cfc
mov eax, 1
jmp 0x402cfe
xor eax, eax
test eax, eax
je 0x402d85
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402d23
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402d36
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x402d76
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffb
jne 0x402dea
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402db7
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402dca
push 1
call fcn.0042e98d
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 0x402dea
mov eax, 1
jmp 0x402dec
xor eax, eax
test eax, eax
je 0x402e73
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402e11
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402e24
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x402e64
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402e90
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402ea3
push 1
call fcn.0042e98d
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 0x4031de
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402edf
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402ef2
push 1
call fcn.0042e98d
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 0x4031de
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffd
jne 0x402f71
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402f3e
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402f51
push 1
call fcn.0042e98d
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 0x402f71
mov eax, 1
jmp 0x402f73
xor eax, eax
test eax, eax
je 0x402fff
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x402f98
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x402fab
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x402feb
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffe6e
jne 0x403067
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403034
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403047
push 1
call fcn.0042e98d
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 0x403067
mov eax, 1
jmp 0x403069
xor eax, eax
test eax, eax
je 0x4030f0
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40308e
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4030a1
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x4030e1
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffb
jne 0x403155
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403122
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403135
push 1
call fcn.0042e98d
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 0x403155
mov eax, 1
jmp 0x403157
xor eax, eax
test eax, eax
je 0x4031de
mov ebx, dword [ebp - 4]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40317c
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40318f
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x4031cf
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x4031e6
pop eax
pop ebx
pop ecx
jmp 0x401e70
add esp, 0xc
mov ebx, dword [ebp - 8]
call fcn.00401508
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 0x403349
cmp dword [ebp + 0xc], 0x111
jne 0x403341
push dword [ebp + 0x10]
call fcn.00405417
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 8]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40323d
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403250
push 1
call fcn.0042e98d
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 0x4032b8
mov ebx, dword [ebp - 8]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403285
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403298
push 1
call fcn.0042e98d
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 0x4032b8
mov eax, 1
jmp 0x4032ba
xor eax, eax
test eax, eax
je 0x403341
mov ebx, dword [ebp - 8]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4032df
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4032f2
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x403332
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8648], 1
jmp 0x403349
pop eax
pop ebx
pop ecx
jmp 0x4031fa
add esp, 0xc
mov ebx, dword [ebp - 0x10]
call fcn.00401508
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 0x4034f7
cmp dword [ebp + 0xc], 0x111
jne 0x4034ef
mov ebx, dword [ebp - 0x10]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403395
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4033a8
push 1
call fcn.0042e98d
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 0x4034ef
push dword [ebp + 0x10]
call fcn.00405417
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 0x10]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4033e8
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4033fb
push 1
call fcn.0042e98d
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 0x403466
mov ebx, dword [ebp - 0x10]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403433
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403446
push 1
call fcn.0042e98d
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 0x403466
mov eax, 1
jmp 0x403468
xor eax, eax
test eax, eax
je 0x4034ef
mov ebx, dword [ebp - 0x10]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40348d
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4034a0
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x4034e0
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8658], 1
jmp 0x4034f7
pop eax
pop ebx
pop ecx
jmp 0x40335d
add esp, 0xc
mov ebx, dword [ebp - 0x18]
call fcn.00401508
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 0x403a0d
cmp dword [ebp + 0xc], 0x4e
jne 0x403a05
mov dword [ebp - 0x2c], esp
mov eax, 0xd
call fcn.0042e993
cmp dword [ebp - 0x2c], esp
je 0x403542
push 6
call fcn.0042e98d
add esp, 4
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], esp
mov eax, dword [ebp - 0x20]
push eax
push 0x19
call fcn.0042e987
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, 0xf
call fcn.0042e993
cmp dword [ebp - 0x34], esp
je 0x4035ca
push 6
call fcn.0042e98d
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.0042e981
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.0042e987
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, 0x10
call fcn.0042e993
cmp dword [ebp - 0x44], esp
je 0x4036c4
push 6
call fcn.0042e98d
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.0042e981
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 0x4037a1
mov ebx, dword [ebp - 0x20]
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x18]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40376a
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40377d
push 1
call fcn.0042e98d
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 0x4037a1
mov eax, 1
jmp 0x4037a3
xor eax, eax
test eax, eax
je 0x403a05
mov ebx, dword [ebp - 0x20]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x18]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4037d1
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4037e4
push 1
call fcn.0042e98d
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, 0xd
call fcn.0042e993
cmp dword [ebp - 0x2c], esp
je 0x40381a
push 6
call fcn.0042e98d
add esp, 4
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], esp
mov eax, dword [ebp - 0x20]
push eax
push 0x19
call fcn.0042e987
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, 0xf
call fcn.0042e993
cmp dword [ebp - 0x34], esp
je 0x4038a2
push 6
call fcn.0042e98d
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.0042e981
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.0042e987
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, 0x11
call fcn.0042e993
cmp dword [ebp - 0x44], esp
je 0x40399c
push 6
call fcn.0042e98d
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.0042e981
add esp, 4
pop eax
jmp 0x403a0d
pop eax
pop ebx
pop ecx
jmp 0x40350b
add esp, 0xc
mov ebx, dword [ebp - 0xc]
call fcn.00401508
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 0x4051de
cmp dword [ebp + 0xc], 0x114
jne 0x40460f
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403a59
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403a6c
push 1
call fcn.0042e98d
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 0x40460f
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403aa1
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403ab4
push 1
call fcn.0042e98d
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 [0x5c8660], eax
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403ae8
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403afb
push 1
call fcn.0042e98d
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 [0x5c8664], eax
mov dword [ebp - 0x2c], esp
push 0
push 0
push 0xe1
push dword [ebp + 0x14]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x2c], esp
je 0x403b43
push 6
call fcn.0042e98d
add esp, 4
mov dword [ebp - 0x24], eax
push dword [ebp + 0x10]
call fcn.00405417
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x403bab
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403b78
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403b8b
push 1
call fcn.0042e98d
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 0x403bab
mov eax, 1
jmp 0x403bad
xor eax, eax
test eax, eax
je 0x403d7f
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403bd2
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403be5
push 1
call fcn.0042e98d
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.00401541
mov dword [ebp - 0x28], eax
mov eax, dword [0x5c8660]
cmp dword [ebp - 0x28], eax
jg 0x403c95
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403c3f
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403c52
push 1
call fcn.0042e98d
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 [0x5c8660]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x403c90
push 6
call fcn.0042e98d
add esp, 4
jmp 0x403d00
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403cb2
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403cc5
push 1
call fcn.0042e98d
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, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x403d00
push 6
call fcn.0042e98d
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403d1d
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403d30
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x403d70
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8650], 1
jmp 0x4051de
push dword [ebp + 0x10]
call fcn.00405417
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jne 0x403de4
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403db1
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403dc4
push 1
call fcn.0042e98d
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 0x403de4
mov eax, 1
jmp 0x403de6
xor eax, eax
test eax, eax
je 0x403fb8
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403e0b
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403e1e
push 1
call fcn.0042e98d
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.00401541
mov dword [ebp - 0x28], eax
mov eax, dword [0x5c8664]
cmp dword [ebp - 0x28], eax
jl 0x403ece
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403e78
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403e8b
push 1
call fcn.0042e98d
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 [0x5c8664]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x403ec9
push 6
call fcn.0042e98d
add esp, 4
jmp 0x403f39
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403eeb
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403efe
push 1
call fcn.0042e98d
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, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x403f39
push 6
call fcn.0042e98d
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403f56
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403f69
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x403fa9
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8650], 1
jmp 0x4051de
push dword [ebp + 0x10]
call fcn.00405417
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jne 0x40401d
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x403fea
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x403ffd
push 1
call fcn.0042e98d
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 0x40401d
mov eax, 1
jmp 0x40401f
xor eax, eax
test eax, eax
je 0x4041f1
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404044
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404057
push 1
call fcn.0042e98d
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.00401541
mov dword [ebp - 0x28], eax
mov eax, dword [0x5c8660]
cmp dword [ebp - 0x28], eax
jg 0x404107
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4040b1
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4040c4
push 1
call fcn.0042e98d
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 [0x5c8660]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404102
push 6
call fcn.0042e98d
add esp, 4
jmp 0x404172
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404124
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404137
push 1
call fcn.0042e98d
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, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404172
push 6
call fcn.0042e98d
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40418f
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4041a2
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x4041e2
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8650], 1
jmp 0x4051de
push dword [ebp + 0x10]
call fcn.00405417
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jne 0x404256
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404223
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404236
push 1
call fcn.0042e98d
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 0x404256
mov eax, 1
jmp 0x404258
xor eax, eax
test eax, eax
je 0x40442a
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40427d
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404290
push 1
call fcn.0042e98d
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.00401541
mov dword [ebp - 0x28], eax
mov eax, dword [0x5c8664]
cmp dword [ebp - 0x28], eax
jl 0x404340
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4042ea
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4042fd
push 1
call fcn.0042e98d
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 [0x5c8664]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x40433b
push 6
call fcn.0042e98d
add esp, 4
jmp 0x4043ab
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40435d
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404370
push 1
call fcn.0042e98d
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, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x4043ab
push 6
call fcn.0042e98d
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4043c8
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4043db
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x40441b
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8650], 1
jmp 0x4051de
push dword [ebp + 0x10]
call fcn.00405417
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 5
jne 0x40448f
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40445c
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40446f
push 1
call fcn.0042e98d
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 0x40448f
mov eax, 1
jmp 0x404491
xor eax, eax
test eax, eax
je 0x40460f
push dword [ebp + 0x10]
call fcn.004053db
mov dword [ebp - 0x28], eax
mov eax, dword [0x5c8664]
cmp dword [ebp - 0x28], eax
jl 0x404525
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4044cf
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4044e2
push 1
call fcn.0042e98d
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 [0x5c8664]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404520
push 6
call fcn.0042e98d
add esp, 4
jmp 0x404590
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404542
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404555
push 1
call fcn.0042e98d
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, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404590
push 6
call fcn.0042e98d
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4045ad
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4045c0
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404600
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8650], 1
jmp 0x4051de
cmp dword [ebp + 0xc], 0x115
jne 0x4051d6
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404639
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40464c
push 1
call fcn.0042e98d
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 0x4051d6
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404681
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404694
push 1
call fcn.0042e98d
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 [0x5c8660], eax
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4046c8
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4046db
push 1
call fcn.0042e98d
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 [0x5c8664], eax
mov dword [ebp - 0x2c], esp
push 0
push 0
push 0xe1
push dword [ebp + 0x14]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x2c], esp
je 0x404723
push 6
call fcn.0042e98d
add esp, 4
mov dword [ebp - 0x24], eax
push dword [ebp + 0x10]
call fcn.00405417
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x40478b
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404758
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40476b
push 1
call fcn.0042e98d
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 0x40478b
mov eax, 1
jmp 0x40478d
xor eax, eax
test eax, eax
je 0x40495a
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4047b2
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4047c5
push 1
call fcn.0042e98d
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.00401541
mov dword [ebp - 0x28], eax
mov eax, dword [0x5c8660]
cmp dword [ebp - 0x28], eax
jg 0x404875
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40481f
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404832
push 1
call fcn.0042e98d
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 [0x5c8660]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404870
push 6
call fcn.0042e98d
add esp, 4
jmp 0x4048e0
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404892
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4048a5
push 1
call fcn.0042e98d
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, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x4048e0
push 6
call fcn.0042e98d
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4048fd
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404910
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404950
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8650], 1
push dword [ebp + 0x10]
call fcn.00405417
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jne 0x4049bf
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40498c
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40499f
push 1
call fcn.0042e98d
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 0x4049bf
mov eax, 1
jmp 0x4049c1
xor eax, eax
test eax, eax
je 0x404b8e
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4049e6
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4049f9
push 1
call fcn.0042e98d
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.00401541
mov dword [ebp - 0x28], eax
mov eax, dword [0x5c8664]
cmp dword [ebp - 0x28], eax
jl 0x404aa9
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404a53
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404a66
push 1
call fcn.0042e98d
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 [0x5c8664]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404aa4
push 6
call fcn.0042e98d
add esp, 4
jmp 0x404b14
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404ac6
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404ad9
push 1
call fcn.0042e98d
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, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404b14
push 6
call fcn.0042e98d
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404b31
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404b44
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404b84
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8650], 1
push dword [ebp + 0x10]
call fcn.00405417
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jne 0x404bf3
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404bc0
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404bd3
push 1
call fcn.0042e98d
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 0x404bf3
mov eax, 1
jmp 0x404bf5
xor eax, eax
test eax, eax
je 0x404dc2
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404c1a
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404c2d
push 1
call fcn.0042e98d
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.00401541
mov dword [ebp - 0x28], eax
mov eax, dword [0x5c8660]
cmp dword [ebp - 0x28], eax
jg 0x404cdd
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404c87
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404c9a
push 1
call fcn.0042e98d
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 [0x5c8660]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404cd8
push 6
call fcn.0042e98d
add esp, 4
jmp 0x404d48
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404cfa
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404d0d
push 1
call fcn.0042e98d
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, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404d48
push 6
call fcn.0042e98d
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404d65
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404d78
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404db8
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8650], 1
push dword [ebp + 0x10]
call fcn.00405417
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jne 0x404e27
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404df4
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404e07
push 1
call fcn.0042e98d
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 0x404e27
mov eax, 1
jmp 0x404e29
xor eax, eax
test eax, eax
je 0x404ff6
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404e4e
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404e61
push 1
call fcn.0042e98d
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.00401541
mov dword [ebp - 0x28], eax
mov eax, dword [0x5c8664]
cmp dword [ebp - 0x28], eax
jl 0x404f11
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404ebb
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404ece
push 1
call fcn.0042e98d
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 [0x5c8664]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404f0c
push 6
call fcn.0042e98d
add esp, 4
jmp 0x404f7c
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404f2e
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404f41
push 1
call fcn.0042e98d
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, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404f7c
push 6
call fcn.0042e98d
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x404f99
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x404fac
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x404fec
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8650], 1
push dword [ebp + 0x10]
call fcn.00405417
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 5
jne 0x40505b
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x405028
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40503b
push 1
call fcn.0042e98d
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 0x40505b
mov eax, 1
jmp 0x40505d
xor eax, eax
test eax, eax
je 0x4051d6
push dword [ebp + 0x10]
call fcn.004053db
mov dword [ebp - 0x28], eax
mov eax, dword [0x5c8664]
cmp dword [ebp - 0x28], eax
jl 0x4050f1
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40509b
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4050ae
push 1
call fcn.0042e98d
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 [0x5c8664]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x4050ec
push 6
call fcn.0042e98d
add esp, 4
jmp 0x40515c
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40510e
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x405121
push 1
call fcn.0042e98d
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, 0xa
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x40515c
push 6
call fcn.0042e98d
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401521
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x405179
push 4
call fcn.0042e98d
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40518c
push 1
call fcn.0042e98d
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, 0xc
call fcn.0042e993
cmp dword [ebp - 0x30], esp
je 0x4051cc
push 6
call fcn.0042e98d
add esp, 4
mov dword [0x5c8650], 1
pop eax
pop ebx
pop ecx
jmp 0x403a21
add esp, 0xc
cmp dword [ebp + 0xc], 2
jne 0x405200
mov eax, dword [0x5c8668]
cmp dword [ebp + 8], eax
jne 0x405200
mov eax, 1
jmp 0x405202
xor eax, eax
test eax, eax
je 0x40525f
mov dword [ebp - 0x2c], esp
push dword [ebp + 8]
mov eax, 0x12
call fcn.0042e993
cmp dword [ebp - 0x2c], esp
je 0x40522c
push 6
call fcn.0042e98d
add esp, 4
mov dword [ebp - 0x2c], esp
push 0x4acd88
mov eax, 0x13
call fcn.0042e993
cmp dword [ebp - 0x2c], esp
je 0x405250
push 6
call fcn.0042e98d
add esp, 4
mov eax, 0
jmp 0x405269
mov eax, 1
jmp 0x405269
push eax
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x405288
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405284
imul eax, dword [ebx]
jmp 0x405279
mov ecx, eax
test ecx, ecx
je 0x4052a3
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042e981
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40528e
call fcn.0042e981
add esp, 4
mov ebx, dword [ebp - 8]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4052c9
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4052c5
imul eax, dword [ebx]
jmp 0x4052ba
mov ecx, eax
test ecx, ecx
je 0x4052e4
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042e981
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4052cf
call fcn.0042e981
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40530a
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405306
imul eax, dword [ebx]
jmp 0x4052fb
mov ecx, eax
test ecx, ecx
je 0x405325
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042e981
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x405310
call fcn.0042e981
add esp, 4
mov ebx, dword [ebp - 0x10]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40534b
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405347
imul eax, dword [ebx]
jmp 0x40533c
mov ecx, eax
test ecx, ecx
je 0x405366
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042e981
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x405351
call fcn.0042e981
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x40538c
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405388
imul eax, dword [ebx]
jmp 0x40537d
mov ecx, eax
test ecx, ecx
je 0x4053a7
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042e981
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x405392
call fcn.0042e981
add esp, 4
mov ebx, dword [ebp - 0x1c]
push ebx
call fcn.0042e981
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042e981
add esp, 4
pop ebx
call fcn.0042e981
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x10