Function at 0x401c87
Capabilities:
Terminate process

Disassembly:
push ebp
lea ebp, [esp - 0x70]
mov eax, 0x1c20
call fcn.004811e0
mov eax, dword [0x4b6084]
xor eax, ebp
mov dword [ebp + 0x6c], eax
mov dword [ebp - 0x19d0], 1
and dword [ebp - 0x19c4], 0
and dword [ebp - 0x19c0], 0
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movsx eax, byte [eax]
test eax, eax
je 0x401ec3
cmp dword [ebp - 0x19c4], 0x32
jge 0x401ec3
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movzx eax, byte [eax]
push eax
call fcn.004865e9
pop ecx
test eax, eax
je 0x401cff
mov eax, dword [ebp - 0x19d0]
inc eax
mov dword [ebp - 0x19d0], eax
jmp 0x401cd9
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movsx eax, byte [eax]
test eax, eax
jne 0x401d14
jmp 0x401ec3
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movsx eax, byte [eax]
cmp eax, 0x27
je 0x401d3a
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movsx eax, byte [eax]
cmp eax, 0x22
jne 0x401e2f
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movsx eax, byte [eax]
mov dword [ebp - 0x1a64], eax
mov eax, dword [ebp - 0x19d0]
inc eax
mov dword [ebp - 0x19d0], eax
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
mov ecx, dword [ebp - 0x19c4]
mov dword [ebp + ecx*4 - 0x5c], eax
mov eax, dword [ebp - 0x19c4]
inc eax
mov dword [ebp - 0x19c4], eax
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movsx eax, byte [eax]
test eax, eax
je 0x401de4
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movsx eax, byte [eax]
cmp eax, dword [ebp - 0x1a64]
je 0x401de4
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movsx eax, byte [eax]
cmp eax, 0x5c
jne 0x401dd5
cmp dword [ebp - 0x1a64], 0x22
jne 0x401dd5
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movsx eax, byte [eax + 1]
test eax, eax
je 0x401dd5
mov eax, dword [ebp - 0x19d0]
inc eax
mov dword [ebp - 0x19d0], eax
mov eax, dword [ebp - 0x19d0]
inc eax
mov dword [ebp - 0x19d0], eax
jmp 0x401d79
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movsx eax, byte [eax]
cmp eax, dword [ebp - 0x1a64]
jne 0x401e11
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
mov byte [eax], 0
mov eax, dword [ebp - 0x19d0]
inc eax
mov dword [ebp - 0x19d0], eax
cmp dword [ebp - 0x1a64], 0x22
jne 0x401e2a
mov eax, dword [ebp - 0x19c4]
push dword [ebp + eax*4 - 0x60]
call fcn.004078d5
pop ecx
jmp 0x401ebe
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
mov ecx, dword [ebp - 0x19c4]
mov dword [ebp + ecx*4 - 0x5c], eax
mov eax, dword [ebp - 0x19c4]
inc eax
mov dword [ebp - 0x19c4], eax
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movsx eax, byte [eax]
test eax, eax
je 0x401e85
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movzx eax, byte [eax]
push eax
call fcn.004865e9
pop ecx
test eax, eax
jne 0x401e85
mov eax, dword [ebp - 0x19d0]
inc eax
mov dword [ebp - 0x19d0], eax
jmp 0x401e4f
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
movsx eax, byte [eax]
test eax, eax
je 0x401eae
mov eax, dword [ebp + 0x78]
add eax, dword [ebp - 0x19d0]
mov byte [eax], 0
mov eax, dword [ebp - 0x19d0]
inc eax
mov dword [ebp - 0x19d0], eax
mov eax, dword [ebp - 0x19c4]
push dword [ebp + eax*4 - 0x60]
call fcn.004078d5
pop ecx
jmp 0x401cb8
cmp dword [ebp - 0x19c4], 0
jne 0x401ed3
xor eax, eax
jmp 0x405b66
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004092b1
pop ecx
mov dword [ebp - 0x19c8], eax
push 4
pop eax
imul eax, eax, 0
xor ecx, ecx
inc ecx
imul ecx, ecx, 0
mov eax, dword [ebp + eax - 0x5c]
movsx eax, byte [eax + ecx]
mov dword [ebp - 0x19cc], eax
cmp dword [ebp - 0x19cc], 0x62
jne 0x401f36
cmp dword [ebp - 0x19c8], 3
jl 0x401f36
push dword [ebp - 0x19c8]
push 0x49f530
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
je 0x401f75
cmp dword [ebp - 0x19cc], 0x73
jne 0x4021fd
cmp dword [ebp - 0x19c8], 3
jl 0x4021fd
push dword [ebp - 0x19c8]
push 0x49f538
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x4021fd
and dword [ebp - 0x1a20], 0
and dword [ebp - 0x1a4c], 0
mov dword [ebp - 0x1a1c], 1
jmp 0x401f9c
mov eax, dword [ebp - 0x1a1c]
inc eax
mov dword [ebp - 0x1a1c], eax
mov eax, dword [ebp - 0x1a1c]
cmp eax, dword [ebp - 0x19c4]
jge 0x402085
mov eax, dword [ebp - 0x1a1c]
mov eax, dword [ebp + eax*4 - 0x5c]
mov dword [ebp - 0x1a88], eax
xor eax, eax
inc eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1a88]
movsx eax, byte [ecx + eax]
cmp eax, 0x2d
jne 0x402021
xor eax, eax
inc eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1a88]
movsx eax, byte [ecx + eax]
cmp eax, 0x2d
jne 0x401ff7
mov eax, dword [ebp - 0x1a88]
inc eax
mov dword [ebp - 0x1a88], eax
jmp 0x401fd3
mov eax, dword [ebp - 0x1a1c]
push dword [ebp + eax*4 - 0x5c]
push 0x49f540
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
xor eax, eax
inc eax
jmp 0x405b66
cmp dword [ebp - 0x1a20], 0
jne 0x40203c
mov eax, dword [ebp - 0x1a1c]
mov eax, dword [ebp + eax*4 - 0x5c]
mov dword [ebp - 0x1a20], eax
jmp 0x402080
cmp dword [ebp - 0x1a4c], 0
jne 0x402063
mov eax, dword [ebp - 0x1a20]
mov dword [ebp - 0x1a4c], eax
mov eax, dword [ebp - 0x1a1c]
mov eax, dword [ebp + eax*4 - 0x5c]
mov dword [ebp - 0x1a20], eax
jmp 0x402080
push 0x49f554
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
jmp 0x401f8f
cmp dword [ebp - 0x1a20], 0
jne 0x4020ab
push 0x49f574
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
cmp dword [ebp - 0x1a4c], 0
jne 0x4020be
mov dword [ebp - 0x1a4c], 0x49f59c
lea eax, [ebp - 0x1a2c]
push eax
push dword [ebp - 0x1a20]
call fcn.0040d90e
pop ecx
pop ecx
mov dword [ebp - 0x19c0], eax
cmp dword [ebp - 0x19c0], 0
je 0x402111
push dword [ebp - 0x1a20]
push 0x49f5a4
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
push dword [ebp - 0x1a2c]
call fcn.0040c786
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
push dword [ebp - 0x1a4c]
mov eax, dword [ebp + 0x7c]
push dword [eax]
push 0x49f5c0
push dword [ebp - 0x1a2c]
call fcn.004129e5
add esp, 0x10
mov dword [ebp - 0x1ac8], eax
cmp dword [ebp - 0x1ac8], 0
jne 0x402181
push dword [ebp - 0x1a2c]
call fcn.0040dbb4
pop ecx
push eax
push 0x49f5c8
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
push dword [ebp - 0x1a2c]
call fcn.0040c786
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
push 0x64
push dword [ebp - 0x1ac8]
call fcn.00412c0c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], eax
cmp dword [ebp - 0x19c0], 0
jne 0x4021a1
jmp 0x402181
push dword [ebp - 0x1ac8]
call fcn.004131e8
pop ecx
cmp dword [ebp - 0x19c0], 0x65
jne 0x4021bf
and dword [ebp - 0x19c0], 0
jmp 0x4021ec
push dword [ebp - 0x1a2c]
call fcn.0040dbb4
pop ecx
push eax
push 0x49f5d4
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
mov dword [ebp - 0x19c0], 1
push dword [ebp - 0x1a2c]
call fcn.0040c786
pop ecx
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x62
jne 0x402274
cmp dword [ebp - 0x19c8], 3
jl 0x402274
push dword [ebp - 0x19c8]
push 0x49f5e0
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x402274
cmp dword [ebp - 0x19c4], 2
jne 0x402250
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.00401377
pop ecx
mov dword [0x4b6ad0], eax
jmp 0x40226f
push 0x49f5e8
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x62
jne 0x4022b1
cmp dword [ebp - 0x19c8], 3
jl 0x4022b1
push dword [ebp - 0x19c8]
push 0x49f600
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x4022b1
call fcn.004092db
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x63
jne 0x40231e
push dword [ebp - 0x19c8]
push 0x49f60c
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x40231e
cmp dword [ebp - 0x19c4], 2
jne 0x4022fa
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push dword [ebp + 0x7c]
call fcn.004093ab
pop ecx
pop ecx
jmp 0x402319
push 0x49f614
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x64
jne 0x402439
cmp dword [ebp - 0x19c8], 1
jle 0x402439
push dword [ebp - 0x19c8]
push 0x49f62c
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x402439
and dword [ebp - 0x1a8c], 0
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
push 0x658
push dword [ebp + 0x7c]
lea eax, [ebp - 0x6b4]
push eax
call fcn.00483670
add esp, 0xc
mov dword [ebp - 0x684], 1
mov dword [ebp - 0x68c], 1
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x650], 3
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x650], 0xf
push 4
pop eax
shl eax, 1
mov dword [ebp + eax - 0x650], 0x3a
and dword [ebp - 0x69c], 0
lea eax, [ebp - 0x1a8c]
push eax
lea eax, [ebp - 0x6b4]
push eax
push fcn.00401482
push 0x49f638
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040c7a8
add esp, 0x14
cmp dword [ebp - 0x1a8c], 0
je 0x402434
push dword [ebp - 0x1a8c]
push 0x49f650
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
push dword [ebp - 0x1a8c]
call fcn.0040d51d
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x64
jne 0x402620
push dword [ebp - 0x19c8]
push 0x49f65c
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x402620
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
cmp dword [ebp - 0x19c4], 1
je 0x4024b2
cmp dword [ebp - 0x19c4], 2
je 0x4024b2
push 0x49f664
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
push 0x49f684
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
push 0x49f6a0
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
mov eax, dword [ebp + 0x7c]
and dword [eax + 0x2c], 0
push 0
push 0
push 0
push 0x49f6b4
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040c7a8
add esp, 0x14
mov eax, dword [ebp + 0x7c]
and dword [eax + 0x24], 0
cmp dword [ebp - 0x19c4], 1
jne 0x402537
push 0x49f6e0
push dword [ebp + 0x7c]
call fcn.00407a46
pop ecx
pop ecx
push 0x49f768
push dword [ebp + 0x7c]
call fcn.00407a46
pop ecx
pop ecx
push 0
push 0x49f7b0
push dword [ebp + 0x7c]
call fcn.00407b50
add esp, 0xc
jmp 0x402597
mov dword [ebp - 0x1a90], 1
jmp 0x402550
mov eax, dword [ebp - 0x1a90]
inc eax
mov dword [ebp - 0x1a90], eax
mov eax, dword [ebp - 0x1a90]
cmp eax, dword [ebp - 0x19c4]
jge 0x402597
mov eax, dword [ebp - 0x1a90]
mov eax, dword [ebp + eax*4 - 0x5c]
mov dword [0x4b6b08], eax
push 0x49f808
push dword [ebp + 0x7c]
call fcn.00407a46
pop ecx
pop ecx
push 0
push 0x49f878
push dword [ebp + 0x7c]
call fcn.00407b50
add esp, 0xc
and dword [0x4b6b08], 0
jmp 0x402543
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x2c], 0
je 0x4025b9
push 0x49f8f4
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
mov eax, dword [ebp + 0x7c]
and dword [eax + 0x2c], 0
push 0
push 0
push 0
push 0x49f74c
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040c7a8
add esp, 0x14
push 0
push 0
push 0
push 0x49f914
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040c7a8
add esp, 0x14
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x24], 0
je 0x4025fe
mov dword [ebp - 0x1b30], 0x49f924
jmp 0x402608
mov dword [ebp - 0x1b30], 0x49f940
push dword [ebp - 0x1b30]
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x65
jne 0x40268f
push dword [ebp - 0x19c8]
push 0x49f94c
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x40268f
cmp dword [ebp - 0x19c4], 2
jne 0x40266b
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.00401377
pop ecx
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + 4], eax
jmp 0x40268a
push 0x49f954
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x65
jne 0x4026fe
push dword [ebp - 0x19c8]
push 0x49f96c
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x4026fe
cmp dword [ebp - 0x19c4], 2
jne 0x4026da
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.00401377
pop ecx
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + 8], eax
jmp 0x4026f9
push 0x49f970
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x65
jne 0x40276a
push dword [ebp - 0x19c8]
push 0x49f984
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x40276a
cmp dword [ebp - 0x19c4], 1
jle 0x40275b
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004064f9
pop ecx
mov dword [ebp - 0x19c0], eax
cmp dword [ebp - 0x19c0], 0
je 0x40275b
push dword [ebp - 0x19c0]
call fcn.00486d64
mov dword [ebp - 0x19c0], 2
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x65
jne 0x40293d
push dword [ebp - 0x19c8]
push 0x49f98c
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x40293d
cmp dword [ebp - 0x19c4], 2
jl 0x4027bd
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.00401377
pop ecx
mov dword [ebp - 0x1b48], eax
jmp 0x4027c7
mov dword [ebp - 0x1b48], 1
mov eax, dword [ebp - 0x1b48]
mov dword [ebp - 0x1b68], eax
cmp dword [ebp - 0x1b68], 1
jne 0x4028e7
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x398], 0
jne 0x402834
mov eax, dword [ebp + 0x7c]
mov dword [eax + 0x398], 1
mov eax, dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x7c]
mov ecx, dword [ecx + 0x28]
mov dword [eax + 0x39c], ecx
mov eax, dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x7c]
mov ecx, dword [ecx + 0x30]
mov dword [eax + 0x3a0], ecx
push 0x190
mov eax, dword [ebp + 0x7c]
add eax, 0x64
push eax
mov eax, dword [ebp + 0x7c]
add eax, 0x3a4
push eax
call fcn.00483670
add esp, 0xc
mov eax, dword [ebp + 0x7c]
mov dword [eax + 0x28], 8
mov eax, dword [ebp + 0x7c]
mov dword [eax + 0x30], 1
push 0x190
push 0
mov eax, dword [ebp + 0x7c]
add eax, 0x64
push eax
call fcn.00483bf0
add esp, 0xc
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + eax + 0x64], 4
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + eax + 0x64], 0xd
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + eax + 0x64], 4
push 4
pop eax
imul eax, eax, 3
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + eax + 0x64], 4
push 4
pop eax
shl eax, 2
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + eax + 0x64], 4
push 4
pop eax
imul eax, eax, 5
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + eax + 0x64], 0xd
push 4
pop eax
imul eax, eax, 6
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + eax + 0x64], 2
push 4
pop eax
imul eax, eax, 7
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + eax + 0x64], 0xd
jmp 0x402938
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x398], 0
je 0x402938
mov eax, dword [ebp + 0x7c]
and dword [eax + 0x398], 0
mov eax, dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x7c]
mov ecx, dword [ecx + 0x39c]
mov dword [eax + 0x28], ecx
mov eax, dword [ebp + 0x7c]
mov ecx, dword [ebp + 0x7c]
mov ecx, dword [ecx + 0x3a0]
mov dword [eax + 0x30], ecx
push 0x190
mov eax, dword [ebp + 0x7c]
add eax, 0x3a4
push eax
mov eax, dword [ebp + 0x7c]
add eax, 0x64
push eax
call fcn.00483670
add esp, 0xc
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x66
jne 0x402b7b
push dword [ebp - 0x19c8]
push 0x49f994
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x402b7b
and dword [ebp - 0x1a50], 0
and dword [ebp - 0x1b54], 0
cmp dword [ebp - 0x19c4], 1
je 0x4029af
push 0x49f9a0
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
push 0x658
push dword [ebp + 0x7c]
lea eax, [ebp - 0x19bc]
push eax
call fcn.00483670
add esp, 0xc
and dword [ebp - 0x198c], 0
mov dword [ebp - 0x1994], 3
lea eax, [ebp - 0x1a50]
push eax
lea eax, [ebp - 0x19bc]
push eax
push fcn.00401482
push 0x49f9d0
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040c7a8
add esp, 0x14
mov dword [ebp - 0x19c0], eax
cmp dword [ebp - 0x19c0], 0
jne 0x402a76
push 0
lea eax, [ebp - 0x1b50]
push eax
push 0xffffffffffffffff
push 0x49fad8
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040dd78
add esp, 0x14
mov dword [ebp - 0x19c0], eax
push dword [ebp - 0x1b50]
call fcn.0040e54f
pop ecx
cmp eax, 0x64
jne 0x402a57
mov dword [ebp - 0x1b4c], 1
jmp 0x402a5e
and dword [ebp - 0x1b4c], 0
mov eax, dword [ebp - 0x1b4c]
mov dword [ebp - 0x1b54], eax
push dword [ebp - 0x1b50]
call fcn.0040eaca
pop ecx
cmp dword [ebp - 0x1b54], 0
jne 0x402a96
push 0x49fb1c
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
jmp 0x402b76
push 0x49fb3c
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
lea eax, [ebp - 0x1a50]
push eax
lea eax, [ebp - 0x19bc]
push eax
push fcn.00401482
push 0x49fb54
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040c7a8
add esp, 0x14
mov dword [ebp - 0x1994], 5
mov dword [ebp - 0x1984], 0x49fb74
lea eax, [ebp - 0x1a50]
push eax
lea eax, [ebp - 0x19bc]
push eax
push fcn.00407f72
push 0x49f9b4
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.00408d6a
add esp, 0x14
mov dword [ebp - 0x1984], 0x49fb84
lea eax, [ebp - 0x1a50]
push eax
lea eax, [ebp - 0x19bc]
push eax
push fcn.00407f72
push 0x49fb94
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.00408d6a
add esp, 0x14
mov dword [ebp - 0x1984], 0x49fbb0
lea eax, [ebp - 0x1a50]
push eax
lea eax, [ebp - 0x19bc]
push eax
push fcn.00407f72
push 0x49fbc0
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.00408d6a
add esp, 0x14
push 0x49fbdc
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x68
jne 0x402bea
push dword [ebp - 0x19c8]
push 0x49fbf4
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x402bea
cmp dword [ebp - 0x19c4], 2
jne 0x402bc6
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.00401377
pop ecx
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + 0x30], eax
jmp 0x402be5
push 0x49fbfc
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x68
jne 0x402c31
push dword [ebp - 0x19c8]
push 0x49fc14
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x402c31
push 0x4ae030
push 0x49fc1c
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0xc
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x69
jne 0x4035e2
push dword [ebp - 0x19c8]
push 0x49fc20
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x4035e2
and dword [ebp - 0x19dc], 0
cmp dword [ebp - 0x19c4], 3
je 0x402c92
push 0x49fc28
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
jmp 0x405b38
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1b58], eax
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1a94], eax
mov dword [0x4b6ad8], 0
push 0x24
push 0
lea eax, [ebp - 0x1abc]
push eax
call fcn.00483bf0
add esp, 0xc
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
mov eax, dword [ebp + 0x7c]
add eax, 0x3c
push eax
call fcn.004092b1
pop ecx
mov dword [ebp - 0x1a24], eax
cmp dword [ebp - 0x1a24], 0
jne 0x402d13
push 0x49fc44
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
cmp dword [ebp - 0x1a24], 1
jle 0x402d39
push 0x49fcb0
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
mov eax, dword [ebp + 0x7c]
add eax, 0x50
push eax
call fcn.004092b1
pop ecx
mov dword [ebp - 0x1a24], eax
cmp dword [ebp - 0x1a24], 0
jne 0x402d72
push 0x49fc7c
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
cmp dword [ebp - 0x1a24], 2
jne 0x402dc4
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x28], 7
jne 0x402dc4
push 0x49fcf4
mov eax, dword [ebp + 0x7c]
add eax, 0x50
push eax
call fcn.004867d0
pop ecx
pop ecx
test eax, eax
jne 0x402dc4
push 0x49fcf8
mov eax, dword [ebp + 0x7c]
add eax, 0x50
push eax
push 0x14
call fcn.0040d408
add esp, 0xc
mov eax, dword [ebp + 0x7c]
add eax, 0x50
push eax
call fcn.004092b1
pop ecx
mov dword [ebp - 0x1a24], eax
cmp dword [ebp - 0x1a24], 1
jle 0x402dea
push 0x49fcfc
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
mov eax, dword [ebp - 0x1b58]
mov dword [ebp - 0x1abc], eax
mov dword [ebp - 0x1aa8], 1
xor eax, eax
inc eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1abc]
movsx eax, byte [ecx + eax]
cmp eax, 0x7c
jne 0x402e45
push 0x49fd3c
mov eax, dword [ebp - 0x1abc]
inc eax
push eax
call fcn.0048994f
pop ecx
pop ecx
mov dword [ebp - 0x1ab8], eax
mov dword [ebp - 0x1abc], 0x49fd40
mov dword [ebp - 0x1a10], fcn.0048987b
jmp 0x402e67
push 0x49fd48
push dword [ebp - 0x1abc]
call fcn.00488373
pop ecx
pop ecx
mov dword [ebp - 0x1ab8], eax
mov dword [ebp - 0x1a10], fcn.00487d8a
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x28], 9
jne 0x402e7c
mov dword [ebp - 0x1a80], 0x401274
jmp 0x402e86
mov dword [ebp - 0x1a80], 0x4014e6
cmp dword [ebp - 0x1ab8], 0
jne 0x402eb3
push dword [ebp - 0x1b58]
push 0x49fd4c
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
xor eax, eax
inc eax
jmp 0x405b66
xor eax, eax
inc eax
imul eax, eax, 0
mov ecx, dword [ebp + 0x7c]
movsx eax, byte [ecx + eax + 0x3c]
mov dword [ebp - 0x1aa0], eax
xor eax, eax
inc eax
imul eax, eax, 0
mov ecx, dword [ebp + 0x7c]
movsx eax, byte [ecx + eax + 0x50]
mov dword [ebp - 0x1a9c], eax
push dword [ebp - 0x1a94]
push 0x49fd68
call fcn.0040d36f
pop ecx
pop ecx
mov dword [ebp - 0x19d8], eax
cmp dword [ebp - 0x19d8], 0
jne 0x402f26
push 0x49fd7c
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
push dword [ebp - 0x1ab8]
call dword [ebp - 0x1a10]
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
push dword [ebp - 0x19d8]
call fcn.004092b1
pop ecx
mov dword [ebp - 0x1ae0], eax
push 0
lea eax, [ebp - 0x19dc]
push eax
push 0xffffffffffffffff
push dword [ebp - 0x19d8]
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040dd78
add esp, 0x14
mov dword [ebp - 0x19c0], eax
push 0
lea eax, [ebp - 0x1abc]
push eax
call fcn.00406472
pop ecx
pop ecx
cmp dword [ebp - 0x19c0], 0
je 0x40311a
push dword [0x4b6ad4]
call fcn.0040dbb4
pop ecx
push eax
push 0x49fd94
call fcn.004134a8
pop ecx
pop ecx
test eax, eax
jne 0x40311a
push dword [ebp - 0x1a94]
push 0x49fda8
call fcn.0040d36f
pop ecx
pop ecx
mov dword [ebp - 0x1a28], eax
mov byte [ebp - 0x19dd], 0x28
lea eax, [ebp - 0x1abc]
push eax
call dword [ebp - 0x1a80]
pop ecx
test eax, eax
je 0x40300b
push dword [ebp - 0x1ab4]
movsx eax, byte [ebp - 0x19dd]
push eax
push dword [ebp - 0x1a28]
push 0x49fdb8
call fcn.0040d36f
add esp, 0x10
mov dword [ebp - 0x1a28], eax
mov byte [ebp - 0x19dd], 0x2c
mov eax, dword [ebp - 0x1aa4]
cmp eax, dword [ebp - 0x1aa0]
je 0x403009
jmp 0x40300b
jmp 0x402fb9
movsx eax, byte [ebp - 0x19dd]
cmp eax, 0x28
jne 0x403060
push dword [ebp - 0x1a28]
call fcn.0040d51d
pop ecx
push dword [ebp - 0x1ab4]
call fcn.0040d51d
pop ecx
push dword [ebp - 0x1ab8]
call dword [ebp - 0x1a10]
pop ecx
push dword [ebp - 0x1abc]
push 0x49fdcc
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
xor eax, eax
inc eax
jmp 0x405b66
push dword [ebp - 0x1a28]
push 0x49fddc
call fcn.0040d36f
pop ecx
pop ecx
mov dword [ebp - 0x1a28], eax
push 0
push 0
push 0
push dword [ebp - 0x1a28]
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040c7a8
add esp, 0x14
mov dword [ebp - 0x19c0], eax
push dword [ebp - 0x1a28]
call fcn.0040d51d
pop ecx
cmp dword [ebp - 0x19c0], 0
je 0x4030f6
push dword [0x4b6ad4]
call fcn.0040dbb4
pop ecx
push eax
push dword [ebp - 0x1a94]
push 0x49fde4
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0x10
push dword [ebp - 0x1ab4]
call fcn.0040d51d
pop ecx
push dword [ebp - 0x1ab8]
call dword [ebp - 0x1a10]
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
push 0
lea eax, [ebp - 0x19dc]
push eax
push 0xffffffffffffffff
push dword [ebp - 0x19d8]
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040dd78
add esp, 0x14
mov dword [ebp - 0x19c0], eax
push dword [ebp - 0x19d8]
call fcn.0040d51d
pop ecx
cmp dword [ebp - 0x19c0], 0
je 0x40317c
cmp dword [ebp - 0x19dc], 0
je 0x403144
push dword [ebp - 0x19dc]
call fcn.0040eaca
pop ecx
push dword [0x4b6ad4]
call fcn.0040dbb4
pop ecx
push eax
push 0x49fe08
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
push dword [ebp - 0x1ab8]
call dword [ebp - 0x1a10]
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
push dword [ebp - 0x19dc]
call fcn.0040e36a
pop ecx
mov dword [ebp - 0x1a08], eax
push dword [ebp - 0x19dc]
call fcn.0040eaca
pop ecx
and dword [ebp - 0x19dc], 0
cmp dword [ebp - 0x1a08], 0
jne 0x4031b1
xor eax, eax
jmp 0x405b66
mov eax, dword [ebp - 0x1a08]
shl eax, 1
mov ecx, dword [ebp - 0x1ae0]
lea eax, [eax + ecx*2 + 0x14]
push eax
call fcn.0040d47c
pop ecx
mov dword [ebp - 0x19d8], eax
cmp dword [ebp - 0x19d8], 0
jne 0x403203
push 0x49fe14
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
push dword [ebp - 0x1ab8]
call dword [ebp - 0x1a10]
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
push dword [ebp - 0x1a94]
push 0x49fe2c
push dword [ebp - 0x19d8]
mov eax, dword [ebp - 0x1ae0]
add eax, 0x14
push eax
call fcn.0040d408
add esp, 0x10
push dword [ebp - 0x19d8]
call fcn.004092b1
pop ecx
mov dword [ebp - 0x19f0], eax
mov dword [ebp - 0x19d4], 1
jmp 0x403251
mov eax, dword [ebp - 0x19d4]
inc eax
mov dword [ebp - 0x19d4], eax
mov eax, dword [ebp - 0x19d4]
cmp eax, dword [ebp - 0x1a08]
jge 0x403299
mov eax, dword [ebp - 0x19d8]
add eax, dword [ebp - 0x19f0]
mov byte [eax], 0x2c
mov eax, dword [ebp - 0x19f0]
inc eax
mov dword [ebp - 0x19f0], eax
mov eax, dword [ebp - 0x19d8]
add eax, dword [ebp - 0x19f0]
mov byte [eax], 0x3f
mov eax, dword [ebp - 0x19f0]
inc eax
mov dword [ebp - 0x19f0], eax
jmp 0x403244
mov eax, dword [ebp - 0x19d8]
add eax, dword [ebp - 0x19f0]
mov byte [eax], 0x29
mov eax, dword [ebp - 0x19f0]
inc eax
mov dword [ebp - 0x19f0], eax
mov eax, dword [ebp - 0x19d8]
add eax, dword [ebp - 0x19f0]
mov byte [eax], 0
push 0
lea eax, [ebp - 0x19dc]
push eax
push 0xffffffffffffffff
push dword [ebp - 0x19d8]
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040dd78
add esp, 0x14
mov dword [ebp - 0x19c0], eax
push dword [ebp - 0x19d8]
call fcn.0040d51d
pop ecx
cmp dword [ebp - 0x19c0], 0
je 0x40334a
push dword [0x4b6ad4]
call fcn.0040dbb4
pop ecx
push eax
push 0x49fe48
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
cmp dword [ebp - 0x19dc], 0
je 0x403335
push dword [ebp - 0x19dc]
call fcn.0040eaca
pop ecx
push dword [ebp - 0x1ab8]
call dword [ebp - 0x1a10]
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
push dword [0x4b6ad4]
call fcn.0040fcfe
pop ecx
mov dword [ebp - 0x1ae4], eax
cmp dword [ebp - 0x1ae4], 0
je 0x40337e
push 0
push 0
push 0
push 0x49fe54
push dword [0x4b6ad4]
call fcn.0040c7a8
add esp, 0x14
mov eax, dword [ebp - 0x1aa8]
mov dword [ebp - 0x1acc], eax
and dword [ebp - 0x19d4], 0
jmp 0x4033a0
mov eax, dword [ebp - 0x19d4]
inc eax
mov dword [ebp - 0x19d4], eax
mov eax, dword [ebp - 0x19d4]
cmp eax, dword [ebp - 0x1a08]
jge 0x4034c0
lea eax, [ebp - 0x1abc]
push eax
call dword [ebp - 0x1a80]
pop ecx
mov dword [ebp - 0x1a60], eax
cmp dword [ebp - 0x1a60], 0
jne 0x4033dd
cmp dword [ebp - 0x19d4], 0
jne 0x4033dd
jmp 0x4034c0
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x28], 9
jne 0x403411
cmp dword [ebp - 0x1a60], 0
je 0x403403
xor eax, eax
inc eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1a60]
movsx eax, byte [ecx + eax]
test eax, eax
jne 0x403411
cmp dword [ebp - 0x19d4], 0
jne 0x403411
jmp 0x4034c0
push 0xffffffffffffffff
push 0xffffffffffffffff
push dword [ebp - 0x1a60]
mov eax, dword [ebp - 0x19d4]
inc eax
push eax
push dword [ebp - 0x19dc]
call fcn.0040dfd0
add esp, 0x14
mov eax, dword [ebp - 0x1a08]
dec eax
cmp dword [ebp - 0x19d4], eax
jge 0x4034bb
mov eax, dword [ebp - 0x1aa4]
cmp eax, dword [ebp - 0x1aa0]
je 0x4034bb
mov eax, dword [ebp - 0x19d4]
inc eax
push eax
push dword [ebp - 0x1a08]
push dword [ebp - 0x1acc]
push dword [ebp - 0x1abc]
push 0x49fe98
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0x18
mov eax, dword [ebp - 0x19d4]
inc eax
mov dword [ebp - 0x19d4], eax
mov eax, dword [ebp - 0x19d4]
cmp eax, dword [ebp - 0x1a08]
jg 0x4034bb
push dword [ebp - 0x19d4]
push dword [ebp - 0x19dc]
call fcn.0040df9c
pop ecx
pop ecx
mov eax, dword [ebp - 0x19d4]
inc eax
mov dword [ebp - 0x19d4], eax
jmp 0x40348b
jmp 0x403393
mov eax, dword [ebp - 0x1aa4]
cmp eax, dword [ebp - 0x1aa0]
jne 0x403525
lea eax, [ebp - 0x1abc]
push eax
call dword [ebp - 0x1a80]
pop ecx
mov eax, dword [ebp - 0x19d4]
inc eax
mov dword [ebp - 0x19d4], eax
mov eax, dword [ebp - 0x1aa4]
cmp eax, dword [ebp - 0x1aa0]
je 0x4034ce
push dword [ebp - 0x19d4]
push dword [ebp - 0x1a08]
push dword [ebp - 0x1acc]
push dword [ebp - 0x1abc]
push 0x49fe5c
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0x18
mov eax, dword [ebp - 0x19d4]
cmp eax, dword [ebp - 0x1a08]
jl 0x403589
push dword [ebp - 0x19dc]
call fcn.0040e54f
pop ecx
push dword [ebp - 0x19dc]
call fcn.0040eb3a
pop ecx
mov dword [ebp - 0x19c0], eax
cmp dword [ebp - 0x19c0], 0
je 0x403589
push dword [0x4b6ad4]
call fcn.0040dbb4
pop ecx
push eax
push dword [ebp - 0x1acc]
push dword [ebp - 0x1abc]
push 0x49fee0
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0x14
cmp dword [ebp - 0x1aa4], 0xffffffff
jne 0x40337e
push dword [ebp - 0x1ab8]
call dword [ebp - 0x1a10]
pop ecx
push dword [ebp - 0x1ab4]
call fcn.0040d51d
pop ecx
push dword [ebp - 0x19dc]
call fcn.0040eaca
pop ecx
cmp dword [ebp - 0x1ae4], 0
je 0x4035dd
push 0
push 0
push 0
push 0x49fefc
push dword [0x4b6ad4]
call fcn.0040c7a8
add esp, 0x14
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x69
jne 0x403764
push dword [ebp - 0x19c8]
push 0x49ff04
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403764
and dword [ebp - 0x1a54], 0
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
push 0x658
push dword [ebp + 0x7c]
lea eax, [ebp - 0x1364]
push eax
call fcn.00483670
add esp, 0xc
and dword [ebp - 0x1334], 0
mov dword [ebp - 0x133c], 2
cmp dword [ebp - 0x19c4], 1
jne 0x403685
lea eax, [ebp - 0x1a54]
push eax
lea eax, [ebp - 0x1364]
push eax
push fcn.00401482
push 0x49ff18
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040c7a8
add esp, 0x14
mov dword [ebp - 0x19c0], eax
jmp 0x4036fa
cmp dword [ebp - 0x19c4], 2
jne 0x4036d1
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov dword [0x4b6b08], eax
lea eax, [ebp - 0x1a54]
push eax
lea eax, [ebp - 0x1364]
push eax
push fcn.00401482
push 0x49ffe0
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040c7a8
add esp, 0x14
mov dword [ebp - 0x19c0], eax
and dword [0x4b6b08], 0
jmp 0x4036fa
push 0x49ffb4
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x1a54], 0
je 0x403737
push dword [ebp - 0x1a54]
push 0x49ff0c
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
push dword [ebp - 0x1a54]
call fcn.0040d51d
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x40375f
cmp dword [ebp - 0x19c0], 0
je 0x40375f
push 0x4a00a0
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x6c
jne 0x40387e
push dword [ebp - 0x19c8]
push 0x4a00d8
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x40387e
and dword [ebp - 0x1ad0], 0
cmp dword [ebp - 0x19c4], 2
jge 0x4037cf
push 0x4a00e0
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1b84], eax
cmp dword [ebp - 0x19c4], 3
jl 0x4037f9
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1ae8], eax
jmp 0x403800
and dword [ebp - 0x1ae8], 0
mov eax, dword [ebp - 0x1ae8]
mov dword [ebp - 0x1b80], eax
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
lea eax, [ebp - 0x1ad0]
push eax
push dword [ebp - 0x1b80]
push dword [ebp - 0x1b84]
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.004103b1
add esp, 0x10
mov dword [ebp - 0x19c0], eax
cmp dword [ebp - 0x19c0], 0
je 0x403879
push dword [ebp - 0x1ad0]
push 0x49ffd4
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
push dword [ebp - 0x1ad0]
call fcn.0040d51d
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x6c
jne 0x40390f
push dword [ebp - 0x19c8]
push 0x4a0100
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x40390f
cmp dword [ebp - 0x19c4], 2
je 0x4038d6
push 0x4a0104
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x40390a
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1b88], eax
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x648]
call fcn.00406e8e
pop ecx
push dword [ebp - 0x1b88]
call fcn.00406ebc
pop ecx
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + 0x648], eax
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x6d
jne 0x403c83
push dword [ebp - 0x19c8]
push 0x4a011c
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403c83
cmp dword [ebp - 0x19c4], 2
jl 0x40395c
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1aec], eax
jmp 0x403966
mov dword [ebp - 0x1aec], 0x49e559
mov eax, dword [ebp - 0x1aec]
mov dword [ebp - 0x1af0], eax
push dword [ebp - 0x1af0]
call fcn.00486860
pop ecx
mov dword [ebp - 0x19ec], eax
xor eax, eax
inc eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1af0]
movsx eax, byte [ecx + eax]
mov dword [ebp - 0x1a04], eax
cmp dword [ebp - 0x1a04], 0x6c
jne 0x4039d9
cmp dword [ebp - 0x19ec], 2
jle 0x4039d9
push dword [ebp - 0x19ec]
push 0x4a0124
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x4039d9
mov eax, dword [ebp + 0x7c]
and dword [eax + 0x28], 0
jmp 0x403c7e
cmp dword [ebp - 0x1a04], 0x63
jne 0x403a12
push dword [ebp - 0x19ec]
push 0x4a012c
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403a12
mov eax, dword [ebp + 0x7c]
mov dword [eax + 0x28], 1
jmp 0x403c7e
cmp dword [ebp - 0x1a04], 0x6c
jne 0x403a54
cmp dword [ebp - 0x19ec], 2
jle 0x403a54
push dword [ebp - 0x19ec]
push 0x4a0134
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403a54
mov eax, dword [ebp + 0x7c]
mov dword [eax + 0x28], 2
jmp 0x403c7e
cmp dword [ebp - 0x1a04], 0x68
jne 0x403a8d
push dword [ebp - 0x19ec]
push 0x4a013c
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403a8d
mov eax, dword [ebp + 0x7c]
mov dword [eax + 0x28], 4
jmp 0x403c7e
cmp dword [ebp - 0x1a04], 0x74
jne 0x403adc
push dword [ebp - 0x19ec]
push 0x4a0144
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403adc
mov eax, dword [ebp + 0x7c]
mov dword [eax + 0x28], 6
push 0x4a0148
mov eax, dword [ebp + 0x7c]
add eax, 0x3c
push eax
push 0x14
call fcn.0040d408
add esp, 0xc
jmp 0x403c7e
cmp dword [ebp - 0x1a04], 0x63
jne 0x403b41
push dword [ebp - 0x19ec]
push 0x4a014c
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403b41
mov eax, dword [ebp + 0x7c]
mov dword [eax + 0x28], 7
push 0x4a0150
mov eax, dword [ebp + 0x7c]
add eax, 0x3c
push eax
push 0x14
call fcn.0040d408
add esp, 0xc
push 0x4a0154
mov eax, dword [ebp + 0x7c]
add eax, 0x50
push eax
push 0x14
call fcn.0040d408
add esp, 0xc
jmp 0x403c7e
cmp dword [ebp - 0x1a04], 0x74
jne 0x403b90
push dword [ebp - 0x19ec]
push 0x4a0158
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403b90
mov eax, dword [ebp + 0x7c]
mov dword [eax + 0x28], 2
push 0x4a0160
mov eax, dword [ebp + 0x7c]
add eax, 0x3c
push eax
push 0x14
call fcn.0040d408
add esp, 0xc
jmp 0x403c7e
cmp dword [ebp - 0x1a04], 0x69
jne 0x403bfd
push dword [ebp - 0x19ec]
push 0x4a0164
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403bfd
mov eax, dword [ebp + 0x7c]
mov dword [eax + 0x28], 5
cmp dword [ebp - 0x19c4], 3
jl 0x403bde
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1af4], eax
jmp 0x403be8
mov dword [ebp - 0x1af4], 0x4a016c
push dword [ebp - 0x1af4]
push dword [ebp + 0x7c]
call fcn.00407d91
pop ecx
pop ecx
jmp 0x403c7e
cmp dword [ebp - 0x1a04], 0x61
jne 0x403c5f
push dword [ebp - 0x19ec]
push 0x4a0174
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403c5f
mov eax, dword [ebp + 0x7c]
mov dword [eax + 0x28], 9
push 0x4a017c
mov eax, dword [ebp + 0x7c]
add eax, 0x3c
push eax
push 0x14
call fcn.0040d408
add esp, 0xc
push 0x4a0180
mov eax, dword [ebp + 0x7c]
add eax, 0x50
push eax
push 0x14
call fcn.0040d408
add esp, 0xc
jmp 0x403c7e
push 0x4a0190
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x6e
jne 0x403d00
push dword [ebp - 0x19c8]
push 0x4a0184
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403d00
cmp dword [ebp - 0x19c4], 2
jne 0x403cdc
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 0x13
push 0x4a01e0
mov eax, dword [ebp + 0x7c]
add eax, 0x384
push eax
push 0x14
call fcn.0040d408
add esp, 0x14
jmp 0x403cfb
push 0x4a01e8
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x6f
jne 0x403e05
push dword [ebp - 0x19c8]
push 0x4a0204
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403e05
cmp dword [ebp - 0x19c8], 2
jl 0x403e05
mov eax, dword [ebp + 0x7c]
mov eax, dword [eax]
mov dword [ebp - 0x1af8], eax
mov eax, dword [ebp + 0x7c]
mov eax, dword [eax + 0x638]
mov dword [ebp - 0x1b8c], eax
and dword [ebp - 0x1a68], 0
mov eax, dword [ebp + 0x7c]
and dword [eax], 0
cmp dword [ebp - 0x19c4], 2
jl 0x403d9a
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 0x4a020c
call fcn.0040d36f
pop ecx
pop ecx
mov dword [ebp - 0x1a68], eax
mov eax, dword [ebp + 0x7c]
mov ecx, dword [ebp - 0x1a68]
mov dword [eax + 0x638], ecx
push 1
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
mov eax, dword [ebp + 0x7c]
cmp dword [eax], 0
je 0x403dda
push dword [ebp - 0x1af8]
call fcn.0040c786
pop ecx
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x63c]
call fcn.0040d51d
pop ecx
mov eax, dword [ebp + 0x7c]
mov ecx, dword [ebp - 0x1a68]
mov dword [eax + 0x63c], ecx
jmp 0x403e00
push dword [ebp - 0x1a68]
call fcn.0040d51d
pop ecx
mov eax, dword [ebp + 0x7c]
mov ecx, dword [ebp - 0x1af8]
mov dword [eax], ecx
mov eax, dword [ebp + 0x7c]
mov ecx, dword [ebp - 0x1b8c]
mov dword [eax + 0x638], ecx
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x6f
jne 0x404065
push dword [ebp - 0x19c8]
push 0x4a0210
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
je 0x403e58
push dword [ebp - 0x19c8]
push 0x4a0218
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x404065
cmp dword [ebp - 0x19c4], 2
jl 0x403e73
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1afc], eax
jmp 0x403e7d
mov dword [ebp - 0x1afc], 0x4a0220
mov eax, dword [ebp - 0x1afc]
mov dword [ebp - 0x1a14], eax
cmp dword [ebp - 0x19c4], 2
jle 0x403ec6
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
push 0x4a0228
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19c8], 1
jle 0x403f2e
push dword [ebp - 0x19c8]
push 0x4a023c
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x403f2e
cmp dword [ebp - 0x19c4], 2
jge 0x403f22
push 0x4a0244
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
mov eax, dword [ebp + 0x7c]
mov dword [eax + 0x14], 2
jmp 0x403f35
mov eax, dword [ebp + 0x7c]
and dword [eax + 0x14], 0
push dword [ebp + 0x7c]
call fcn.00407219
pop ecx
xor eax, eax
inc eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x1a14]
movsx eax, byte [ecx + eax]
cmp eax, 0x7c
jne 0x403fd8
push 0x4a0258
mov eax, dword [ebp - 0x1a14]
inc eax
push eax
call fcn.0048994f
pop ecx
pop ecx
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + 0x1c], eax
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x1c], 0
jne 0x403fb2
mov eax, dword [ebp - 0x1a14]
inc eax
push eax
push 0x4a025c
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
push 1
call fcn.00487c90
pop ecx
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + 0x1c], eax
mov dword [ebp - 0x19c0], 1
jmp 0x403fd3
push dword [ebp - 0x1a14]
push 0x4a027c
mov eax, dword [ebp + 0x7c]
add eax, 0x534
push eax
push 0x104
call fcn.0040d408
add esp, 0x10
jmp 0x404060
push dword [ebp - 0x1a14]
call fcn.00406ebc
pop ecx
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + 0x1c], eax
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x1c], 0
jne 0x40403f
push 0x4a0280
push dword [ebp - 0x1a14]
call fcn.004867d0
pop ecx
pop ecx
test eax, eax
je 0x404025
push dword [ebp - 0x1a14]
push 0x4a0284
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
push 1
call fcn.00487c90
pop ecx
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + 0x1c], eax
mov dword [ebp - 0x19c0], 1
jmp 0x404060
push dword [ebp - 0x1a14]
push 0x4a02a4
mov eax, dword [ebp + 0x7c]
add eax, 0x534
push eax
push 0x104
call fcn.0040d408
add esp, 0x10
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x70
jne 0x404118
cmp dword [ebp - 0x19c8], 3
jl 0x404118
push dword [ebp - 0x19c8]
push 0x4a02a8
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x404118
mov dword [ebp - 0x1a58], 1
jmp 0x4040b9
mov eax, dword [ebp - 0x1a58]
inc eax
mov dword [ebp - 0x1a58], eax
mov eax, dword [ebp - 0x1a58]
cmp eax, dword [ebp - 0x19c4]
jge 0x404101
cmp dword [ebp - 0x1a58], 1
jle 0x4040e2
push 0x4a02b0
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
mov eax, dword [ebp - 0x1a58]
push dword [ebp + eax*4 - 0x5c]
push 0x4a02b4
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0xc
jmp 0x4040ac
push 0x4a02b8
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x70
jne 0x40418a
push dword [ebp - 0x19c8]
push 0x4a02bc
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x40418a
cmp dword [ebp - 0x19c4], 2
jl 0x404164
push 0x13
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 0x4b6ae0
call fcn.00486970
add esp, 0xc
cmp dword [ebp - 0x19c4], 3
jl 0x404185
push 0x13
push 4
pop eax
shl eax, 1
push dword [ebp + eax - 0x5c]
push 0x4b6af4
call fcn.00486970
add esp, 0xc
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x71
jne 0x4041c3
push dword [ebp - 0x19c8]
push 0x4a02c4
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x4041c3
mov dword [ebp - 0x19c0], 2
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x72
jne 0x4042ac
cmp dword [ebp - 0x19c8], 3
jl 0x4042ac
push dword [ebp - 0x19c8]
push 0x4a02cc
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x4042ac
cmp dword [ebp - 0x19c4], 2
je 0x404234
push 0x4a02d4
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
push 0x4a02e8
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.00488373
pop ecx
pop ecx
mov dword [ebp - 0x1ad4], eax
cmp dword [ebp - 0x1ad4], 0
jne 0x404285
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 0x4a02ec
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
mov dword [ebp - 0x19c0], 1
jmp 0x4042a7
push dword [ebp - 0x1ad4]
push dword [ebp + 0x7c]
call fcn.004072c7
pop ecx
pop ecx
mov dword [ebp - 0x19c0], eax
push dword [ebp - 0x1ad4]
call fcn.00487d8a
pop ecx
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x72
jne 0x404518
cmp dword [ebp - 0x19c8], 3
jl 0x404518
push dword [ebp - 0x19c8]
push 0x4a0308
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x404518
and dword [ebp - 0x1adc], 0
cmp dword [ebp - 0x19c4], 2
jne 0x404317
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1ad8], eax
mov dword [ebp - 0x1b00], 0x4a0310
jmp 0x40436a
cmp dword [ebp - 0x19c4], 3
jne 0x404341
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1ad8], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1b00], eax
jmp 0x40436a
push 0x4a0318
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
lea eax, [ebp - 0x1a6c]
push eax
push dword [ebp - 0x1ad8]
call fcn.0040d90e
pop ecx
pop ecx
mov dword [ebp - 0x19c0], eax
cmp dword [ebp - 0x19c0], 0
je 0x4043bd
push dword [ebp - 0x1ad8]
push 0x4a0334
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
push dword [ebp - 0x1a6c]
call fcn.0040c786
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
push 0x4a0350
push dword [ebp - 0x1a6c]
push dword [ebp - 0x1b00]
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.004129e5
add esp, 0x10
mov dword [ebp - 0x1ac0], eax
cmp dword [ebp - 0x1ac0], 0
jne 0x40442c
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040dbb4
pop ecx
push eax
push 0x4a0358
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
push dword [ebp - 0x1a6c]
call fcn.0040c786
pop ecx
xor eax, eax
inc eax
jmp 0x405b66
push 0x64
push dword [ebp - 0x1ac0]
call fcn.00412c0c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], eax
cmp dword [ebp - 0x19c0], 0
je 0x404453
cmp dword [ebp - 0x19c0], 5
jne 0x40448a
cmp dword [ebp - 0x19c0], 5
jne 0x404488
mov eax, dword [ebp - 0x1adc]
mov dword [ebp - 0x1b90], eax
mov eax, dword [ebp - 0x1adc]
inc eax
mov dword [ebp - 0x1adc], eax
cmp dword [ebp - 0x1b90], 3
jl 0x404480
jmp 0x40448a
push 0x64
call fcn.0040fcc2
pop ecx
jmp 0x40442c
push dword [ebp - 0x1ac0]
call fcn.004131e8
pop ecx
cmp dword [ebp - 0x19c0], 0x65
jne 0x4044a8
and dword [ebp - 0x19c0], 0
jmp 0x404507
cmp dword [ebp - 0x19c0], 5
je 0x4044ba
cmp dword [ebp - 0x19c0], 6
jne 0x4044db
push 0x4a0364
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x404507
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040dbb4
pop ecx
push eax
push 0x4a0384
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
mov dword [ebp - 0x19c0], 1
push dword [ebp - 0x1a6c]
call fcn.0040c786
pop ecx
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x73
jne 0x40459c
push dword [ebp - 0x19c8]
push 0x4a0390
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x40459c
cmp dword [ebp - 0x19c4], 2
jne 0x404578
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.00401377
pop ecx
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + 0x10], eax
push 0x4a039c
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
jmp 0x404597
push 0x4a03d0
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x73
jne 0x40488c
push dword [ebp - 0x19c8]
push 0x4a03ec
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x40488c
and dword [ebp - 0x1a38], 0
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
push 0x658
push dword [ebp + 0x7c]
lea eax, [ebp - 0xd0c]
push eax
call fcn.00483670
add esp, 0xc
and dword [ebp - 0xcdc], 0
mov dword [ebp - 0xce4], 3
cmp dword [ebp - 0x19c4], 2
jne 0x4047ba
and dword [ebp - 0x1a5c], 0
jmp 0x40462c
mov eax, dword [ebp - 0x1a5c]
inc eax
mov dword [ebp - 0x1a5c], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov ecx, dword [ebp - 0x1a5c]
movsx eax, byte [eax + ecx]
test eax, eax
je 0x404674
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov ecx, dword [ebp - 0x1a5c]
movzx eax, byte [eax + ecx]
push eax
call fcn.00486797
pop ecx
push 4
pop ecx
shl ecx, 0
mov ecx, dword [ebp + ecx - 0x5c]
mov edx, dword [ebp - 0x1a5c]
mov byte [ecx + edx], al
jmp 0x40461f
push 0x4a03f4
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004867d0
pop ecx
pop ecx
test eax, eax
jne 0x4046f7
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x1ba0], 0x4a0408
push 4
pop eax
shl eax, 0
and dword [ebp + eax - 0x1ba0], 0
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x1b98], 0x4a0404
push 4
pop eax
shl eax, 0
and dword [ebp + eax - 0x1b98], 0
lea eax, [ebp - 0x1b98]
push eax
lea eax, [ebp - 0x1ba0]
push eax
push 1
lea eax, [ebp - 0xd0c]
push eax
call fcn.00401482
add esp, 0x10
and dword [ebp - 0x19c0], 0
jmp 0x4047b8
push 0x4a0474
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004867d0
pop ecx
pop ecx
test eax, eax
jne 0x404777
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x1bb0], 0x4a0488
push 4
pop eax
shl eax, 0
and dword [ebp + eax - 0x1bb0], 0
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x1ba8], 0x4a04fc
push 4
pop eax
shl eax, 0
and dword [ebp + eax - 0x1ba8], 0
lea eax, [ebp - 0x1ba8]
push eax
lea eax, [ebp - 0x1bb0]
push eax
push 1
lea eax, [ebp - 0xd0c]
push eax
call fcn.00401482
add esp, 0x10
and dword [ebp - 0x19c0], 0
jmp 0x4047b8
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov dword [0x4b6b08], eax
lea eax, [ebp - 0x1a38]
push eax
lea eax, [ebp - 0xd0c]
push eax
push fcn.00401482
push 0x4a0500
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040c7a8
add esp, 0x14
mov dword [ebp - 0x19c0], eax
and dword [0x4b6b08], 0
jmp 0x404819
cmp dword [ebp - 0x19c4], 1
jne 0x4047f0
lea eax, [ebp - 0x1a38]
push eax
lea eax, [ebp - 0xd0c]
push eax
push fcn.00401482
push 0x4a0640
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040c7a8
add esp, 0x14
mov dword [ebp - 0x19c0], eax
jmp 0x404819
push 0x4a0614
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x1a38], 0
je 0x404856
push dword [ebp - 0x1a38]
push 0x4a0634
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
push dword [ebp - 0x1a38]
call fcn.0040d51d
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x404887
cmp dword [ebp - 0x19c0], 0
je 0x404880
push 0x4a0748
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x404887
and dword [ebp - 0x19c0], 0
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x73
jne 0x404949
push dword [ebp - 0x19c8]
push 0x4a076c
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x404949
cmp dword [ebp - 0x19c4], 2
jl 0x4048d0
cmp dword [ebp - 0x19c4], 3
jle 0x4048ef
push 0x4a0778
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
cmp dword [ebp - 0x19c4], 2
jl 0x40491a
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 0x13
push 0x4a0798
mov eax, dword [ebp + 0x7c]
add eax, 0x3c
push eax
push 0x14
call fcn.0040d408
add esp, 0x14
cmp dword [ebp - 0x19c4], 3
jl 0x404944
push 4
pop eax
shl eax, 1
push dword [ebp + eax - 0x5c]
push 0x13
push 0x4a07a0
mov eax, dword [ebp + 0x7c]
add eax, 0x50
push eax
push 0x14
call fcn.0040d408
add esp, 0x14
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x73
jne 0x404af2
push dword [ebp - 0x19c8]
push 0x4a07a8
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
je 0x40499c
push dword [ebp - 0x19c8]
push 0x4a07b0
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x404af2
cmp dword [ebp - 0x19c4], 2
jge 0x4049ce
push 0x4a07b8
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1b5c], eax
push 0x20
push dword [ebp - 0x1b5c]
call fcn.00483d50
pop ecx
pop ecx
test eax, eax
jne 0x4049fd
mov dword [ebp - 0x1b04], 0x4a07d0
jmp 0x404a07
mov dword [ebp - 0x1b04], 0x4a07d4
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push dword [ebp - 0x1b04]
call fcn.0040d36f
pop ecx
pop ecx
mov dword [ebp - 0x1a70], eax
mov dword [ebp - 0x1a3c], 2
jmp 0x404a3d
mov eax, dword [ebp - 0x1a3c]
inc eax
mov dword [ebp - 0x1a3c], eax
mov eax, dword [ebp - 0x1a3c]
cmp eax, dword [ebp - 0x19c4]
jge 0x404aaa
mov eax, dword [ebp - 0x1a3c]
mov eax, dword [ebp + eax*4 - 0x5c]
mov dword [ebp - 0x1b60], eax
push 0x20
push dword [ebp - 0x1b60]
call fcn.00483d50
pop ecx
pop ecx
test eax, eax
jne 0x404a7a
mov dword [ebp - 0x1b08], 0x4a07dc
jmp 0x404a84
mov dword [ebp - 0x1b08], 0x4a07e4
mov eax, dword [ebp - 0x1a3c]
push dword [ebp + eax*4 - 0x5c]
push dword [ebp - 0x1a70]
push dword [ebp - 0x1b08]
call fcn.0040d36f
add esp, 0xc
mov dword [ebp - 0x1a70], eax
jmp 0x404a30
push dword [ebp - 0x1a70]
call fcn.00487bbd
pop ecx
mov dword [ebp - 0x1b0c], eax
push dword [ebp - 0x1a70]
call fcn.0040d51d
pop ecx
cmp dword [ebp - 0x1b0c], 0
je 0x404aed
push dword [ebp - 0x1b0c]
push 0x4a07ec
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x73
jne 0x404e36
push dword [ebp - 0x19c8]
push 0x4a0808
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x404e36
cmp dword [ebp - 0x19c4], 1
je 0x404b56
push 0x4a0810
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 4], 0
je 0x404b6b
mov dword [ebp - 0x1b10], 0x4a0820
jmp 0x404b75
mov dword [ebp - 0x1b10], 0x4a0824
push dword [ebp - 0x1b10]
push 0x4a0828
push 0x4a0830
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x10
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 8], 0
je 0x404ba8
mov dword [ebp - 0x1b14], 0x4a0840
jmp 0x404bb2
mov dword [ebp - 0x1b14], 0x4a0844
push dword [ebp - 0x1b14]
push 0x4a0848
push 0x4a084c
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x10
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x398], 0
je 0x404be8
mov dword [ebp - 0x1b18], 0x4a085c
jmp 0x404bf2
mov dword [ebp - 0x1b18], 0x4a0860
push dword [ebp - 0x1b18]
push 0x4a0864
push 0x4a086c
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x10
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x30], 0
je 0x404c25
mov dword [ebp - 0x1b1c], 0x4a0878
jmp 0x404c2f
mov dword [ebp - 0x1b1c], 0x4a087c
push dword [ebp - 0x1b1c]
push 0x4a0880
push 0x4a0888
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x10
mov eax, dword [ebp + 0x7c]
mov eax, dword [eax + 0x28]
push dword [eax*4 + 0x4ae004]
push 0x4a0898
push 0x4a08a0
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x10
push 0x4a08b0
push 0x4a08bc
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0xc
mov eax, dword [ebp + 0x7c]
add eax, 0x384
push eax
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.00406c15
pop ecx
pop ecx
push 0x4a08c8
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
mov eax, dword [ebp + 0x7c]
add eax, 0x534
push eax
call fcn.004092b1
pop ecx
test eax, eax
je 0x404cd5
mov eax, dword [ebp + 0x7c]
add eax, 0x534
mov dword [ebp - 0x1b20], eax
jmp 0x404cdf
mov dword [ebp - 0x1b20], 0x4a08cc
push dword [ebp - 0x1b20]
push 0x4a08d4
push 0x4a08dc
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x10
push 0x4a08ec
push 0x4a08fc
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0xc
mov eax, dword [ebp + 0x7c]
add eax, 0x3c
push eax
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.00406c15
pop ecx
pop ecx
push 0x4a0908
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
push 0x4a090c
push 0x4a091c
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0xc
mov eax, dword [ebp + 0x7c]
add eax, 0x50
push eax
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.00406c15
pop ecx
pop ecx
push 0x4a0928
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0xc], 0
je 0x404d8e
mov dword [ebp - 0x1b24], 0x4a092c
jmp 0x404d98
mov dword [ebp - 0x1b24], 0x4a0930
push dword [ebp - 0x1b24]
push 0x4a0934
push 0x4a093c
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x10
push 0x4a094c
push 0x4a0954
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0xc
and dword [ebp - 0x1a40], 0
jmp 0x404de4
mov eax, dword [ebp - 0x1a40]
inc eax
mov dword [ebp - 0x1a40], eax
cmp dword [ebp - 0x1a40], 0x64
jge 0x404e1f
mov eax, dword [ebp - 0x1a40]
mov ecx, dword [ebp + 0x7c]
cmp dword [ecx + eax*4 + 0x64], 0
je 0x404e1f
mov eax, dword [ebp - 0x1a40]
mov ecx, dword [ebp + 0x7c]
push dword [ecx + eax*4 + 0x64]
push 0x4a0960
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0xc
jmp 0x404dd7
push 0x4a0964
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x73
jne 0x404ea5
push dword [ebp - 0x19c8]
push 0x4a0968
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x404ea5
cmp dword [ebp - 0x19c4], 2
jne 0x404e81
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.00401377
pop ecx
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + 0xc], eax
jmp 0x404ea0
push 0x4a0970
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x74
jne 0x405388
cmp dword [ebp - 0x19c8], 1
jle 0x405388
push dword [ebp - 0x19c8]
push 0x4a0988
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x405388
and dword [ebp - 0x1a00], 0
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
push 0
lea eax, [ebp - 0x1a0c]
push eax
push 0xffffffffffffffff
push 0x4a0990
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040dd78
add esp, 0x14
mov dword [ebp - 0x19c0], eax
cmp dword [ebp - 0x19c0], 0
je 0x404f2e
mov eax, dword [ebp - 0x19c0]
jmp 0x405b66
push 0x4a09a8
call fcn.0040d36f
pop ecx
mov dword [ebp - 0x1a00], eax
push dword [ebp - 0x1a0c]
call fcn.0040e54f
pop ecx
cmp eax, 0x64
jne 0x404fe4
push 1
push dword [ebp - 0x1a0c]
call fcn.0040e8ac
pop ecx
pop ecx
mov dword [ebp - 0x1a44], eax
cmp dword [ebp - 0x1a44], 0
je 0x404f88
push 0x4a0a1c
push dword [ebp - 0x1a44]
call fcn.004867d0
pop ecx
pop ecx
test eax, eax
jne 0x404f8a
jmp 0x404f3f
push 0x4a0a24
push dword [ebp - 0x1a44]
call fcn.004867d0
pop ecx
pop ecx
test eax, eax
jne 0x404fba
push dword [ebp - 0x1a00]
push 0x4a0a40
call fcn.0040d36f
pop ecx
pop ecx
mov dword [ebp - 0x1a00], eax
jmp 0x404fdf
push dword [ebp - 0x1a44]
push dword [ebp - 0x1a44]
push dword [ebp - 0x1a00]
push 0x4a0ad0
call fcn.0040d36f
add esp, 0x10
mov dword [ebp - 0x1a00], eax
jmp 0x404f3f
push dword [ebp - 0x1a0c]
call fcn.0040eaca
pop ecx
push dword [ebp - 0x1a00]
push 0x4a0a2c
call fcn.0040d36f
pop ecx
pop ecx
mov dword [ebp - 0x1a00], eax
push 0
lea eax, [ebp - 0x1a0c]
push eax
push 0xffffffffffffffff
push dword [ebp - 0x1a00]
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040dd78
add esp, 0x14
mov dword [ebp - 0x19c0], eax
push dword [ebp - 0x1a00]
call fcn.0040d51d
pop ecx
cmp dword [ebp - 0x19c0], 0
je 0x40504c
mov eax, dword [ebp - 0x19c0]
jmp 0x405b66
and dword [ebp - 0x1a74], 0
mov eax, dword [ebp - 0x1a74]
mov dword [ebp - 0x19f4], eax
and dword [ebp - 0x19fc], 0
cmp dword [ebp - 0x19c4], 1
jle 0x40508f
push 0xffffffffffffffff
push 0xffffffffffffffff
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 1
push dword [ebp - 0x1a0c]
call fcn.0040dfd0
add esp, 0x14
jmp 0x4050a8
push 0
push 0xffffffffffffffff
push 0x4a0a3c
push 1
push dword [ebp - 0x1a0c]
call fcn.0040dfd0
add esp, 0x14
push dword [ebp - 0x1a0c]
call fcn.0040e54f
pop ecx
cmp eax, 0x64
jne 0x40517f
mov eax, dword [ebp - 0x19f4]
cmp eax, dword [ebp - 0x1a74]
jl 0x405130
mov eax, dword [ebp - 0x1a74]
lea eax, [eax + eax + 0xa]
mov dword [ebp - 0x1b28], eax
mov eax, dword [ebp - 0x1b28]
shl eax, 2
push eax
push dword [ebp - 0x19fc]
call fcn.0040d4cd
pop ecx
pop ecx
mov dword [ebp - 0x1b2c], eax
cmp dword [ebp - 0x1b2c], 0
jne 0x405118
push 0x4a0b5c
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
jmp 0x40517f
mov eax, dword [ebp - 0x1b28]
mov dword [ebp - 0x1a74], eax
mov eax, dword [ebp - 0x1b2c]
mov dword [ebp - 0x19fc], eax
push 0
push dword [ebp - 0x1a0c]
call fcn.0040e8ac
pop ecx
pop ecx
push eax
push 0x4a0b74
call fcn.0040d36f
pop ecx
pop ecx
mov ecx, dword [ebp - 0x19f4]
mov edx, dword [ebp - 0x19fc]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp - 0x19f4]
mov ecx, dword [ebp - 0x19fc]
cmp dword [ecx + eax*4], 0
je 0x40517a
mov eax, dword [ebp - 0x19f4]
inc eax
mov dword [ebp - 0x19f4], eax
jmp 0x4050a8
push dword [ebp - 0x1a0c]
call fcn.0040eaca
pop ecx
cmp dword [ebp - 0x19f4], 0
jle 0x40533c
and dword [ebp - 0x1a7c], 0
and dword [ebp - 0x19f8], 0
jmp 0x4051b5
mov eax, dword [ebp - 0x19f8]
inc eax
mov dword [ebp - 0x19f8], eax
mov eax, dword [ebp - 0x19f8]
cmp eax, dword [ebp - 0x19f4]
jge 0x4051fa
mov eax, dword [ebp - 0x19f8]
mov ecx, dword [ebp - 0x19fc]
push dword [ecx + eax*4]
call fcn.004092b1
pop ecx
mov dword [ebp - 0x1b44], eax
mov eax, dword [ebp - 0x1b44]
cmp eax, dword [ebp - 0x1a7c]
jle 0x4051f8
mov eax, dword [ebp - 0x1b44]
mov dword [ebp - 0x1a7c], eax
jmp 0x4051a8
mov ecx, dword [ebp - 0x1a7c]
inc ecx
inc ecx
push 0x50
pop eax
cdq
idiv ecx
mov dword [ebp - 0x1a78], eax
cmp dword [ebp - 0x1a78], 1
jge 0x405221
mov dword [ebp - 0x1a78], 1
mov eax, dword [ebp - 0x1a78]
mov ecx, dword [ebp - 0x19f4]
lea eax, [ecx + eax - 1]
cdq
idiv dword [ebp - 0x1a78]
mov dword [ebp - 0x1ac4], eax
and dword [ebp - 0x19f8], 0
jmp 0x405254
mov eax, dword [ebp - 0x19f8]
inc eax
mov dword [ebp - 0x19f8], eax
mov eax, dword [ebp - 0x19f8]
cmp eax, dword [ebp - 0x1ac4]
jge 0x40533c
mov eax, dword [ebp - 0x19f8]
mov dword [ebp - 0x1a30], eax
jmp 0x405286
mov eax, dword [ebp - 0x1a30]
add eax, dword [ebp - 0x1ac4]
mov dword [ebp - 0x1a30], eax
mov eax, dword [ebp - 0x1a30]
cmp eax, dword [ebp - 0x19f4]
jge 0x405325
mov eax, dword [ebp - 0x1a30]
cmp eax, dword [ebp - 0x1ac4]
jge 0x4052b2
mov dword [ebp - 0x1b34], 0x49e55a
jmp 0x4052bc
mov dword [ebp - 0x1b34], 0x4a0b78
mov eax, dword [ebp - 0x1b34]
mov dword [ebp - 0x1b64], eax
mov eax, dword [ebp - 0x1a30]
mov ecx, dword [ebp - 0x19fc]
cmp dword [ecx + eax*4], 0
je 0x4052f1
mov eax, dword [ebp - 0x1a30]
mov ecx, dword [ebp - 0x19fc]
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0x1b38], eax
jmp 0x4052fb
mov dword [ebp - 0x1b38], 0x49e55b
push dword [ebp - 0x1b38]
push dword [ebp - 0x1a7c]
push dword [ebp - 0x1b64]
push 0x4a0b7c
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x14
jmp 0x405274
push 0x4a0b84
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
pop ecx
pop ecx
jmp 0x405247
and dword [ebp - 0x1a98], 0
jmp 0x405352
mov eax, dword [ebp - 0x1a98]
inc eax
mov dword [ebp - 0x1a98], eax
mov eax, dword [ebp - 0x1a98]
cmp eax, dword [ebp - 0x19f4]
jge 0x405377
mov eax, dword [ebp - 0x1a98]
mov ecx, dword [ebp - 0x19fc]
push dword [ecx + eax*4]
call fcn.0040d51d
pop ecx
jmp 0x405345
push dword [ebp - 0x19fc]
call fcn.0040d51d
pop ecx
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x74
jne 0x40576a
cmp dword [ebp - 0x19c8], 8
jl 0x40576a
push dword [ebp - 0x19c8]
push 0x4a0b88
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x40576a
cmp dword [ebp - 0x19c4], 2
jl 0x40576a
or dword [ebp - 0x19e4], 0xffffffff
and dword [ebp - 0x19e8], 0
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004092b1
pop ecx
mov dword [ebp - 0x1b7c], eax
and dword [ebp - 0x1a48], 0
jmp 0x40541a
mov eax, dword [ebp - 0x1a48]
inc eax
mov dword [ebp - 0x1a48], eax
cmp dword [ebp - 0x1a48], 0xe
jge 0x405498
push dword [ebp - 0x1b7c]
mov eax, dword [ebp - 0x1a48]
push dword [eax*8 + 0x4a1ab8]
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x405493
cmp dword [ebp - 0x19e4], 0
jge 0x40546a
mov eax, dword [ebp - 0x1a48]
mov eax, dword [eax*8 + 0x4a1abc]
mov dword [ebp - 0x19e4], eax
jmp 0x405493
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 0x4a0b94
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
or dword [ebp - 0x19e4], 0xffffffff
jmp 0x405498
jmp 0x40540d
cmp dword [ebp - 0x19e4], 0
jge 0x4054b7
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004064f9
pop ecx
mov dword [ebp - 0x19e4], eax
cmp dword [ebp - 0x19e4], 5
jl 0x4054c9
cmp dword [ebp - 0x19e4], 0x18
jle 0x4054ee
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 0x4a0bb4
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
jmp 0x405765
mov eax, dword [ebp - 0x19e4]
mov dword [ebp - 0x1a18], eax
cmp dword [ebp - 0x1a18], 0xd
jg 0x40553c
cmp dword [ebp - 0x1a18], 0xc
jge 0x4056cb
cmp dword [ebp - 0x1a18], 5
jl 0x405745
cmp dword [ebp - 0x1a18], 7
jle 0x4055ed
cmp dword [ebp - 0x1a18], 0xb
je 0x40564e
jmp 0x405745
cmp dword [ebp - 0x1a18], 0xe
jl 0x405745
cmp dword [ebp - 0x1a18], 0xf
jle 0x405564
cmp dword [ebp - 0x1a18], 0x16
je 0x4055ed
jmp 0x405745
cmp dword [ebp - 0x19c4], 3
jne 0x4055c8
push 0
push 0
push 4
pop eax
shl eax, 1
push dword [ebp + eax - 0x5c]
call fcn.00487744
add esp, 0xc
mov dword [ebp - 0x1b6c], eax
push dword [ebp - 0x1b6c]
mov eax, dword [ebp + 0x7c]
push dword [eax]
push dword [ebp - 0x19e4]
call fcn.00411f09
add esp, 0xc
mov dword [ebp - 0x19e8], eax
push dword [ebp - 0x19e8]
push dword [ebp - 0x19e8]
push 0x4a0bd8
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x10
jmp 0x4055e8
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 0x4a0be8
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
jmp 0x405765
cmp dword [ebp - 0x19c4], 2
jne 0x405629
push dword [ebp - 0x19e4]
call fcn.00411f09
pop ecx
mov dword [ebp - 0x19e8], eax
push dword [ebp - 0x19e8]
push dword [ebp - 0x19e8]
push 0x4a0c18
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x10
jmp 0x405649
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 0x4a0c28
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
jmp 0x405765
cmp dword [ebp - 0x19c4], 3
jne 0x4056a6
push 4
pop eax
shl eax, 1
push dword [ebp + eax - 0x5c]
call fcn.004064f9
pop ecx
mov dword [ebp - 0x1b70], eax
push dword [ebp - 0x1b70]
push dword [ebp - 0x19e4]
call fcn.00411f09
pop ecx
pop ecx
mov dword [ebp - 0x19e8], eax
push dword [ebp - 0x19e8]
push dword [ebp - 0x19e8]
push 0x4a0c50
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x10
jmp 0x4056c6
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 0x4a0c60
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
jmp 0x405765
cmp dword [ebp - 0x19c4], 3
jne 0x405723
push 4
pop eax
shl eax, 1
push dword [ebp + eax - 0x5c]
call fcn.00401377
pop ecx
mov dword [ebp - 0x1b74], eax
push dword [ebp - 0x1b74]
push dword [ebp - 0x19e4]
call fcn.00411f09
pop ecx
pop ecx
mov dword [ebp - 0x19e8], eax
push dword [ebp - 0x19e8]
push dword [ebp - 0x19e8]
push 0x4a0c98
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x10
jmp 0x405743
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 0x4a0ca8
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
jmp 0x405765
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
push 0x4a0cd8
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x74
jne 0x4057e8
cmp dword [ebp - 0x19c8], 4
jle 0x4057e8
push dword [ebp - 0x19c8]
push 0x4a0d0c
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x4057e8
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
cmp dword [ebp - 0x19c4], 2
jl 0x4057ca
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004064f9
pop ecx
mov dword [ebp - 0x1b3c], eax
jmp 0x4057d1
and dword [ebp - 0x1b3c], 0
push dword [ebp - 0x1b3c]
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040d124
pop ecx
pop ecx
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x74
jne 0x405895
cmp dword [ebp - 0x19c8], 5
jl 0x405895
push dword [ebp - 0x19c8]
push 0x4a0d14
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x405895
cmp dword [ebp - 0x19c4], 2
jne 0x405871
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.00401377
pop ecx
mov dword [0x4b6aac], eax
cmp dword [0x4b6aac], 0
je 0x40586f
call fcn.004063af
test eax, eax
jne 0x40586f
push 0x4a0d1c
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
and dword [0x4b6aac], 0
jmp 0x405890
push 0x4a0d48
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x74
jne 0x405960
push dword [ebp - 0x19c8]
push 0x4a0d60
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x405960
push 0
push dword [ebp + 0x7c]
call fcn.00406b01
pop ecx
pop ecx
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x20]
call fcn.00406e8e
pop ecx
cmp dword [ebp - 0x19c4], 2
je 0x405911
push 0x4a0d68
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
pop ecx
pop ecx
mov dword [ebp - 0x19c0], 1
jmp 0x405b38
push 4
pop eax
shl eax, 0
push dword [ebp + eax - 0x5c]
call fcn.00406ebc
pop ecx
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + 0x20], eax
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x20], 0
jne 0x405943
push 0
push 0
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040d81d
add esp, 0xc
jmp 0x40595b
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x20]
push 0x40921f
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.0040d81d
add esp, 0xc
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x76
jne 0x4059ae
push dword [ebp - 0x19c8]
push 0x4a0d80
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x4059ae
call fcn.0040c6c5
push eax
call fcn.0040c6bb
push eax
push 0x4a0d88
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0x10
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x76
jne 0x405a6f
push dword [ebp - 0x19c8]
push 0x4a0d98
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x405a6f
cmp dword [ebp - 0x19c4], 2
jne 0x4059fb
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x5c]
mov dword [ebp - 0x1b40], eax
jmp 0x405a05
mov dword [ebp - 0x1b40], 0x4a0da0
mov eax, dword [ebp - 0x1b40]
mov dword [ebp - 0x1b78], eax
and dword [ebp - 0x1a84], 0
mov eax, dword [ebp + 0x7c]
cmp dword [eax], 0
je 0x405a6a
lea eax, [ebp - 0x1a84]
push eax
push 0xc
push dword [ebp - 0x1b78]
mov eax, dword [ebp + 0x7c]
push dword [eax]
call fcn.00411e66
add esp, 0x10
cmp dword [ebp - 0x1a84], 0
je 0x405a6a
push dword [ebp - 0x1a84]
push 0x4a0da8
mov eax, dword [ebp + 0x7c]
push dword [eax + 0x1c]
call fcn.0040aa3c
add esp, 0xc
push dword [ebp - 0x1a84]
call fcn.0040d51d
pop ecx
jmp 0x405b38
cmp dword [ebp - 0x19cc], 0x77
jne 0x405b0e
push dword [ebp - 0x19c8]
push 0x4a0dac
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
call fcn.004868f0
add esp, 0xc
test eax, eax
jne 0x405b0e
cmp dword [ebp - 0x19c4], 0x32
jle 0x405abd
push 0xecf
push 0x4a0db8
push 0x4a0e20
call fcn.0048ca87
add esp, 0xc
mov dword [ebp - 0x1a34], 1
jmp 0x405ad6
mov eax, dword [ebp - 0x1a34]
inc eax
mov dword [ebp - 0x1a34], eax
mov eax, dword [ebp - 0x1a34]
cmp eax, dword [ebp - 0x19c4]
jge 0x405b0c
cmp dword [ebp - 0x1a34], 0x64
jge 0x405b0c
mov eax, dword [ebp - 0x1a34]
push dword [ebp + eax*4 - 0x5c]
call fcn.004064f9
pop ecx
mov ecx, dword [ebp - 0x1a34]
mov edx, dword [ebp + 0x7c]
mov dword [edx + ecx*4 + 0x60], eax
jmp 0x405ac9
jmp 0x405b38
push 4
pop eax
imul eax, eax, 0
push dword [ebp + eax - 0x5c]
push 0x4a0e50
push 2
call fcn.00487c90
pop ecx
push eax
call fcn.0040aa3c
add esp, 0xc
mov dword [ebp - 0x19c0], 1
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x14], 0
je 0x405b60
mov eax, dword [ebp + 0x7c]
mov eax, dword [eax + 0x14]
dec eax
mov ecx, dword [ebp + 0x7c]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp + 0x7c]
cmp dword [eax + 0x14], 0
jne 0x405b60
push dword [ebp + 0x7c]
call fcn.00407219
pop ecx
mov eax, dword [ebp - 0x19c0]
mov ecx, dword [ebp + 0x6c]
xor ecx, ebp
call fcn.00481163
add ebp, 0x70
leave
ret