Function at 0x405ad3
Capabilities:
Parse credit card information

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
push 8
call fcn.0042d3fe
add esp, 4
mov dword [ebp - 4], eax
mov edi, eax
mov esi, 0x4b2617
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0042d3fe
add esp, 4
mov dword [ebp - 8], eax
mov edi, eax
mov esi, 0x4b2617
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0042d3fe
add esp, 4
mov dword [ebp - 0xc], eax
mov edi, eax
mov esi, 0x4b2617
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 8
call fcn.0042d3fe
add esp, 4
mov dword [ebp - 0x10], eax
mov edi, eax
mov esi, 0x4b2617
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.0042d3fe
add esp, 4
mov dword [ebp - 0x18], eax
mov edi, eax
mov esi, 0x4b2617
lodsd eax, dword [esi]
stosd dword es:[edi], eax
lodsd eax, dword [esi]
stosd dword es:[edi], eax
push 0xc
call fcn.0042d3fe
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.0042d3fe
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.0042d3fe
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 0x405c02
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405bfe
imul eax, dword [ebx]
jmp 0x405bf3
mov ecx, eax
test ecx, ecx
je 0x405c1d
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042d3f8
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x405c08
call fcn.0042d3f8
add esp, 4
mov eax, 0x4b2617
mov dword [ebp - 4], eax
mov ebx, dword [ebp - 8]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x405c4b
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405c47
imul eax, dword [ebx]
jmp 0x405c3c
mov ecx, eax
test ecx, ecx
je 0x405c66
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042d3f8
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x405c51
call fcn.0042d3f8
add esp, 4
mov eax, 0x4b2617
mov dword [ebp - 8], eax
mov ebx, dword [ebp - 0xc]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x405c94
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405c90
imul eax, dword [ebx]
jmp 0x405c85
mov ecx, eax
test ecx, ecx
je 0x405caf
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042d3f8
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x405c9a
call fcn.0042d3f8
add esp, 4
mov eax, 0x4b2617
mov dword [ebp - 0xc], eax
mov ebx, dword [ebp - 0x10]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x405cdd
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x405cd9
imul eax, dword [ebx]
jmp 0x405cce
mov ecx, eax
test ecx, ecx
je 0x405cf8
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042d3f8
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x405ce3
call fcn.0042d3f8
add esp, 4
mov eax, 0x4b2617
mov dword [ebp - 0x10], eax
cmp dword [ebp + 0xc], 5
je 0x405d20
cmp dword [ebp + 0xc], 2
je 0x405d20
xor eax, eax
jmp 0x405d25
mov eax, 1
test eax, eax
je 0x405d6e
mov dword [ebp - 0x2c], esp
push 0
push 0
push 0x421
push dword [0x5a56e0]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x2c], esp
je 0x405d61
push 6
call fcn.0042d404
add esp, 4
mov eax, dword [ebp + 8]
mov dword [0x5a56e4], eax
jmp 0x405dca
cmp dword [ebp + 0xc], 0x114
je 0x405d8c
cmp dword [ebp + 0xc], 0x115
je 0x405d8c
xor eax, eax
jmp 0x405d91
mov eax, 1
test eax, eax
je 0x405da6
mov eax, dword [ebp + 0x14]
mov dword [0x5a56e4], eax
jmp 0x405dca
mov dword [ebp - 0x2c], esp
mov eax, 0xb
call fcn.0042d40a
cmp dword [ebp - 0x2c], esp
je 0x405dc5
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56e4], eax
mov ebx, dword [0x5a56e8]
call fcn.0040153f
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 0x40602a
cmp dword [0x5a56ec], 1
jne 0x405e0d
mov dword [0x5a56ec], 0
jmp 0x40602a
mov ebx, dword [0x5a56e8]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x405e2d
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x405e40
push 1
call fcn.0042d404
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov eax, dword [0x5a56e4]
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], eax
jne 0x405f18
mov ebx, dword [0x5a56e8]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x405e7a
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x405e8d
push 1
call fcn.0042d404
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.0042d3f2
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.00401558
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 0x405eda
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.0042d416
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.0042d3fe
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
pop edi
mov dword [edi], eax
mov ebx, dword [0x5a56e8]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x405f38
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x405f4b
push 1
call fcn.0042d404
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 0x406022
mov ebx, dword [0x5a56e8]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x405f84
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x405f97
push 1
call fcn.0042d404
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.0042d3f2
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.00401558
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 0x405fe4
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.0042d416
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.0042d3fe
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 0x405dde
add esp, 0xc
mov ebx, dword [0x5a56f0]
call fcn.0040153f
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 0x406183
cmp dword [0x5a56f4], 1
jne 0x406070
mov dword [0x5a56f4], 0
jmp 0x406183
mov ebx, dword [0x5a56f0]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406090
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4060a3
push 1
call fcn.0042d404
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov eax, dword [0x5a56e4]
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], eax
jne 0x40617b
mov ebx, dword [0x5a56f0]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4060dd
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4060f0
push 1
call fcn.0042d404
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.0042d3f2
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.00401558
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 0x40613d
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.0042d416
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.0042d3fe
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 0x406041
add esp, 0xc
mov ebx, dword [0x5a56f8]
call fcn.0040153f
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 0x4062dc
cmp dword [0x5a56fc], 1
jne 0x4061c9
mov dword [0x5a56fc], 0
jmp 0x4062dc
mov ebx, dword [0x5a56f8]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4061e9
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4061fc
push 1
call fcn.0042d404
add esp, 4
shl eax, 2
add ebx, eax
mov ebx, dword [ebx]
mov dword [ebp - 0x2c], ebx
mov eax, dword [0x5a56e0]
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], eax
jne 0x4062d4
mov ebx, dword [0x5a56f8]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406236
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406249
push 1
call fcn.0042d404
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.0042d3f2
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.00401558
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 0x406296
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.0042d416
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.0042d3fe
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 0x40619a
add esp, 0xc
mov ebx, dword [0x5a5700]
call fcn.0040153f
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 0x4063c7
mov ebx, dword [0x5a5700]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406321
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406334
push 1
call fcn.0042d404
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.0042d3f2
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.00401558
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 0x406381
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.0042d416
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.0042d3fe
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 0x4062f3
add esp, 0xc
mov ebx, dword [ebp - 4]
call fcn.0040153f
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 0x407751
cmp dword [ebp + 0xc], 5
jne 0x40655d
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406410
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406423
push 1
call fcn.0042d404
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 0x40648c
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406459
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40646c
push 1
call fcn.0042d404
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 0x40648c
mov eax, 1
jmp 0x40648e
xor eax, eax
test eax, eax
je 0x40655d
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4064b3
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4064c6
push 1
call fcn.0042d404
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 0x40655d
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4064fb
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40650e
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x40654e
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
cmp dword [ebp + 0xc], 2
jne 0x4066d1
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406584
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406597
push 1
call fcn.0042d404
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 0x4066d1
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4065cd
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4065e0
push 1
call fcn.0042d404
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 0x406648
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406615
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406628
push 1
call fcn.0042d404
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 0x406648
mov eax, 1
jmp 0x40664a
xor eax, eax
test eax, eax
je 0x4066d1
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40666f
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406682
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4066c2
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
cmp dword [ebp + 0xc], 0x204
jne 0x40696e
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4066fb
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40670e
push 1
call fcn.0042d404
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 0x40684d
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406744
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406757
push 1
call fcn.0042d404
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 0x4067bf
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40678c
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40679f
push 1
call fcn.0042d404
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 0x4067bf
mov eax, 1
jmp 0x4067c1
xor eax, eax
test eax, eax
je 0x406848
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4067e6
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4067f9
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x406839
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
jmp 0x40696e
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40686a
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40687d
push 1
call fcn.0042d404
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 0x4068e5
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4068b2
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4068c5
push 1
call fcn.0042d404
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 0x4068e5
mov eax, 1
jmp 0x4068e7
xor eax, eax
test eax, eax
je 0x40696e
mov ebx, dword [ebp - 8]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40690c
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40691f
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x40695f
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
cmp dword [ebp + 0xc], 0x111
jne 0x407018
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406998
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4069ab
push 1
call fcn.0042d404
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 0x406a8b
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4069e1
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4069f4
push 1
call fcn.0042d404
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 0x406a8b
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406a29
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406a3c
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x406a7c
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406aa8
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406abb
push 1
call fcn.0042d404
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 0x406bb3
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406af1
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406b04
push 1
call fcn.0042d404
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 0x406bb3
push dword [ebp + 0x10]
call fcn.00409946
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0x300
jne 0x406bb3
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406b51
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406b64
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x406ba4
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406bd0
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406be3
push 1
call fcn.0042d404
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 0x406d63
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406c19
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406c2c
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x406c69
push 6
call fcn.0042d404
add esp, 4
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 1
jne 0x406d63
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406c93
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406ca6
push 1
call fcn.0042d404
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 0x406cda
push dword [ebp + 0x10]
call fcn.00409946
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 9
jne 0x406cda
mov eax, 1
jmp 0x406cdc
xor eax, eax
test eax, eax
je 0x406d63
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406d01
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406d14
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x406d54
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406d80
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406d93
push 1
call fcn.0042d404
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 0x407018
push dword [ebp + 0x10]
call fcn.00409946
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jne 0x406e59
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406dde
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406df1
push 1
call fcn.0042d404
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 0x406e59
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406e26
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406e39
push 1
call fcn.0042d404
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 0x406e59
mov eax, 1
jmp 0x406e5b
xor eax, eax
test eax, eax
je 0x406ee2
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406e80
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406e93
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x406ed3
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
push dword [ebp + 0x10]
call fcn.00409946
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jne 0x406f8f
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406f14
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406f27
push 1
call fcn.0042d404
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 0x406f8f
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406f5c
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406f6f
push 1
call fcn.0042d404
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 0x406f8f
mov eax, 1
jmp 0x406f91
xor eax, eax
test eax, eax
je 0x407018
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x406fb6
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x406fc9
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x407009
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
cmp dword [ebp + 0xc], 0x4e
jne 0x407749
mov dword [ebp - 0x2c], esp
mov eax, 0xd
call fcn.0042d40a
cmp dword [ebp - 0x2c], esp
je 0x407041
push 6
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x34], esp
je 0x407076
push 6
call fcn.0042d404
add esp, 4
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x407093
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4070a6
push 1
call fcn.0042d404
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 0x4073de
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4070e2
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4070f5
push 1
call fcn.0042d404
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 0x4073de
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffd
jne 0x407174
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x407141
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407154
push 1
call fcn.0042d404
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 0x407174
mov eax, 1
jmp 0x407176
xor eax, eax
test eax, eax
je 0x407202
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40719b
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4071ae
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4071ee
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffe
jne 0x407267
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x407234
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407247
push 1
call fcn.0042d404
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 0x407267
mov eax, 1
jmp 0x407269
xor eax, eax
test eax, eax
je 0x4072f0
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40728e
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4072a1
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4072e1
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffb
jne 0x407355
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x407322
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407335
push 1
call fcn.0042d404
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 0x407355
mov eax, 1
jmp 0x407357
xor eax, eax
test eax, eax
je 0x4073de
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40737c
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40738f
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4073cf
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4073fb
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40740e
push 1
call fcn.0042d404
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 0x407749
mov ebx, dword [ebp - 0x1c]
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40744a
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40745d
push 1
call fcn.0042d404
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 0x407749
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffd
jne 0x4074dc
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4074a9
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4074bc
push 1
call fcn.0042d404
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 0x4074dc
mov eax, 1
jmp 0x4074de
xor eax, eax
test eax, eax
je 0x40756a
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x407503
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407516
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x407556
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffe6e
jne 0x4075d2
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40759f
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4075b2
push 1
call fcn.0042d404
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 0x4075d2
mov eax, 1
jmp 0x4075d4
xor eax, eax
test eax, eax
je 0x40765b
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4075f9
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40760c
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x40764c
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
mov ebx, dword [ebp - 0x1c]
add ebx, 8
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x2c]
cmp dword [ebx], 0xfffffffb
jne 0x4076c0
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40768d
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4076a0
push 1
call fcn.0042d404
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 0x4076c0
mov eax, 1
jmp 0x4076c2
xor eax, eax
test eax, eax
je 0x407749
mov ebx, dword [ebp - 4]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4076e7
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4076fa
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x40773a
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x407751
pop eax
pop ebx
pop ecx
jmp 0x4063db
add esp, 0xc
mov ebx, dword [ebp - 8]
call fcn.0040153f
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 0x4078b4
cmp dword [ebp + 0xc], 0x111
jne 0x4078ac
push dword [ebp + 0x10]
call fcn.00409982
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 8]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4077a8
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4077bb
push 1
call fcn.0042d404
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 0x407823
mov ebx, dword [ebp - 8]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4077f0
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407803
push 1
call fcn.0042d404
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 0x407823
mov eax, 1
jmp 0x407825
xor eax, eax
test eax, eax
je 0x4078ac
mov ebx, dword [ebp - 8]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40784a
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40785d
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x40789d
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56ec], 1
jmp 0x4078b4
pop eax
pop ebx
pop ecx
jmp 0x407765
add esp, 0xc
mov ebx, dword [ebp - 0x10]
call fcn.0040153f
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 0x407a62
cmp dword [ebp + 0xc], 0x111
jne 0x407a5a
mov ebx, dword [ebp - 0x10]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x407900
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407913
push 1
call fcn.0042d404
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 0x407a5a
push dword [ebp + 0x10]
call fcn.00409982
mov dword [ebp - 0x2c], eax
mov ebx, dword [ebp - 0x10]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x407953
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407966
push 1
call fcn.0042d404
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 0x4079d1
mov ebx, dword [ebp - 0x10]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40799e
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4079b1
push 1
call fcn.0042d404
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 0x4079d1
mov eax, 1
jmp 0x4079d3
xor eax, eax
test eax, eax
je 0x407a5a
mov ebx, dword [ebp - 0x10]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4079f8
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407a0b
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x407a4b
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56fc], 1
jmp 0x407a62
pop eax
pop ebx
pop ecx
jmp 0x4078c8
add esp, 0xc
mov ebx, dword [ebp - 0x18]
call fcn.0040153f
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 0x407f78
cmp dword [ebp + 0xc], 0x4e
jne 0x407f70
mov dword [ebp - 0x2c], esp
mov eax, 0xd
call fcn.0042d40a
cmp dword [ebp - 0x2c], esp
je 0x407aad
push 6
call fcn.0042d404
add esp, 4
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], esp
mov eax, dword [ebp - 0x20]
push eax
push 0x19
call fcn.0042d3fe
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.0042d40a
cmp dword [ebp - 0x34], esp
je 0x407b35
push 6
call fcn.0042d404
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.0042d3f8
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.0042d3fe
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.0042d40a
cmp dword [ebp - 0x44], esp
je 0x407c2f
push 6
call fcn.0042d404
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.0042d3f8
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 0x407d0c
mov ebx, dword [ebp - 0x20]
mov ebx, dword [ebx]
add ebx, 4
mov dword [ebp - 0x34], ebx
mov ebx, dword [ebp - 0x18]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x407cd5
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407ce8
push 1
call fcn.0042d404
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 0x407d0c
mov eax, 1
jmp 0x407d0e
xor eax, eax
test eax, eax
je 0x407f70
mov ebx, dword [ebp - 0x20]
add ebx, 4
mov dword [ebp - 0x2c], ebx
mov ebx, dword [ebp - 0x18]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x407d3c
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407d4f
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x2c], esp
je 0x407d85
push 6
call fcn.0042d404
add esp, 4
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], esp
mov eax, dword [ebp - 0x20]
push eax
push 0x19
call fcn.0042d3fe
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.0042d40a
cmp dword [ebp - 0x34], esp
je 0x407e0d
push 6
call fcn.0042d404
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.0042d3f8
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.0042d3fe
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.0042d40a
cmp dword [ebp - 0x44], esp
je 0x407f07
push 6
call fcn.0042d404
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.0042d3f8
add esp, 4
pop eax
jmp 0x407f78
pop eax
pop ebx
pop ecx
jmp 0x407a76
add esp, 0xc
mov ebx, dword [ebp - 0xc]
call fcn.0040153f
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 0x409749
cmp dword [ebp + 0xc], 0x114
jne 0x408b7a
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x407fc4
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x407fd7
push 1
call fcn.0042d404
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 0x408b7a
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40800c
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40801f
push 1
call fcn.0042d404
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 [0x5a5704], eax
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408053
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408066
push 1
call fcn.0042d404
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 [0x5a5708], eax
mov dword [ebp - 0x2c], esp
push 0
push 0
push 0xe1
push dword [ebp + 0x14]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x2c], esp
je 0x4080ae
push 6
call fcn.0042d404
add esp, 4
mov dword [ebp - 0x24], eax
push dword [ebp + 0x10]
call fcn.00409982
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x408116
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4080e3
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4080f6
push 1
call fcn.0042d404
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 0x408116
mov eax, 1
jmp 0x408118
xor eax, eax
test eax, eax
je 0x4082ea
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40813d
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408150
push 1
call fcn.0042d404
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.004016f7
mov dword [ebp - 0x28], eax
mov eax, dword [0x5a5704]
cmp dword [ebp - 0x28], eax
jg 0x408200
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4081aa
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4081bd
push 1
call fcn.0042d404
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 [0x5a5704]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4081fb
push 6
call fcn.0042d404
add esp, 4
jmp 0x40826b
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40821d
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408230
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x40826b
push 6
call fcn.0042d404
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408288
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40829b
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4082db
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56f4], 1
jmp 0x409749
push dword [ebp + 0x10]
call fcn.00409982
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jne 0x40834f
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40831c
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40832f
push 1
call fcn.0042d404
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 0x40834f
mov eax, 1
jmp 0x408351
xor eax, eax
test eax, eax
je 0x408523
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408376
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408389
push 1
call fcn.0042d404
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.004016f7
mov dword [ebp - 0x28], eax
mov eax, dword [0x5a5708]
cmp dword [ebp - 0x28], eax
jl 0x408439
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4083e3
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4083f6
push 1
call fcn.0042d404
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 [0x5a5708]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x30], esp
je 0x408434
push 6
call fcn.0042d404
add esp, 4
jmp 0x4084a4
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408456
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408469
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4084a4
push 6
call fcn.0042d404
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4084c1
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4084d4
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x408514
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56f4], 1
jmp 0x409749
push dword [ebp + 0x10]
call fcn.00409982
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jne 0x408588
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408555
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408568
push 1
call fcn.0042d404
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 0x408588
mov eax, 1
jmp 0x40858a
xor eax, eax
test eax, eax
je 0x40875c
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4085af
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4085c2
push 1
call fcn.0042d404
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.004016f7
mov dword [ebp - 0x28], eax
mov eax, dword [0x5a5704]
cmp dword [ebp - 0x28], eax
jg 0x408672
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40861c
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40862f
push 1
call fcn.0042d404
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 [0x5a5704]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x30], esp
je 0x40866d
push 6
call fcn.0042d404
add esp, 4
jmp 0x4086dd
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40868f
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4086a2
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4086dd
push 6
call fcn.0042d404
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4086fa
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40870d
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x40874d
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56f4], 1
jmp 0x409749
push dword [ebp + 0x10]
call fcn.00409982
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jne 0x4087c1
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40878e
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4087a1
push 1
call fcn.0042d404
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 0x4087c1
mov eax, 1
jmp 0x4087c3
xor eax, eax
test eax, eax
je 0x408995
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4087e8
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4087fb
push 1
call fcn.0042d404
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.004016f7
mov dword [ebp - 0x28], eax
mov eax, dword [0x5a5708]
cmp dword [ebp - 0x28], eax
jl 0x4088ab
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408855
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408868
push 1
call fcn.0042d404
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 [0x5a5708]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4088a6
push 6
call fcn.0042d404
add esp, 4
jmp 0x408916
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4088c8
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4088db
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x408916
push 6
call fcn.0042d404
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408933
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408946
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x408986
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56f4], 1
jmp 0x409749
push dword [ebp + 0x10]
call fcn.00409982
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 5
jne 0x4089fa
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4089c7
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4089da
push 1
call fcn.0042d404
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 0x4089fa
mov eax, 1
jmp 0x4089fc
xor eax, eax
test eax, eax
je 0x408b7a
push dword [ebp + 0x10]
call fcn.00409946
mov dword [ebp - 0x28], eax
mov eax, dword [0x5a5708]
cmp dword [ebp - 0x28], eax
jl 0x408a90
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408a3a
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408a4d
push 1
call fcn.0042d404
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 [0x5a5708]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x30], esp
je 0x408a8b
push 6
call fcn.0042d404
add esp, 4
jmp 0x408afb
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408aad
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408ac0
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x408afb
push 6
call fcn.0042d404
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408b18
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408b2b
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x408b6b
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56f4], 1
jmp 0x409749
cmp dword [ebp + 0xc], 0x115
jne 0x409741
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408ba4
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408bb7
push 1
call fcn.0042d404
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 0x409741
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408bec
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408bff
push 1
call fcn.0042d404
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 [0x5a5704], eax
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408c33
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408c46
push 1
call fcn.0042d404
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 [0x5a5708], eax
mov dword [ebp - 0x2c], esp
push 0
push 0
push 0xe1
push dword [ebp + 0x14]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x2c], esp
je 0x408c8e
push 6
call fcn.0042d404
add esp, 4
mov dword [ebp - 0x24], eax
push dword [ebp + 0x10]
call fcn.00409982
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x408cf6
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408cc3
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408cd6
push 1
call fcn.0042d404
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 0x408cf6
mov eax, 1
jmp 0x408cf8
xor eax, eax
test eax, eax
je 0x408ec5
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408d1d
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408d30
push 1
call fcn.0042d404
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.004016f7
mov dword [ebp - 0x28], eax
mov eax, dword [0x5a5704]
cmp dword [ebp - 0x28], eax
jg 0x408de0
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408d8a
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408d9d
push 1
call fcn.0042d404
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 [0x5a5704]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x30], esp
je 0x408ddb
push 6
call fcn.0042d404
add esp, 4
jmp 0x408e4b
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408dfd
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408e10
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x408e4b
push 6
call fcn.0042d404
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408e68
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408e7b
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x408ebb
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56f4], 1
push dword [ebp + 0x10]
call fcn.00409982
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 1
jne 0x408f2a
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408ef7
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408f0a
push 1
call fcn.0042d404
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 0x408f2a
mov eax, 1
jmp 0x408f2c
xor eax, eax
test eax, eax
je 0x4090f9
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408f51
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408f64
push 1
call fcn.0042d404
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.004016f7
mov dword [ebp - 0x28], eax
mov eax, dword [0x5a5708]
cmp dword [ebp - 0x28], eax
jl 0x409014
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x408fbe
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x408fd1
push 1
call fcn.0042d404
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 [0x5a5708]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x30], esp
je 0x40900f
push 6
call fcn.0042d404
add esp, 4
jmp 0x40907f
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x409031
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409044
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x40907f
push 6
call fcn.0042d404
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40909c
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4090af
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4090ef
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56f4], 1
push dword [ebp + 0x10]
call fcn.00409982
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 2
jne 0x40915e
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40912b
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40913e
push 1
call fcn.0042d404
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 0x40915e
mov eax, 1
jmp 0x409160
xor eax, eax
test eax, eax
je 0x40932d
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x409185
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409198
push 1
call fcn.0042d404
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.004016f7
mov dword [ebp - 0x28], eax
mov eax, dword [0x5a5704]
cmp dword [ebp - 0x28], eax
jg 0x409248
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4091f2
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409205
push 1
call fcn.0042d404
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 [0x5a5704]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x30], esp
je 0x409243
push 6
call fcn.0042d404
add esp, 4
jmp 0x4092b3
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x409265
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409278
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4092b3
push 6
call fcn.0042d404
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4092d0
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4092e3
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x409323
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56f4], 1
push dword [ebp + 0x10]
call fcn.00409982
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 3
jne 0x409392
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x40935f
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409372
push 1
call fcn.0042d404
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 0x409392
mov eax, 1
jmp 0x409394
xor eax, eax
test eax, eax
je 0x409561
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4093b9
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4093cc
push 1
call fcn.0042d404
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.004016f7
mov dword [ebp - 0x28], eax
mov eax, dword [0x5a5708]
cmp dword [ebp - 0x28], eax
jl 0x40947c
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x409426
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409439
push 1
call fcn.0042d404
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 [0x5a5708]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x30], esp
je 0x409477
push 6
call fcn.0042d404
add esp, 4
jmp 0x4094e7
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x409499
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4094ac
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4094e7
push 6
call fcn.0042d404
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x409504
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409517
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x409557
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56f4], 1
push dword [ebp + 0x10]
call fcn.00409982
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 5
jne 0x4095c6
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x409593
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4095a6
push 1
call fcn.0042d404
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 0x4095c6
mov eax, 1
jmp 0x4095c8
xor eax, eax
test eax, eax
je 0x409741
push dword [ebp + 0x10]
call fcn.00409946
mov dword [ebp - 0x28], eax
mov eax, dword [0x5a5708]
cmp dword [ebp - 0x28], eax
jl 0x40965c
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x409606
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x409619
push 1
call fcn.0042d404
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 [0x5a5708]
push 0xe0
mov ebx, dword [ebp - 0x2c]
push dword [ebx]
mov eax, 0xa
call fcn.0042d40a
cmp dword [ebp - 0x30], esp
je 0x409657
push 6
call fcn.0042d404
add esp, 4
jmp 0x4096c7
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x409679
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x40968c
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x4096c7
push 6
call fcn.0042d404
add esp, 4
mov ebx, dword [ebp - 0xc]
call fcn.00401558
push ebx
push ecx
mov eax, dword [ebp - 0x14]
dec eax
jns 0x4096e4
push 4
call fcn.0042d404
add esp, 4
pop ecx
pop ebx
cmp eax, ecx
jl 0x4096f7
push 1
call fcn.0042d404
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.0042d40a
cmp dword [ebp - 0x30], esp
je 0x409737
push 6
call fcn.0042d404
add esp, 4
mov dword [0x5a56f4], 1
pop eax
pop ebx
pop ecx
jmp 0x407f8c
add esp, 0xc
cmp dword [ebp + 0xc], 2
jne 0x40976b
mov eax, dword [0x5a570c]
cmp dword [ebp + 8], eax
jne 0x40976b
mov eax, 1
jmp 0x40976d
xor eax, eax
test eax, eax
je 0x4097ca
mov dword [ebp - 0x2c], esp
push dword [ebp + 8]
mov eax, 0x12
call fcn.0042d40a
cmp dword [ebp - 0x2c], esp
je 0x409797
push 6
call fcn.0042d404
add esp, 4
mov dword [ebp - 0x2c], esp
push 0x4a5490
mov eax, 0x13
call fcn.0042d40a
cmp dword [ebp - 0x2c], esp
je 0x4097bb
push 6
call fcn.0042d404
add esp, 4
mov eax, 0
jmp 0x4097d4
mov eax, 1
jmp 0x4097d4
push eax
mov ebx, dword [ebp - 4]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4097f3
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4097ef
imul eax, dword [ebx]
jmp 0x4097e4
mov ecx, eax
test ecx, ecx
je 0x40980e
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042d3f8
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4097f9
call fcn.0042d3f8
add esp, 4
mov ebx, dword [ebp - 8]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x409834
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x409830
imul eax, dword [ebx]
jmp 0x409825
mov ecx, eax
test ecx, ecx
je 0x40984f
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042d3f8
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40983a
call fcn.0042d3f8
add esp, 4
mov ebx, dword [ebp - 0xc]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x409875
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x409871
imul eax, dword [ebx]
jmp 0x409866
mov ecx, eax
test ecx, ecx
je 0x409890
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042d3f8
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x40987b
call fcn.0042d3f8
add esp, 4
mov ebx, dword [ebp - 0x10]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4098b6
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4098b2
imul eax, dword [ebx]
jmp 0x4098a7
mov ecx, eax
test ecx, ecx
je 0x4098d1
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042d3f8
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4098bc
call fcn.0042d3f8
add esp, 4
mov ebx, dword [ebp - 0x18]
push ebx
mov ecx, dword [ebx]
add ebx, 4
test ecx, ecx
je 0x4098f7
mov eax, dword [ebx]
add ebx, 4
dec ecx
je 0x4098f3
imul eax, dword [ebx]
jmp 0x4098e8
mov ecx, eax
test ecx, ecx
je 0x409912
push ecx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042d3f8
add esp, 4
pop ebx
add ebx, 4
pop ecx
dec ecx
jne 0x4098fd
call fcn.0042d3f8
add esp, 4
mov ebx, dword [ebp - 0x1c]
push ebx
call fcn.0042d3f8
add esp, 4
mov ebx, dword [ebp - 0x20]
push ebx
push ebx
mov ebx, dword [ebx]
push ebx
call fcn.0042d3f8
add esp, 4
pop ebx
call fcn.0042d3f8
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x10