Function at 0x46ad10
Capabilities:
Encrypt data using speck

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a6496
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, 0x14a4
call fcn.004a2460
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
movzx eax, byte [ebp + 0x10]
test eax, eax
je 0x46adf3
lea eax, [ebp + 0x1c]
mov dword [ebp - 0xab0], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0xa84], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xa8c], eax
mov eax, dword [ebp - 0xab0]
movzx eax, byte [eax]
test eax, eax
je 0x46ade1
mov eax, dword [ebp - 0xa84]
mov dword [ebp - 0xa94], eax
mov eax, dword [ebp - 0xa8c]
mov dword [ebp - 0xa9c], eax
mov eax, dword [ebp - 0xa94]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0xa9c]
mov dword [ebp - 0xaa4], eax
mov eax, dword [ebp - 0x14c]
mov dword [eax], 0
jmp 0x46adbc
mov eax, dword [ebp - 0x14c]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x14c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x14c]
cmp dword [eax], 3
jge 0x46addf
mov eax, dword [ebp - 0x14c]
push dword [eax]
mov ecx, dword [ebp - 0xaa4]
call fcn.00401332
and dword [eax], 0
jmp 0x46adab
jmp 0x46adee
push 0
push 0x123f
call dword [0xab62c8]
jmp 0x473b4b
mov eax, dword [ebp + 0x2c]
mov dword [ebp - 0xcb8], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0xa64], eax
mov eax, dword [ebp + 0x28]
mov dword [ebp - 0xca8], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0xcb0], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0xca0], eax
lea eax, [ebp + 0x18]
mov dword [ebp - 0xaac], eax
mov eax, dword [ebp - 0xaac]
movzx eax, byte [eax]
test eax, eax
je 0x473b0f
mov eax, dword [ebp - 0xca0]
mov dword [ebp - 0xa00], eax
mov eax, dword [ebp - 0xca8]
mov dword [ebp - 0xabc], eax
mov eax, dword [ebp - 0xcb0]
mov dword [ebp - 0x8e8], eax
mov eax, dword [ebp - 0xcb8]
mov dword [ebp - 0x480], eax
mov dword [ebp - 0x6a4], 0x10bd
mov dword [ebp - 0xcc0], 0xaa4a1c
cmp dword [ebp - 0x6a4], 0x117f
jle 0x46af3b
and dword [ebp - 0x22c], 0
jmp 0x46aea4
mov eax, dword [ebp - 0x22c]
inc eax
mov dword [ebp - 0x22c], eax
cmp dword [ebp - 0x22c], 0x3783
jge 0x46af3b
and dword [ebp - 0x1b0], 0
jmp 0x46aeca
mov eax, dword [ebp - 0x1b0]
inc eax
mov dword [ebp - 0x1b0], eax
cmp dword [ebp - 0x1b0], 0x18b
jge 0x46af36
and dword [ebp - 0x3c8], 0
jmp 0x46aeec
mov eax, dword [ebp - 0x3c8]
inc eax
mov dword [ebp - 0x3c8], eax
cmp dword [ebp - 0x3c8], 0x1626
jge 0x46af34
mov eax, dword [ebp - 0x22c]
cdq
idiv dword [ebp - 0x1b0]
mov ecx, dword [ebp - 0x3c8]
sar edx, cl
mov eax, edx
cdq
mov dword [ebp - 0xab8], eax
mov dword [ebp - 0xab4], edx
push dword [ebp - 0xab4]
push dword [ebp - 0xab8]
mov ecx, 0xab36e8
call fcn.0041b4f7
jmp 0x46aedf
jmp 0x46aebd
jmp 0x46ae97
and dword [ebp - 4], 0
cmp dword [ebp - 0x6a4], 0xdf6
jge 0x46af5d
push dword [ebp - 0xcc0]
push 0xab36e8
call fcn.0041cf47
pop ecx
pop ecx
jmp 0x46af79
or dword [ebp - 4], 0xffffffff
jmp 0x46af83
mov dword [ebp - 0x74], 0xf30cc2fd
mov dword [ebp - 0x1c8], 0x9f7c8b16
mov dword [ebp - 0x928], 0xa8551b32
mov dword [ebp - 0x1184], 0
mov dword [ebp - 0x428], 0xffff
mov dword [ebp - 0x900], 0x4d15
mov dword [ebp - 0xcc8], 0xaa4a38
cmp dword [ebp - 0x900], 0x4f44
jle 0x46b09e
and dword [ebp - 0x1c0], 0
jmp 0x46afec
mov eax, dword [ebp - 0x1c0]
inc eax
mov dword [ebp - 0x1c0], eax
cmp dword [ebp - 0x1c0], 0x6e19
jge 0x46b09e
and dword [ebp - 0x1b8], 0
jmp 0x46b012
mov eax, dword [ebp - 0x1b8]
inc eax
mov dword [ebp - 0x1b8], eax
cmp dword [ebp - 0x1b8], 0xf23
jge 0x46b099
and dword [ebp - 0x2e8], 0
jmp 0x46b034
mov eax, dword [ebp - 0x2e8]
inc eax
mov dword [ebp - 0x2e8], eax
cmp dword [ebp - 0x2e8], 0x7ff5
jge 0x46b094
mov eax, dword [ebp - 0x1b8]
imul eax, dword [ebp - 0x2e8]
or eax, dword [ebp - 0x1c0]
cdq
mov dword [ebp - 0xac4], eax
mov dword [ebp - 0xac0], edx
push dword [ebp - 0xac0]
push dword [ebp - 0xac4]
lea ecx, [ebp - 0x13cc]
call fcn.00401e2f
pop ecx
pop ecx
mov ecx, eax
call fcn.0041b4cc
push eax
call fcn.0048ee0a
pop ecx
lea ecx, [ebp - 0x13cc]
call fcn.00401328
jmp 0x46b027
jmp 0x46b005
jmp 0x46afdf
mov dword [ebp - 0x380], 0
jmp 0x46b0b7
mov eax, dword [ebp - 0x380]
inc eax
mov dword [ebp - 0x380], eax
cmp dword [ebp - 0x380], 1
jge 0x46b0d3
mov eax, dword [ebp - 0x380]
mov dword [ebp + eax*4 - 0x468], 0xecbfcf41
jmp 0x46b0aa
mov dword [ebp - 4], 2
cmp dword [ebp - 0x900], 0x4931
jge 0x46b0f2
push dword [ebp - 0xcc8]
call fcn.0048ee0a
pop ecx
jmp 0x46b10e
or dword [ebp - 4], 0xffffffff
jmp 0x46b118
cmp dword [ebp - 0x74], 0xffffffff
ja 0x46b130
cmp dword [ebp - 0x74], 0
je 0x46b130
mov dword [ebp - 0x908], 1
jmp 0x46b137
and dword [ebp - 0x908], 0
cmp dword [ebp - 0x908], 0xdfa831eb
jb 0x46b14f
mov dword [ebp - 0xcd0], 1
jmp 0x46b156
and dword [ebp - 0xcd0], 0
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x116c], eax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x1004], eax
mov eax, dword [ebp - 0x74]
sub eax, dword [ebp - 0x74]
je 0x46b185
mov eax, 0x6729694d
test eax, eax
je 0x46b185
mov dword [ebp - 0x910], 1
jmp 0x46b18c
and dword [ebp - 0x910], 0
mov eax, dword [ebp - 0x74]
cmp dword [ebp - 0x910], eax
jge 0x46b1a3
mov dword [ebp - 0x918], 1
jmp 0x46b1aa
and dword [ebp - 0x918], 0
mov eax, dword [ebp - 0x74]
imul eax, dword [ebp - 0x918]
mov dword [ebp - 0x1c8], eax
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x10c4], eax
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x100c], eax
mov eax, dword [ebp - 0x1c8]
mov dword [ebp - 0x1174], eax
mov dword [ebp - 0x928], 0
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x468], 0
je 0x46b20a
mov eax, 0x9063
test eax, eax
je 0x46b20a
mov dword [ebp - 0x920], 1
jmp 0x46b211
and dword [ebp - 0x920], 0
mov eax, dword [ebp - 0x428]
dec eax
mov dword [ebp - 0x428], eax
mov eax, dword [ebp - 0x428]
cmp eax, dword [ebp - 0x920]
jg 0x46b238
mov dword [ebp - 0x930], 1
jmp 0x46b23f
and dword [ebp - 0x930], 0
mov eax, dword [ebp - 0x928]
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x468]
imul ecx, dword [ebp - 0x930]
lea eax, [eax + ecx + 0x4e627738]
cmp eax, 0x2398
jg 0x46b273
mov dword [ebp - 0x8f8], 1
jmp 0x46b27a
and dword [ebp - 0x8f8], 0
cmp dword [ebp - 0x8f8], 0xd8d9
jge 0x46b292
mov dword [ebp - 0x4d4], 1
jmp 0x46b299
and dword [ebp - 0x4d4], 0
mov eax, dword [ebp - 0x1c8]
sub eax, 0xeb16
sub eax, dword [ebp - 0x4d4]
je 0x46b2c3
mov dword [ebp - 0xcd8], 1
lea ecx, [ebp - 0xcd8]
call fcn.0041d6c9
jmp 0x46b2e0
mov dword [ebp - 0xce0], 0x38e21363
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x468]
mov dword [ebp - 0xce0], eax
mov dword [ebp - 0x6c], 0xf30cc2fd
mov dword [ebp - 0x710], 2
mov dword [ebp - 0x4d8], 0x281d21f1
mov dword [ebp - 0x2f0], 0x8ed4a55f
push 1
lea ecx, [ebp - 0xe94]
call fcn.0041b63b
mov dword [ebp - 0x188], 0
jmp 0x46b32b
mov eax, dword [ebp - 0x188]
inc eax
mov dword [ebp - 0x188], eax
cmp dword [ebp - 0x188], 1
jge 0x46b347
mov eax, dword [ebp - 0x188]
mov dword [ebp + eax*4 - 0x838], 0xd26ec17e
jmp 0x46b31e
lea edx, [ebp - 0xe94]
lea ecx, [ebp - 0x188]
call fcn.0041d6f9
mov dword [ebp - 0x710], 0xffffffff
mov dword [ebp - 0x4d8], 0xffff
mov eax, dword [ebp - 0x4d8]
cmp dword [ebp - 0x710], eax
jg 0x46b386
mov dword [ebp - 0x4e0], 1
jmp 0x46b38d
and dword [ebp - 0x4e0], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x838]
cmp dword [ebp - 0x4e0], eax
je 0x46b3c5
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x838], 0xb779c63c
mov eax, 0xb779c63c
test eax, eax
jne 0x46b3c5
and dword [ebp - 0x4e8], 0
jmp 0x46b3cf
mov dword [ebp - 0x4e8], 1
mov eax, dword [ebp - 0x2f0]
cmp dword [ebp - 0x2f0], eax
je 0x46b3e9
mov dword [ebp - 0x718], 1
jmp 0x46b3f0
and dword [ebp - 0x718], 0
mov eax, dword [ebp - 0x4e8]
cmp eax, dword [ebp - 0x718]
jge 0x46b40a
mov dword [ebp - 0x4f0], 1
jmp 0x46b411
and dword [ebp - 0x4f0], 0
mov esi, dword [ebp - 0x4f0]
sub esi, dword [ebp - 0x2f0]
imul esi, dword [ebp - 0x2f0]
push 0
lea ecx, [ebp - 0xe94]
call fcn.00401332
mov dword [eax], esi
lea ecx, [ebp - 0xe94]
call fcn.0041b70d
mov dword [ebp - 0x19c], 0x9f7c8b16
mov dword [ebp - 0x3f0], 1
mov dword [ebp - 0x1d0], 0
jmp 0x46b46b
mov eax, dword [ebp - 0x1d0]
inc eax
mov dword [ebp - 0x1d0], eax
cmp dword [ebp - 0x1d0], 4
jge 0x46b487
mov eax, dword [ebp - 0x1d0]
mov dword [ebp + eax*4 - 0x1264], 0
jmp 0x46b45e
mov byte [ebp - 0xe8], 0
lea ecx, [ebp - 0xe8]
call fcn.004012c7
mov dword [ebp - 0x3f0], 0xfffffffb
jmp 0x46b4b2
mov eax, dword [ebp - 0x3f0]
dec eax
mov dword [ebp - 0x3f0], eax
cmp dword [ebp - 0x3f0], 0xfffffff0
jge 0x46b997
mov dword [ebp - 0x198], 1
mov dword [ebp - 0x198], 0
jmp 0x46b4e2
mov eax, dword [ebp - 0x198]
inc eax
mov dword [ebp - 0x198], eax
cmp dword [ebp - 0x198], 0xc
jge 0x46b992
mov dword [ebp - 0x9a0], 0x5d732ada
mov dword [ebp - 0x8bc], 0x3a44
mov dword [ebp - 0xa7c], 0xaa4a8c
cmp dword [ebp - 0x8bc], 0x3c6e
jle 0x46b5e7
and dword [ebp - 0x1d8], 0
jmp 0x46b533
mov eax, dword [ebp - 0x1d8]
inc eax
mov dword [ebp - 0x1d8], eax
cmp dword [ebp - 0x1d8], 0x6f0f
jge 0x46b5e7
and dword [ebp - 0x2f8], 0
jmp 0x46b559
mov eax, dword [ebp - 0x2f8]
inc eax
mov dword [ebp - 0x2f8], eax
cmp dword [ebp - 0x2f8], 0x57a
jge 0x46b5e2
and dword [ebp - 0x1e0], 0
jmp 0x46b57b
mov eax, dword [ebp - 0x1e0]
inc eax
mov dword [ebp - 0x1e0], eax
cmp dword [ebp - 0x1e0], 0x457a
jge 0x46b5dd
mov eax, dword [ebp - 0x1d8]
cdq
idiv dword [ebp - 0x2f8]
sub edx, dword [ebp - 0x1e0]
mov eax, edx
cdq
mov dword [ebp - 0xad0], eax
mov dword [ebp - 0xacc], edx
push dword [ebp - 0xacc]
push dword [ebp - 0xad0]
lea ecx, [ebp - 0x1348]
call fcn.00401e2f
pop ecx
pop ecx
mov ecx, eax
call fcn.0041b4cc
push eax
call fcn.0048ee0a
pop ecx
lea ecx, [ebp - 0x1348]
call fcn.00401328
jmp 0x46b56e
jmp 0x46b54c
jmp 0x46b526
mov dword [ebp - 4], 4
cmp dword [ebp - 0x8bc], 0x3743
jge 0x46b606
push dword [ebp - 0xa7c]
call fcn.0048ee0a
pop ecx
jmp 0x46b622
or dword [ebp - 4], 0xffffffff
jmp 0x46b62c
mov dword [ebp - 0x388], 0
jmp 0x46b645
mov eax, dword [ebp - 0x388]
inc eax
mov dword [ebp - 0x388], eax
cmp dword [ebp - 0x388], 3
jge 0x46b661
mov eax, dword [ebp - 0x388]
mov dword [ebp + eax*4 - 0xcf0], 0x78f3c34e
jmp 0x46b638
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0xcf0], 3
jmp 0x46b68f
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0xcf0]
dec eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0xcf0], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0xcf0], 0
jl 0x46b98d
mov dword [ebp - 0x84], 0xfffffff6
mov dword [ebp - 0xba0], 0x48aab564
mov dword [ebp - 0x84], 3
jmp 0x46b6d0
mov eax, dword [ebp - 0x84]
dec eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0
jl 0x46b840
mov dword [ebp - 0x4f8], 0x40ec
mov dword [ebp - 0x998], 0xaa4ab0
cmp dword [ebp - 0x4f8], 0x4297
jle 0x46b7eb
and dword [ebp - 0x1e8], 0
jmp 0x46b717
mov eax, dword [ebp - 0x1e8]
inc eax
mov dword [ebp - 0x1e8], eax
cmp dword [ebp - 0x1e8], 0x4e1c
jge 0x46b7de
and dword [ebp - 0x300], 0
jmp 0x46b73d
mov eax, dword [ebp - 0x300]
inc eax
mov dword [ebp - 0x300], eax
cmp dword [ebp - 0x300], 0x65e4
jge 0x46b7d9
and dword [ebp - 0x1f0], 0
jmp 0x46b763
mov eax, dword [ebp - 0x1f0]
inc eax
mov dword [ebp - 0x1f0], eax
cmp dword [ebp - 0x1f0], 0x5d5
jge 0x46b7d4
and dword [ebp - 0x3d0], 0
jmp 0x46b785
mov eax, dword [ebp - 0x3d0]
inc eax
mov dword [ebp - 0x3d0], eax
cmp dword [ebp - 0x3d0], 0x4ed9
jge 0x46b7d2
mov eax, dword [ebp - 0x1e8]
cdq
idiv dword [ebp - 0x300]
imul edx, dword [ebp - 0x1f0]
add edx, dword [ebp - 0x3d0]
mov eax, edx
cdq
mov dword [ebp - 0xadc], eax
mov dword [ebp - 0xad8], edx
push dword [ebp - 0xad8]
push dword [ebp - 0xadc]
mov ecx, 0xab36e8
call fcn.0041b4f7
jmp 0x46b778
jmp 0x46b756
jmp 0x46b730
jmp 0x46b70a
push 0
push 0x123f
call dword [0xab62c8]
call fcn.0041d6cc
mov dword [ebp - 4], 6
cmp dword [ebp - 0x4f8], 0x3de2
jge 0x46b815
push dword [ebp - 0x998]
push 0xab36e8
call fcn.0041cf47
pop ecx
pop ecx
jmp 0x46b831
or dword [ebp - 4], 0xffffffff
jmp 0x46b83b
jmp 0x46b6c3
mov dword [ebp - 0x84], 3
jmp 0x46b859
mov eax, dword [ebp - 0x84]
dec eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0
jl 0x46b988
mov dword [ebp - 0x1f8], 0
jmp 0x46b87f
mov eax, dword [ebp - 0x1f8]
inc eax
mov dword [ebp - 0x1f8], eax
cmp dword [ebp - 0x1f8], 1
jge 0x46b89b
mov eax, dword [ebp - 0x1f8]
mov dword [ebp + eax*4 - 0x190], 0xda7ef5d8
jmp 0x46b872
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x190], 3
jmp 0x46b8c9
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x190]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x190], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x190], 0
jl 0x46b978
mov dword [ebp - 0x308], 0xf1a969ac
mov dword [ebp - 0x308], 0
jmp 0x46b900
mov eax, dword [ebp - 0x308]
inc eax
mov dword [ebp - 0x308], eax
cmp dword [ebp - 0x308], 3
jg 0x46b973
mov dword [ebp - 0xba0], 0xffffffff
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0xcf0], 0xfffffff8
ja 0x46b92f
mov dword [ebp - 0x720], 1
jmp 0x46b936
and dword [ebp - 0x720], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x190]
mov eax, dword [ebp + eax*4 - 0x1264]
cmp eax, dword [ebp - 0x720]
je 0x46b95e
mov dword [ebp - 0x500], 1
jmp 0x46b965
and dword [ebp - 0x500], 0
mov eax, dword [ebp - 0x500]
mov dword [ebp - 0x9a0], eax
jmp 0x46b8f3
jmp 0x46b8ae
cmp dword [ebp - 0x198], 0
je 0x46b983
jmp 0x46b988
jmp 0x46b84c
jmp 0x46b674
jmp 0x46b4d5
jmp 0x46b4a5
mov dword [ebp - 0x570], 0xa8551b32
mov dword [ebp - 0x1014], 0
mov dword [ebp - 0x1c], 0xfb770a77
mov dword [ebp - 0x164], 0xbacde9e8
mov dword [ebp - 0x738], 0x4d64ea33
mov dword [ebp - 0x844], 0xffffffff
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x10cc], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x101c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1168], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x164], eax
jle 0x46ba0b
mov dword [ebp - 0x83c], 1
jmp 0x46ba12
and dword [ebp - 0x83c], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x83c], eax
jle 0x46bce6
mov dword [ebp - 0x508], 0x5a5f
mov dword [ebp - 0xcbc], 0xaa4afc
cmp dword [ebp - 0x508], 0x5e42
jle 0x46bab8
and dword [ebp - 0x200], 0
jmp 0x46ba57
mov eax, dword [ebp - 0x200]
inc eax
mov dword [ebp - 0x200], eax
cmp dword [ebp - 0x200], 0x73fc
jge 0x46bab8
and dword [ebp - 0x390], 0
jmp 0x46ba79
mov eax, dword [ebp - 0x390]
inc eax
mov dword [ebp - 0x390], eax
cmp dword [ebp - 0x390], 0x5aa9
jge 0x46bab6
mov eax, dword [ebp - 0x200]
and eax, dword [ebp - 0x390]
cdq
mov dword [ebp - 0xae8], eax
mov dword [ebp - 0xae4], edx
push dword [ebp - 0xae4]
push dword [ebp - 0xae8]
mov ecx, 0xab36e8
call fcn.0041b4f7
jmp 0x46ba6c
jmp 0x46ba4a
mov dword [ebp - 4], 8
cmp dword [ebp - 0x508], 0x5a53
jge 0x46badd
push dword [ebp - 0xcbc]
push 0xab36e8
call fcn.0041cf47
pop ecx
pop ecx
jmp 0x46baf9
or dword [ebp - 4], 0xffffffff
jmp 0x46bb03
mov dword [ebp - 0x728], 0x3da2
mov dword [ebp - 0x9a8], 0xaa4b5c
cmp dword [ebp - 0x728], 0x3e34
jle 0x46bc3a
and dword [ebp - 0x410], 0
jmp 0x46bb3d
mov eax, dword [ebp - 0x410]
inc eax
mov dword [ebp - 0x410], eax
cmp dword [ebp - 0x410], 0x5288
jge 0x46bc23
and dword [ebp - 0x208], 0
jmp 0x46bb63
mov eax, dword [ebp - 0x208]
inc eax
mov dword [ebp - 0x208], eax
cmp dword [ebp - 0x208], 0x2a45
jge 0x46bc1e
and dword [ebp - 0x310], 0
jmp 0x46bb89
mov eax, dword [ebp - 0x310]
inc eax
mov dword [ebp - 0x310], eax
cmp dword [ebp - 0x310], 0x3c51
jge 0x46bc19
and dword [ebp - 0x210], 0
jmp 0x46bbaf
mov eax, dword [ebp - 0x210]
inc eax
mov dword [ebp - 0x210], eax
cmp dword [ebp - 0x210], 0x76d0
jge 0x46bc14
mov eax, dword [ebp - 0x208]
add eax, dword [ebp - 0x310]
and eax, dword [ebp - 0x210]
or eax, dword [ebp - 0x410]
cdq
mov dword [ebp - 0xaf4], eax
mov dword [ebp - 0xaf0], edx
push dword [ebp - 0xaf0]
push dword [ebp - 0xaf4]
lea ecx, [ebp - 0x142c]
call fcn.00401e2f
pop ecx
pop ecx
mov ecx, eax
call fcn.0041b4cc
push eax
call fcn.0048ee0a
pop ecx
lea ecx, [ebp - 0x142c]
call fcn.00401328
jmp 0x46bba2
jmp 0x46bb7c
jmp 0x46bb56
jmp 0x46bb30
push 0
push 0x173f
push 0x585
push 0x11a3
call dword [0xab6108]
mov dword [ebp - 0x218], 0
jmp 0x46bc53
mov eax, dword [ebp - 0x218]
inc eax
mov dword [ebp - 0x218], eax
cmp dword [ebp - 0x218], 2
jge 0x46bc6f
mov eax, dword [ebp - 0x218]
mov dword [ebp + eax*4 - 0x11fc], 0xdf62
jmp 0x46bc46
mov dword [ebp - 4], 0xa
cmp dword [ebp - 0x728], 0x39cb
jge 0x46bc8e
push dword [ebp - 0x9a8]
call fcn.0048ee0a
pop ecx
jmp 0x46bcaa
or dword [ebp - 4], 0xffffffff
jmp 0x46bcb4
mov dword [ebp - 0x1c], 0
jmp 0x46bcc4
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jg 0x46bce1
mov dword [ebp - 0xbac], 0x2e40
lea ecx, [ebp - 0xbac]
call fcn.004012e9
jmp 0x46bcbd
jmp 0x46be93
mov dword [ebp - 0x134], 0xfffffffb
mov dword [ebp - 0xd6c], 0xffffffff
cmp dword [ebp - 0x134], 0xcc5c
jl 0x46bd12
mov dword [ebp - 0x510], 1
jmp 0x46bd19
and dword [ebp - 0x510], 0
cmp dword [ebp - 0x510], 0
jne 0x46bded
cmp dword [ebp - 0x134], 2
jle 0x46bd3b
mov dword [ebp - 0x944], 1
jmp 0x46bd42
and dword [ebp - 0x944], 0
imul eax, dword [ebp - 0x944], 0x6c0f
sub eax, 6
cmp eax, dword [ebp - 0x164]
jl 0x46bd63
mov dword [ebp - 0x518], 1
jmp 0x46bd6a
and dword [ebp - 0x518], 0
cmp dword [ebp - 0x518], 1
jle 0x46bd7f
mov dword [ebp - 0x9b0], 1
jmp 0x46bd86
and dword [ebp - 0x9b0], 0
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1024], eax
mov eax, dword [ebp - 0x1c]
imul eax, dword [ebp - 0x1c]
mov dword [ebp - 0x164], eax
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x10d4], eax
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x102c], eax
cmp dword [ebp - 0x738], 0
jne 0x46bdc9
mov dword [ebp - 0x730], 1
jmp 0x46bdd0
and dword [ebp - 0x730], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x730], eax
jge 0x46bded
cmp dword [ebp - 0x134], 0
jne 0x46bded
and dword [ebp - 0x520], 0
jmp 0x46bdf7
mov dword [ebp - 0x520], 1
mov eax, dword [ebp - 0x520]
mov dword [ebp - 0x844], eax
cmp dword [ebp - 0x844], 0xb606
jne 0x46be1b
mov dword [ebp - 0x528], 1
jmp 0x46be22
and dword [ebp - 0x528], 0
mov eax, dword [ebp - 0x134]
cmp dword [ebp - 0x528], eax
jne 0x46be3c
mov dword [ebp - 0x530], 1
jmp 0x46be43
and dword [ebp - 0x530], 0
mov eax, dword [ebp - 0x738]
cmp eax, dword [ebp - 0x530]
jge 0x46be5d
mov dword [ebp - 0x8c4], 1
jmp 0x46be64
and dword [ebp - 0x8c4], 0
mov eax, dword [ebp - 0x8c4]
mov dword [ebp - 0xd6c], eax
mov byte [ebp - 0xae], 0
movzx eax, byte [ebp - 0xae]
test eax, eax
je 0x46be93
push 0
push 0x177e
push 0
call fcn.00474577
add esp, 0xc
mov dword [ebp - 0x430], 0xffff
mov dword [ebp - 0x220], 0xd1e1e87d
mov dword [ebp - 0x318], 0
jmp 0x46bec0
mov eax, dword [ebp - 0x318]
inc eax
mov dword [ebp - 0x318], eax
cmp dword [ebp - 0x318], 3
jge 0x46bedc
mov eax, dword [ebp - 0x318]
mov dword [ebp + eax*4 - 0x1288], 0xfffffff9
jmp 0x46beb3
mov dword [ebp - 0x220], 0
jmp 0x46bef5
mov eax, dword [ebp - 0x220]
inc eax
mov dword [ebp - 0x220], eax
cmp dword [ebp - 0x220], 2
jg 0x46bf37
mov dword [ebp - 0x538], 0xea6801fc
mov dword [ebp - 0x9b8], 0xf7d65121
cmp dword [ebp - 0x538], 0
je 0x46bf1d
jmp 0x46bf37
lea eax, [ebp - 0x9b8]
push eax
push 0
lea eax, [ebp - 0x538]
push eax
call fcn.004823df
add esp, 0xc
jmp 0x46bee8
push 3
lea ecx, [ebp - 0x940]
call fcn.0041b63b
mov dword [ebp - 0x11b4], 5
mov dword [ebp - 0x90], 0xffffffff
mov dword [ebp - 0x9c0], 1
mov dword [ebp - 0x904], 0xfffffff8
push 0x7ef
lea eax, [ebp - 0x940]
push eax
push 0x1598
push 0x53
lea eax, [ebp - 0x18c]
push eax
push 0x5663
push 0
push 0
push 1
call fcn.00478ba5
add esp, 0x24
mov dword [ebp - 0x740], 0x6636
mov dword [ebp - 0xbb8], 0xaa4b80
cmp dword [ebp - 0x740], 0x666b
jle 0x46c092
and dword [ebp - 0x320], 0
jmp 0x46bfd3
mov eax, dword [ebp - 0x320]
inc eax
mov dword [ebp - 0x320], eax
cmp dword [ebp - 0x320], 0x198a
jge 0x46c085
and dword [ebp - 0x398], 0
jmp 0x46bff9
mov eax, dword [ebp - 0x398]
inc eax
mov dword [ebp - 0x398], eax
cmp dword [ebp - 0x398], 0x7dcb
jge 0x46c080
and dword [ebp - 0x228], 0
jmp 0x46c01b
mov eax, dword [ebp - 0x228]
inc eax
mov dword [ebp - 0x228], eax
cmp dword [ebp - 0x228], 0x65dc
jge 0x46c07b
mov eax, dword [ebp - 0x398]
imul eax, dword [ebp - 0x228]
and eax, dword [ebp - 0x320]
cdq
mov dword [ebp - 0xb00], eax
mov dword [ebp - 0xafc], edx
push dword [ebp - 0xafc]
push dword [ebp - 0xb00]
lea ecx, [ebp - 0x1378]
call fcn.00401e2f
pop ecx
pop ecx
mov ecx, eax
call fcn.0041b4cc
push eax
call fcn.0048ee0a
pop ecx
lea ecx, [ebp - 0x1378]
call fcn.00401328
jmp 0x46c00e
jmp 0x46bfec
jmp 0x46bfc6
push 0
push 0xb3b
call dword [0xab6050]
mov dword [ebp - 4], 0xc
cmp dword [ebp - 0x740], 0x641e
jge 0x46c0b1
push dword [ebp - 0xbb8]
call fcn.0048ee0a
pop ecx
jmp 0x46c0cd
or dword [ebp - 4], 0xffffffff
jmp 0x46c0d7
mov dword [ebp - 0x18c], 0
jmp 0x46c0f0
mov eax, dword [ebp - 0x18c]
inc eax
mov dword [ebp - 0x18c], eax
cmp dword [ebp - 0x18c], 2
jge 0x46c10c
mov eax, dword [ebp - 0x18c]
mov dword [ebp + eax*4 - 0x970], 0x38591b6
jmp 0x46c0e3
push 2
lea ecx, [ebp - 0x940]
call fcn.00401332
cmp dword [eax], 0x4b811476
jl 0x46c12d
mov dword [ebp - 0x748], 1
jmp 0x46c134
and dword [ebp - 0x748], 0
push 0
lea ecx, [ebp - 0x940]
call fcn.00401332
mov eax, dword [eax]
sub eax, 0xeb98
mov dword [ebp - 0x540], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x540]
mov dword [ebp + eax - 0x970], ecx
push 2
lea ecx, [ebp - 0x940]
call fcn.00401332
mov eax, dword [eax]
cmp eax, dword [ebp - 0x540]
jge 0x46c184
mov dword [ebp - 0x84c], 1
jmp 0x46c18b
and dword [ebp - 0x84c], 0
push 2
lea ecx, [ebp - 0x940]
call fcn.00401332
mov eax, dword [eax]
cmp eax, dword [ebp - 0x84c]
jne 0x46c1ae
mov dword [ebp - 0x548], 1
jmp 0x46c1b5
and dword [ebp - 0x548], 0
cmp dword [ebp - 0x548], 0xa9b6
jge 0x46c1cd
mov dword [ebp - 0x550], 1
jmp 0x46c1d4
and dword [ebp - 0x550], 0
mov eax, dword [ebp - 0x748]
add eax, dword [ebp - 0x550]
je 0x46c2c2
mov dword [ebp - 0x1034], 0
mov dword [ebp - 0x10dc], 2
mov dword [ebp - 0x103c], 4
mov dword [ebp - 0x1170], 0xffffffff
mov dword [ebp - 0x1044], 1
mov dword [ebp - 0x10ec], 0xb3847d22
mov dword [ebp - 0x104c], 0xf86f25db
mov dword [ebp - 0x119c], 1
mov dword [ebp - 0x1054], 0xfffffffa
mov dword [ebp - 0x10fc], 0x11d7feae
mov dword [ebp - 0xf30], 0xffffffff
mov dword [ebp - 0xf38], 0x8f49235
mov dword [ebp - 0x54], 0
jmp 0x46c26e
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 4
jge 0x46c284
mov eax, dword [ebp - 0x54]
mov dword [ebp + eax*4 - 0x1484], 1
jmp 0x46c267
mov dword [ebp - 0x54], 0
jmp 0x46c294
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 3
jge 0x46c2aa
mov eax, dword [ebp - 0x54]
mov dword [ebp + eax*4 - 0x1318], 1
jmp 0x46c28d
push 0x66a5
lea eax, [ebp - 0x9c0]
push eax
push 0
call fcn.00474d0d
add esp, 0xc
jmp 0x46c314
mov dword [ebp - 0xcc4], 5
mov byte [ebp - 0xc2], 0
movzx eax, byte [ebp - 0xc2]
test eax, eax
je 0x46c2f2
push 0x3347
push 0x1a31
push 0
call fcn.00474f9d
add esp, 0xc
push 0x22bb
push 0x4451
push 1
lea eax, [ebp - 0xcc4]
push eax
push 0x4421
push 0
call fcn.00468dea
add esp, 0x18
mov dword [ebp - 0x90], 1
jmp 0x46c32d
mov eax, dword [ebp - 0x90]
dec eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 0
jl 0x46c45a
push 4
lea ecx, [ebp - 0xd00]
call fcn.0041b63b
lea eax, [ebp - 0xd00]
push eax
push 0
push 1
lea eax, [ebp - 0xf40]
push eax
push 0x7b9b
push 0x28e7
push 0
push 0x3a95
push 0xbc1
push 0x1619
call fcn.004697e1
add esp, 0x28
push dword [ebp - 0x90]
lea ecx, [ebp - 0x940]
call fcn.00401332
mov eax, 0x376e
cmp eax, 0x2ffa
jle 0x46c3a5
mov dword [ebp - 0x558], 1
jmp 0x46c3ac
and dword [ebp - 0x558], 0
mov dword [ebp - 0x904], 0x5b7518db
mov esi, dword [ebp - 0x904]
push dword [ebp - 0x90]
lea ecx, [ebp - 0x940]
call fcn.00401332
cmp esi, dword [eax]
jg 0x46c3dd
mov dword [ebp - 0x750], 1
jmp 0x46c3e4
and dword [ebp - 0x750], 0
mov eax, dword [ebp - 0x90]
mov eax, dword [ebp + eax*4 - 0x970]
sub eax, dword [ebp - 0x558]
add eax, dword [ebp - 0x750]
mov ecx, dword [ebp - 0x90]
mov dword [ebp + ecx*4 - 0x970], eax
push 4
pop eax
imul eax, eax, 0
mov esi, dword [ebp + eax - 0x970]
neg esi
push 2
lea ecx, [ebp - 0xd00]
call fcn.00401332
mov dword [eax], esi
push 2
lea ecx, [ebp - 0xd00]
call fcn.00401332
cmp dword [eax], 0
je 0x46c44a
lea ecx, [ebp - 0xd00]
call fcn.0041b70d
jmp 0x46c320
lea ecx, [ebp - 0xd00]
call fcn.0041b70d
jmp 0x46c320
lea ecx, [ebp - 0x940]
call fcn.0041b70d
mov dword [ebp - 0x230], 0
jmp 0x46c47e
mov eax, dword [ebp - 0x230]
inc eax
mov dword [ebp - 0x230], eax
cmp dword [ebp - 0x230], 1
jge 0x46c49a
mov eax, dword [ebp - 0x230]
mov dword [ebp + eax*4 - 0x438], 0xecbfcf41
jmp 0x46c471
cmp dword [ebp - 0x6c], 0xffffffff
ja 0x46c4b2
cmp dword [ebp - 0x6c], 0
je 0x46c4b2
mov dword [ebp - 0x560], 1
jmp 0x46c4b9
and dword [ebp - 0x560], 0
cmp dword [ebp - 0x560], 0xdfa831eb
jb 0x46c4d1
mov dword [ebp - 0x9c8], 1
jmp 0x46c4d8
and dword [ebp - 0x9c8], 0
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0xf48], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0xf50], eax
mov eax, dword [ebp - 0x6c]
sub eax, dword [ebp - 0x6c]
je 0x46c507
mov eax, 0x6729694d
test eax, eax
je 0x46c507
mov dword [ebp - 0x854], 1
jmp 0x46c50e
and dword [ebp - 0x854], 0
mov eax, dword [ebp - 0x6c]
cmp dword [ebp - 0x854], eax
jge 0x46c525
mov dword [ebp - 0x568], 1
jmp 0x46c52c
and dword [ebp - 0x568], 0
mov eax, dword [ebp - 0x6c]
imul eax, dword [ebp - 0x568]
mov dword [ebp - 0x19c], eax
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0xf58], eax
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0xf60], eax
mov eax, dword [ebp - 0x19c]
mov dword [ebp - 0xf68], eax
mov dword [ebp - 0x570], 0
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x438], 0
je 0x46c58c
mov eax, 0x9063
test eax, eax
je 0x46c58c
mov dword [ebp - 0x758], 1
jmp 0x46c593
and dword [ebp - 0x758], 0
mov eax, dword [ebp - 0x430]
dec eax
mov dword [ebp - 0x430], eax
mov eax, dword [ebp - 0x430]
cmp eax, dword [ebp - 0x758]
jg 0x46c5ba
mov dword [ebp - 0x8cc], 1
jmp 0x46c5c1
and dword [ebp - 0x8cc], 0
mov eax, dword [ebp - 0x570]
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x438]
imul ecx, dword [ebp - 0x8cc]
lea eax, [eax + ecx + 0x4e627738]
cmp eax, 0x2398
jg 0x46c5f5
mov dword [ebp - 0x578], 1
jmp 0x46c5fc
and dword [ebp - 0x578], 0
cmp dword [ebp - 0x578], 0xd8d9
jge 0x46c614
mov dword [ebp - 0x760], 1
jmp 0x46c61b
and dword [ebp - 0x760], 0
mov eax, dword [ebp - 0x19c]
sub eax, 0xeb16
sub eax, dword [ebp - 0x760]
je 0x46cc4b
mov dword [ebp - 0x34], 0
mov dword [ebp - 0xec], 0xbc40ed3c
mov dword [ebp - 0x3d8], 0
jmp 0x46c65c
mov eax, dword [ebp - 0x3d8]
inc eax
mov dword [ebp - 0x3d8], eax
cmp dword [ebp - 0x3d8], 2
jge 0x46c678
mov eax, dword [ebp - 0x3d8]
mov dword [ebp + eax*4 - 0x10c], 0x43cdf98a
jmp 0x46c64f
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x10c]
mov dword [ebp - 0xf70], eax
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x10c]
mov dword [ebp - 0xed0], eax
cmp dword [ebp - 0x34], 0
je 0x46c6b9
cmp dword [ebp - 0xec], 0
je 0x46c6b9
mov dword [ebp - 0x580], 1
jmp 0x46c6c0
and dword [ebp - 0x580], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x10c]
cmp eax, dword [ebp - 0x580]
jl 0x46c6e1
mov dword [ebp - 0x85c], 1
jmp 0x46c6e8
and dword [ebp - 0x85c], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x10c]
cmp dword [ebp - 0x85c], eax
jl 0x46c709
mov dword [ebp - 0x588], 1
jmp 0x46c710
and dword [ebp - 0x588], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x10c]
cmp eax, dword [ebp - 0x588]
jge 0x46c731
mov dword [ebp - 0x768], 1
jmp 0x46c738
and dword [ebp - 0x768], 0
mov eax, dword [ebp - 0x768]
inc eax
je 0x46c756
cmp dword [ebp - 0xec], 0
je 0x46c756
mov dword [ebp - 0x590], 1
jmp 0x46c75d
and dword [ebp - 0x590], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x590]
mov dword [ebp + eax - 0x10c], ecx
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x10c]
mov dword [ebp - 0xed8], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x10c]
mov dword [ebp - 0xee0], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x10c], 0xfffb
jae 0x46c7b5
mov dword [ebp - 0x924], 1
jmp 0x46c7bc
and dword [ebp - 0x924], 0
push 4
pop eax
shl eax, 0
push 4
pop ecx
shl ecx, 0
mov ecx, dword [ebp + ecx - 0x10c]
cmp dword [ebp + eax - 0x10c], ecx
jl 0x46c7e4
mov dword [ebp - 0x598], 1
jmp 0x46c7eb
and dword [ebp - 0x598], 0
mov eax, dword [ebp - 0x924]
add eax, dword [ebp - 0x598]
je 0x46cade
mov dword [ebp - 0x5a0], 0x4667
mov dword [ebp - 0xbc4], 0xaa4bd0
cmp dword [ebp - 0x5a0], 0x473d
jle 0x46c940
push 0
push 0
push 0x21d6
push 0
push 0x1a1e
push 0
push 0x25b5
push 0
call dword [0xab6130]
and dword [ebp - 0x238], 0
jmp 0x46c856
mov eax, dword [ebp - 0x238]
inc eax
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 0x6f32
jge 0x46c940
and dword [ebp - 0x328], 0
jmp 0x46c87c
mov eax, dword [ebp - 0x328]
inc eax
mov dword [ebp - 0x328], eax
cmp dword [ebp - 0x328], 0x6ac0
jge 0x46c93b
and dword [ebp - 0x240], 0
jmp 0x46c8a2
mov eax, dword [ebp - 0x240]
inc eax
mov dword [ebp - 0x240], eax
cmp dword [ebp - 0x240], 0x1502
jge 0x46c936
and dword [ebp - 0x3a0], 0
jmp 0x46c8c8
mov eax, dword [ebp - 0x3a0]
inc eax
mov dword [ebp - 0x3a0], eax
cmp dword [ebp - 0x3a0], 0x45a8
jge 0x46c931
mov eax, dword [ebp - 0x238]
mov ecx, dword [ebp - 0x328]
sar eax, cl
mov ecx, dword [ebp - 0x240]
sar eax, cl
and eax, dword [ebp - 0x3a0]
cdq
mov dword [ebp - 0xb0c], eax
mov dword [ebp - 0xb08], edx
push dword [ebp - 0xb08]
push dword [ebp - 0xb0c]
lea ecx, [ebp - 0x13fc]
call fcn.00401e2f
pop ecx
pop ecx
mov ecx, eax
call fcn.0041b4cc
push eax
call fcn.0048ee0a
pop ecx
lea ecx, [ebp - 0x13fc]
call fcn.00401328
jmp 0x46c8bb
jmp 0x46c895
jmp 0x46c86f
jmp 0x46c849
mov dword [ebp - 0xec], 0
jmp 0x46c959
mov eax, dword [ebp - 0xec]
inc eax
mov dword [ebp - 0xec], eax
cmp dword [ebp - 0xec], 0x13
jle 0x46ca97
mov dword [ebp - 0x34], 0x10
jmp 0x46c976
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0x30
je 0x46ca92
push 3
lea ecx, [ebp - 0xd10]
call fcn.0041b63b
mov dword [ebp - 0x248], 0
jmp 0x46c9a6
mov eax, dword [ebp - 0x248]
inc eax
mov dword [ebp - 0x248], eax
cmp dword [ebp - 0x248], 3
jge 0x46c9c8
push dword [ebp - 0x248]
lea ecx, [ebp - 0xd10]
call fcn.00401332
mov dword [eax], 0x8461e707
jmp 0x46c999
push 0
lea ecx, [ebp - 0xd10]
call fcn.00401332
mov dword [eax], 0xffffffe6
jmp 0x46ca01
push 0
lea ecx, [ebp - 0xd10]
call fcn.00401332
mov dword [ebp - 0x770], eax
mov eax, dword [ebp - 0x770]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x770]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0xd10]
call fcn.00401332
cmp dword [eax], 0xe
je 0x46ca82
mov dword [ebp - 0x330], 0x5d580090
mov byte [ebp - 0xb0], 0
lea eax, [ebp - 0xb0]
push eax
push 0
push 0x388d
push 0x5591
call fcn.0047889a
add esp, 0x10
mov dword [ebp - 0x330], 1
jmp 0x46ca58
mov eax, dword [ebp - 0x330]
dec eax
mov dword [ebp - 0x330], eax
cmp dword [ebp - 0x330], 0
jl 0x46ca7d
mov byte [ebp - 0xcf], 0
movzx eax, byte [ebp - 0xcf]
test eax, eax
je 0x46ca7b
push 0
call dword [0xab62ec]
jmp 0x46ca4b
jmp 0x46c9dd
lea ecx, [ebp - 0xd10]
call fcn.0041b70d
jmp 0x46c96f
jmp 0x46c94c
mov dword [ebp - 4], 0xe
cmp dword [ebp - 0x5a0], 0x44bd
jge 0x46cab6
push dword [ebp - 0xbc4]
call fcn.0048ee0a
pop ecx
jmp 0x46cad2
or dword [ebp - 4], 0xffffffff
jmp 0x46cadc
jmp 0x46cb44
mov byte [ebp - 0xb2], 0
movzx eax, byte [ebp - 0xb2]
test eax, eax
je 0x46caf5
call fcn.004012d8
mov dword [ebp - 0x34], 0
jmp 0x46cb05
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 1
jg 0x46cb44
mov eax, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp + eax*4 - 0x10c]
mov dword [ebp + ecx*4 - 0x10c], eax
mov byte [ebp - 0xc4], 0
movzx eax, byte [ebp - 0xc4]
test eax, eax
je 0x46cb42
push 0
push 0x4a1a
push 0
call fcn.00479099
add esp, 0xc
jmp 0x46cafe
mov dword [ebp - 0x9d8], 1
mov dword [ebp - 0xee8], 0xc8959310
mov dword [ebp - 0xd34], 0x12f3ccd2
mov dword [ebp - 0x5c], 0
jmp 0x46cb72
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 3
jge 0x46cb88
mov eax, dword [ebp - 0x5c]
mov dword [ebp + eax*4 - 0xd20], 8
jmp 0x46cb6b
mov dword [ebp - 0x5c], 0
jmp 0x46cb98
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 1
jge 0x46cbae
mov eax, dword [ebp - 0x5c]
mov dword [ebp + eax*4 - 0xef0], 1
jmp 0x46cb91
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0xd20], 0xffffffff
jmp 0x46cbdc
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xd20]
inc eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0xd20], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0xd20], 0x19
je 0x46cc20
mov dword [ebp - 0x864], 0xffffffff
mov dword [ebp - 0x9d0], 0xfffffffb
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0xd20]
mov dword [ebp - 0x864], eax
mov eax, dword [ebp - 0x864]
mov dword [ebp - 0x9d0], eax
jmp 0x46cbc1
push 0
push 0x1e95
lea eax, [ebp - 0xd34]
push eax
call fcn.00477aab
add esp, 0xc
lea eax, [ebp - 0x9d8]
push eax
push 0
call fcn.004788d2
pop ecx
pop ecx
jmp 0x46d0fe
mov dword [ebp - 0xccc], 0x38e21363
mov dword [ebp - 0x124], 0xfffffff9
mov dword [ebp - 0x18], 0xc04c
mov dword [ebp - 0x3f8], 0x3f126c7f
push 4
lea ecx, [ebp - 0xeac]
call fcn.0041b63b
mov dword [ebp - 0x250], 0
jmp 0x46cc96
mov eax, dword [ebp - 0x250]
inc eax
mov dword [ebp - 0x250], eax
cmp dword [ebp - 0x250], 4
jge 0x46ccb5
push dword [ebp - 0x250]
lea ecx, [ebp - 0xeac]
call fcn.00401332
or dword [eax], 0xffffffff
jmp 0x46cc89
mov dword [ebp - 0x124], 0
jmp 0x46ccce
mov eax, dword [ebp - 0x124]
dec eax
mov dword [ebp - 0x124], eax
cmp dword [ebp - 0x124], 0xfffffff0
jl 0x46d091
push 4
lea ecx, [ebp - 0x968]
call fcn.0041b63b
mov dword [ebp - 0x13c], 0xffff
push 0x403c
push 0
lea eax, [ebp - 0xef8]
push eax
lea eax, [ebp - 0x968]
push eax
push 0x1393
call fcn.00469756
add esp, 0x14
cmp dword [ebp - 0x18], 0
jne 0x46cdcf
push 1
lea ecx, [ebp - 0x968]
call fcn.00401332
cmp dword [eax], 0x49f4ffcf
jle 0x46cd3f
mov dword [ebp - 0x5a8], 1
jmp 0x46cd46
and dword [ebp - 0x5a8], 0
mov eax, dword [ebp - 0x18]
imul eax, dword [ebp - 0x5a8]
cmp eax, 0x60a22152
je 0x46cd63
mov dword [ebp - 0x778], 1
jmp 0x46cd6a
and dword [ebp - 0x778], 0
push 2
lea ecx, [ebp - 0x968]
call fcn.00401332
mov ecx, dword [ebp - 0x778]
cmp ecx, dword [eax]
jge 0x46cd8d
mov dword [ebp - 0x5b0], 1
jmp 0x46cd94
and dword [ebp - 0x5b0], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x5b0], eax
jne 0x46cdae
cmp dword [ebp - 0x18], 0
jne 0x46cdae
and dword [ebp - 0x8d4], 0
jmp 0x46cdb8
mov dword [ebp - 0x8d4], 1
mov eax, dword [ebp - 0x124]
cmp eax, dword [ebp - 0x8d4]
jg 0x46cdcf
and dword [ebp - 0x5b8], 0
jmp 0x46cdd9
mov dword [ebp - 0x5b8], 1
mov eax, dword [ebp - 0x124]
cmp dword [ebp - 0x5b8], eax
jle 0x46cdf3
mov dword [ebp - 0x780], 1
jmp 0x46cdfa
and dword [ebp - 0x780], 0
push 2
lea ecx, [ebp - 0x968]
call fcn.00401332
mov eax, dword [eax]
cmp eax, dword [ebp - 0x780]
je 0x46ce16
xor eax, eax
inc eax
je 0x46ce41
push 0x1307
lea eax, [ebp - 0x3f8]
push eax
push 0
push 0x2159
lea eax, [ebp - 0x13c]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.0047454c
add esp, 0x18
jmp 0x46d081
mov dword [ebp - 0x9e0], 0xffff
mov dword [ebp - 0x470], 0xf34d89bb
mov dword [ebp - 0xbd0], 0xcd5ccfde
mov dword [ebp - 0xec8], 0xc9f13a4b
mov dword [ebp - 0xec4], 0xc9f13a4b
mov dword [ebp - 0xec0], 0xc9f13a4b
mov dword [ebp - 0xebc], 0xc9f13a4b
mov dword [ebp - 0x18], 0
jmp 0x46ce97
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 9
jge 0x46d081
mov dword [ebp - 0x86c], 0xffff
mov dword [ebp - 0x5d8], 1
mov dword [ebp - 0x13c], 0xfffffffc
jmp 0x46cece
mov eax, dword [ebp - 0x13c]
inc eax
mov dword [ebp - 0x13c], eax
cmp dword [ebp - 0x13c], 3
jne 0x46d07c
mov dword [ebp - 0x16c], 0xd8c6
cmp dword [ebp - 0x86c], 0
jne 0x46d012
cmp dword [ebp - 0x16c], 0
jne 0x46cf07
mov dword [ebp - 0x90c], 1
jmp 0x46cf0e
and dword [ebp - 0x90c], 0
push 0
lea ecx, [ebp - 0x968]
call fcn.00401332
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xf00], eax
push 0xfffffffffffffffc
pop eax
imul eax, eax, 0xfffffff6
cmp eax, 0x883f
jg 0x46cf3d
mov dword [ebp - 0x5c0], 1
jmp 0x46cf44
and dword [ebp - 0x5c0], 0
cmp dword [ebp - 0x5c0], 0x58a13c4
je 0x46cf5c
mov dword [ebp - 0x5c8], 1
jmp 0x46cf63
and dword [ebp - 0x5c8], 0
mov eax, dword [ebp - 0x86c]
add eax, dword [ebp - 0x5c8]
cmp eax, 0xffff
ja 0x46cf82
mov dword [ebp - 0x788], 1
jmp 0x46cf89
and dword [ebp - 0x788], 0
mov eax, dword [ebp - 0x788]
mov dword [ebp - 0x470], eax
mov eax, dword [ebp - 0x470]
add eax, dword [ebp - 0xbd0]
cmp eax, 0xfffffff8
jae 0x46cfb2
mov dword [ebp - 0x5d0], 1
jmp 0x46cfb9
and dword [ebp - 0x5d0], 0
push 2
lea ecx, [ebp - 0x968]
call fcn.00401332
mov ecx, dword [ebp - 0x9e0]
sub ecx, dword [ebp - 0x5d0]
imul ecx, dword [eax]
imul ecx, dword [ebp - 0x90c]
mov dword [ebp - 0x3f8], ecx
mov eax, dword [ebp - 0x3f8]
mov dword [ebp - 0xf08], eax
mov eax, dword [ebp - 0x5d8]
mov dword [ebp - 0xf10], eax
mov eax, dword [ebp - 0x5d8]
cmp dword [ebp - 0x470], 0
jne 0x46d012
and dword [ebp - 0x790], 0
jmp 0x46d01c
mov dword [ebp - 0x790], 1
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x790]
mov dword [ebp + eax - 0xec8], ecx
mov dword [ebp - 0x16c], 0
jmp 0x46d048
mov eax, dword [ebp - 0x16c]
inc eax
mov dword [ebp - 0x16c], eax
cmp dword [ebp - 0x16c], 0x18
jl 0x46d077
mov byte [ebp - 0xb4], 0
movzx eax, byte [ebp - 0xb4]
test eax, eax
je 0x46d075
push 0x1ab0
push 0x1c7e
push 0
call dword [0xab60e4]
jmp 0x46d03b
jmp 0x46cec1
jmp 0x46ce90
lea ecx, [ebp - 0x968]
call fcn.0041b70d
jmp 0x46ccc1
mov dword [ebp - 0x18], 3
jmp 0x46d0a1
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jl 0x46d0e0
push dword [ebp - 0x18]
lea ecx, [ebp - 0xeac]
call fcn.00401332
cmp dword [eax], 0
je 0x46d0bc
jmp 0x46d0e0
push 0x4bbc
push 0
lea eax, [ebp - 0x3f8]
push eax
push 0x4856
push 0x142d
push 0
call fcn.00468d44
add esp, 0x18
jmp 0x46d09a
lea ecx, [ebp - 0xeac]
call fcn.0041b70d
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x438]
mov dword [ebp - 0xccc], eax
mov dword [ebp - 0x40], 0xfffffff7
mov dword [ebp - 0x474], 0
mov dword [ebp - 0x798], 0
mov dword [ebp - 0x5e0], 0x2dce
mov dword [ebp - 0x9e8], 0xaa4c20
cmp dword [ebp - 0x5e0], 0x2e02
jle 0x46d1e9
and dword [ebp - 0x258], 0
jmp 0x46d153
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
cmp dword [ebp - 0x258], 0x3a55
jge 0x46d1e9
and dword [ebp - 0x338], 0
jmp 0x46d179
mov eax, dword [ebp - 0x338]
inc eax
mov dword [ebp - 0x338], eax
cmp dword [ebp - 0x338], 0x106f
jge 0x46d1e4
and dword [ebp - 0x260], 0
jmp 0x46d19b
mov eax, dword [ebp - 0x260]
inc eax
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0x715a
jge 0x46d1e2
mov eax, dword [ebp - 0x258]
mov ecx, dword [ebp - 0x338]
sar eax, cl
mov ecx, dword [ebp - 0x260]
shl eax, cl
cdq
mov dword [ebp - 0xb18], eax
mov dword [ebp - 0xb14], edx
push dword [ebp - 0xb14]
push dword [ebp - 0xb18]
mov ecx, 0xab36e8
call fcn.0041b4f7
jmp 0x46d18e
jmp 0x46d16c
jmp 0x46d146
mov dword [ebp - 0x5f8], 0x84255ebd
mov dword [ebp - 4], 0x10
cmp dword [ebp - 0x5e0], 0x2a06
jge 0x46d218
push dword [ebp - 0x9e8]
push 0xab36e8
call fcn.0041cf47
pop ecx
pop ecx
jmp 0x46d234
or dword [ebp - 4], 0xffffffff
jmp 0x46d23e
mov dword [ebp - 0x144], 0x16488a9
mov dword [ebp - 0x7a8], 0x9d9e62b5
mov dword [ebp - 0x618], 0xffffffff
mov dword [ebp - 0x7c], 0
jmp 0x46d26c
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 1
jge 0x46d282
mov eax, dword [ebp - 0x7c]
mov dword [ebp + eax*4 - 0xd74], 0xffffffff
jmp 0x46d265
mov dword [ebp - 0x7c], 0
jmp 0x46d292
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 1
jge 0x46d2a8
mov eax, dword [ebp - 0x7c]
mov dword [ebp + eax*4 - 0xbe8], 0xbc2a41b8
jmp 0x46d28b
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0xfd8], eax
cmp dword [ebp - 0x40], 0xfffffff9
jl 0x46d2c3
mov dword [ebp - 0x874], 1
jmp 0x46d2ca
and dword [ebp - 0x874], 0
mov eax, dword [ebp - 0x474]
mov dword [ebp - 0xbdc], eax
mov eax, dword [ebp - 0x874]
mov dword [ebp - 0x9f0], eax
mov eax, dword [ebp - 0x474]
dec eax
mov dword [ebp - 0x474], eax
mov eax, dword [ebp - 0xbdc]
cmp eax, dword [ebp - 0x9f0]
jge 0x46d309
mov dword [ebp - 0x5e8], 1
jmp 0x46d310
and dword [ebp - 0x5e8], 0
mov eax, dword [ebp - 0x5e8]
mov dword [ebp - 0x798], eax
mov eax, dword [ebp - 0x798]
cmp dword [ebp - 0x40], eax
jne 0x46d333
mov dword [ebp - 0x5f0], 1
jmp 0x46d33a
and dword [ebp - 0x5f0], 0
mov eax, dword [ebp - 0x5f0]
neg eax
cmp dword [ebp - 0x40], eax
jle 0x46d353
mov dword [ebp - 0x440], 1
jmp 0x46d35a
and dword [ebp - 0x440], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x440]
mov dword [ebp + eax - 0xd74], ecx
cmp dword [ebp - 0x440], 1
jle 0x46d382
mov dword [ebp - 0x8dc], 1
jmp 0x46d389
and dword [ebp - 0x8dc], 0
mov eax, dword [ebp - 0x8dc]
mov dword [ebp - 0x5f8], eax
mov eax, dword [ebp - 0x5f8]
add eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x144]
jg 0x46d3b2
mov dword [ebp - 0x7a0], 1
jmp 0x46d3b9
and dword [ebp - 0x7a0], 0
mov eax, dword [ebp - 0x144]
cmp dword [ebp - 0x7a0], eax
jg 0x46d3d3
mov dword [ebp - 0x600], 1
jmp 0x46d3da
and dword [ebp - 0x600], 0
mov eax, dword [ebp - 0x40]
imul eax, dword [ebp - 0x600]
sub eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x40]
je 0x46d3f8
mov dword [ebp - 0x87c], 1
jmp 0x46d3ff
and dword [ebp - 0x87c], 0
cmp dword [ebp - 0x87c], 0xffffffff
ja 0x46d414
mov dword [ebp - 0x608], 1
jmp 0x46d41b
and dword [ebp - 0x608], 0
mov eax, dword [ebp - 0x608]
mov dword [ebp - 0x7a8], eax
mov eax, dword [ebp - 0x7a8]
mov dword [ebp - 0x9f8], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x9f8]
mov dword [ebp + eax - 0xbe8], ecx
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0xfe0], eax
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0xfe8], eax
cmp dword [ebp - 0x40], 0
jne 0x46d476
cmp dword [ebp - 0x144], 0
jne 0x46d476
and dword [ebp - 0x610], 0
jmp 0x46d480
mov dword [ebp - 0x610], 1
mov eax, dword [ebp - 0x40]
add eax, dword [ebp - 0x610]
cmp eax, dword [ebp - 0x618]
je 0x46d49d
mov dword [ebp - 0x934], 1
jmp 0x46d4a4
and dword [ebp - 0x934], 0
mov eax, dword [ebp - 0x934]
mov dword [ebp - 0x618], eax
mov eax, dword [ebp - 0xa00]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x478], eax
push 3
lea ecx, [ebp - 0xd9c]
call fcn.0041b63b
mov dword [ebp - 0x184], 1
push 2
lea ecx, [ebp - 0xd84]
call fcn.0041b63b
mov dword [ebp - 0x64], 0
jmp 0x46d4f3
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 3
jge 0x46d50f
push dword [ebp - 0x64]
lea ecx, [ebp - 0xd9c]
call fcn.00401332
mov dword [eax], 3
jmp 0x46d4ec
mov dword [ebp - 0x64], 0
jmp 0x46d51f
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 2
jge 0x46d53b
push dword [ebp - 0x64]
lea ecx, [ebp - 0xd84]
call fcn.00401332
mov dword [eax], 0x9c90e69c
jmp 0x46d518
push 0x44dd
push 0
push 1
push 0x7eb2
push 0x2917
lea eax, [ebp - 0xd84]
push eax
push 1
push 0x3bb0
lea eax, [ebp - 0xd9c]
push eax
lea eax, [ebp - 0x184]
push eax
call fcn.004697e1
add esp, 0x28
mov dword [ebp - 0x184], 0x15
jmp 0x46d58b
mov eax, dword [ebp - 0x184]
dec eax
mov dword [ebp - 0x184], eax
cmp dword [ebp - 0x184], 0
je 0x46d618
mov dword [ebp - 0xcd4], 0x6243a5d8
mov dword [ebp - 0xa08], 9
mov dword [ebp - 0xbf4], 0xe094bf7d
push 0
lea eax, [ebp - 0xd9c]
push eax
lea eax, [ebp - 0xcd4]
push eax
lea eax, [ebp - 0xa08]
push eax
lea eax, [ebp - 0xbf4]
push eax
lea eax, [ebp - 0xd84]
push eax
call fcn.00469783
add esp, 0x18
mov byte [ebp - 0xe7], 0
movzx eax, byte [ebp - 0xe7]
test eax, eax
je 0x46d613
push 0x593e
push 0
push 0x211
push 0x42a5
push 0x4ac6
call fcn.0048201e
add esp, 0x14
jmp 0x46d57e
lea ecx, [ebp - 0xd84]
call fcn.0041b70d
lea ecx, [ebp - 0xd9c]
call fcn.0041b70d
mov dword [ebp - 0xcc], 0x1c76d7be
mov dword [ebp - 0x7b0], 0xfffffff9
mov dword [ebp - 0x48], 0
jmp 0x46d652
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 1
jge 0x46d668
mov eax, dword [ebp - 0x48]
mov dword [ebp + eax*4 - 0xa10], 0xf21009d4
jmp 0x46d64b
mov dword [ebp - 0x48], 0
jmp 0x46d678
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 3
jge 0x46d68e
mov eax, dword [ebp - 0x48]
mov dword [ebp + eax*4 - 0x11c4], 0x13923cc
jmp 0x46d671
mov dword [ebp - 0x630], 0xdf5
mov dword [ebp - 0xc4c], 0xaa4c54
cmp dword [ebp - 0x630], 0x1030
jle 0x46d726
and dword [ebp - 0x3a8], 0
jmp 0x46d6c4
mov eax, dword [ebp - 0x3a8]
inc eax
mov dword [ebp - 0x3a8], eax
cmp dword [ebp - 0x3a8], 0x2ec3
jge 0x46d726
and dword [ebp - 0x268], 0
jmp 0x46d6e6
mov eax, dword [ebp - 0x268]
inc eax
mov dword [ebp - 0x268], eax
cmp dword [ebp - 0x268], 0x6a1
jge 0x46d724
mov eax, dword [ebp - 0x3a8]
imul eax, dword [ebp - 0x268]
cdq
mov dword [ebp - 0xb24], eax
mov dword [ebp - 0xb20], edx
push dword [ebp - 0xb20]
push dword [ebp - 0xb24]
mov ecx, 0xab36e8
call fcn.0041b4f7
jmp 0x46d6d9
jmp 0x46d6b7
mov eax, dword [ebp - 0xcc]
cmp dword [ebp - 0xcc], eax
jl 0x46d740
mov dword [ebp - 0x48c], 1
jmp 0x46d747
and dword [ebp - 0x48c], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x48c]
mov dword [ebp + eax - 0xa10], ecx
mov eax, dword [ebp - 0x48c]
sub eax, dword [ebp - 0xcc]
mov dword [ebp - 0x7b0], eax
mov eax, dword [ebp - 0x7b0]
cmp dword [ebp - 0xcc], eax
jg 0x46d786
mov dword [ebp - 0x620], 1
jmp 0x46d78d
and dword [ebp - 0x620], 0
mov eax, dword [ebp - 0xcc]
cmp dword [ebp - 0x620], eax
je 0x46d7a7
mov dword [ebp - 0x884], 1
jmp 0x46d7ae
and dword [ebp - 0x884], 0
mov eax, dword [ebp - 0xcc]
cmp dword [ebp - 0x884], eax
jne 0x46d7cf
push 8
pop eax
test eax, eax
je 0x46d7cf
mov dword [ebp - 0x628], 1
jmp 0x46d7d6
and dword [ebp - 0x628], 0
mov eax, dword [ebp - 0xcc]
cmp dword [ebp - 0x628], eax
jl 0x46d7f0
mov dword [ebp - 0x7b8], 1
jmp 0x46d7f7
and dword [ebp - 0x7b8], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x7b8]
mov dword [ebp + eax - 0x11c4], ecx
mov dword [ebp - 4], 0x12
cmp dword [ebp - 0x630], 0xcb9
jge 0x46d82f
push dword [ebp - 0xc4c]
push 0xab36e8
call fcn.0041cf47
pop ecx
pop ecx
jmp 0x46d84b
or dword [ebp - 4], 0xffffffff
jmp 0x46d855
mov dword [ebp - 0x3c], 0xfffffff7
mov dword [ebp - 0xddc], 3
mov dword [ebp - 0xdd8], 3
mov dword [ebp - 0xdd4], 3
mov dword [ebp - 0xdd0], 3
lea ecx, [ebp - 0x41d]
call fcn.0041b729
push eax
lea eax, [ebp - 0xdcc]
push eax
lea eax, [ebp - 0xddc]
push eax
lea ecx, [ebp - 0x123c]
call fcn.0041b72c
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x4b0]
call fcn.0041b6e7
mov dword [ebp - 0xd4], 0x18885c6f
mov dword [ebp - 0x7c0], 0xf2b8319b
mov dword [ebp - 0xd4], 0
jmp 0x46d8e6
mov eax, dword [ebp - 0xd4]
inc eax
mov dword [ebp - 0xd4], eax
cmp dword [ebp - 0xd4], 3
jg 0x46def7
mov dword [ebp - 0x20], 0
mov byte [ebp - 0xb6], 0
movzx eax, byte [ebp - 0xb6]
test eax, eax
je 0x46d92f
push 0x44be
push 0x7c61
push 0x55de
push 0x31cf
push 0
push 0x392b
call fcn.00477eb2
add esp, 0x18
mov dword [ebp - 0x20], 0
jmp 0x46d93f
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jg 0x46def2
mov dword [ebp - 0xa0], 0xe9323d1b
mov dword [ebp - 0x278], 0xfff9
mov dword [ebp - 0xa20], 0xfffffffd
mov dword [ebp - 0xa0], 3
jmp 0x46d980
cmp dword [ebp - 0xa0], 0
jl 0x46deed
mov dword [ebp - 0x110], 0xffffffff
mov dword [ebp - 0x340], 0
jmp 0x46d9b0
mov eax, dword [ebp - 0x340]
inc eax
mov dword [ebp - 0x340], eax
cmp dword [ebp - 0x340], 3
jge 0x46d9cc
mov eax, dword [ebp - 0x340]
mov dword [ebp + eax*4 - 0x10e8], 0x29ba
jmp 0x46d9a3
mov dword [ebp - 0x8ec], 0x15dc
mov dword [ebp - 0xc60], 0xaa4c70
cmp dword [ebp - 0x8ec], 0x172f
jle 0x46da63
and dword [ebp - 0x270], 0
jmp 0x46da02
mov eax, dword [ebp - 0x270]
inc eax
mov dword [ebp - 0x270], eax
cmp dword [ebp - 0x270], 0x3f29
jge 0x46da63
and dword [ebp - 0x3e0], 0
jmp 0x46da24
mov eax, dword [ebp - 0x3e0]
inc eax
mov dword [ebp - 0x3e0], eax
cmp dword [ebp - 0x3e0], 0x69ff
jge 0x46da61
mov eax, dword [ebp - 0x270]
xor eax, dword [ebp - 0x3e0]
cdq
mov dword [ebp - 0xb30], eax
mov dword [ebp - 0xb2c], edx
push dword [ebp - 0xb2c]
push dword [ebp - 0xb30]
mov ecx, 0xab36e8
call fcn.0041b4f7
jmp 0x46da17
jmp 0x46d9f5
push dword [ebp - 0xa0]
lea ecx, [ebp - 0x4b0]
call fcn.00401332
mov ecx, dword [ebp - 0xd4]
cmp dword [eax], ecx
jg 0x46da8a
mov dword [ebp - 0x8e4], 1
jmp 0x46da91
and dword [ebp - 0x8e4], 0
mov eax, dword [ebp - 0xa0]
cmp dword [ebp - 0x8e4], eax
je 0x46daab
mov dword [ebp - 0x638], 1
jmp 0x46dab2
and dword [ebp - 0x638], 0
mov eax, dword [ebp - 0x638]
mov dword [ebp - 0x7c0], eax
cmp dword [ebp - 0x7c0], 0x5b3d
jl 0x46dad6
mov dword [ebp - 0x640], 1
jmp 0x46dadd
and dword [ebp - 0x640], 0
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x640], eax
jne 0x46daf4
mov dword [ebp - 0x88c], 1
jmp 0x46dafb
and dword [ebp - 0x88c], 0
push dword [ebp - 0x20]
lea ecx, [ebp - 0x4b0]
call fcn.00401332
mov ecx, dword [ebp - 0x88c]
cmp ecx, dword [eax]
jl 0x46db1f
mov dword [ebp - 0x648], 1
jmp 0x46db26
and dword [ebp - 0x648], 0
mov eax, dword [ebp - 0x648]
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0
jne 0x46db4d
mov eax, 0xfff8
test eax, eax
jne 0x46db4d
mov dword [ebp - 0x7c8], 1
cmp dword [ebp - 0x7c8], 1
jbe 0x46db6c
jmp 0x46d938
jmp 0x46d8d9
lea ecx, [ebp - 0x4b0]
call fcn.0041b70d
mov dword [ebp - 0x458], 0
mov dword [ebp - 0x7e0], 0x3d5f
mov dword [ebp - 0xc0c], 0xaa4cd8
cmp dword [ebp - 0x7e0], 0x3e1f
jle 0x46e02f
and dword [ebp - 0x3b0], 0
jmp 0x46df46
mov eax, dword [ebp - 0x3b0]
inc eax
mov dword [ebp - 0x3b0], eax
cmp dword [ebp - 0x3b0], 0x47ed
jge 0x46e02f
and dword [ebp - 0x288], 0
jmp 0x46df6c
mov eax, dword [ebp - 0x288]
inc eax
mov dword [ebp - 0x288], eax
cmp dword [ebp - 0x288], 0x3bf0
jge 0x46e02a
and dword [ebp - 0x350], 0
jmp 0x46df92
mov eax, dword [ebp - 0x350]
inc eax
mov dword [ebp - 0x350], eax
cmp dword [ebp - 0x350], 0x2c05
jge 0x46e025
and dword [ebp - 0x290], 0
jmp 0x46dfb8
mov eax, dword [ebp - 0x290]
inc eax
mov dword [ebp - 0x290], eax
cmp dword [ebp - 0x290], 0x4ada
jge 0x46e020
mov eax, dword [ebp - 0x3b0]
cdq
idiv dword [ebp - 0x288]
add edx, dword [ebp - 0x350]
or edx, dword [ebp - 0x290]
mov eax, edx
cdq
mov dword [ebp - 0xb48], eax
mov dword [ebp - 0xb44], edx
push dword [ebp - 0xb44]
push dword [ebp - 0xb48]
lea ecx, [ebp - 0x12b8]
call fcn.00401e2f
pop ecx
pop ecx
mov ecx, eax
call fcn.0041b4cc
push eax
call fcn.0048ee0a
pop ecx
lea ecx, [ebp - 0x12b8]
call fcn.00401328
jmp 0x46dfab
jmp 0x46df85
jmp 0x46df5f
jmp 0x46df39
mov dword [ebp - 4], 0x18
cmp dword [ebp - 0x7e0], 0x3bcc
jge 0x46e04e
push dword [ebp - 0xc0c]
call fcn.0048ee0a
pop ecx
jmp 0x46e06a
or dword [ebp - 4], 0xffffffff
jmp 0x46e074
push 2
lea ecx, [ebp - 0x10f8]
call fcn.0041b63b
mov dword [ebp - 0x408], 0xffffffff
mov dword [ebp - 0xff8], 6
push 0x9c7
lea eax, [ebp - 0x1000]
push eax
push 0
push 0x5208
lea eax, [ebp - 0x10f8]
push eax
call fcn.0048227b
add esp, 0x14
mov dword [ebp - 0x408], 1
jmp 0x46e0d0
mov eax, dword [ebp - 0x408]
dec eax
mov dword [ebp - 0x408], eax
cmp dword [ebp - 0x408], 0
jl 0x46e112
mov byte [ebp - 0xb8], 0
movzx eax, byte [ebp - 0xb8]
test eax, eax
je 0x46e110
push 0x7485
push 0x6628
push 0
push 0xa8d
push 0x5f1e
push 0x36ea
push 1
call fcn.00466532
add esp, 0x1c
jmp 0x46e0c3
lea ecx, [ebp - 0x10f8]
call fcn.0041b70d
mov dword [ebp - 0x4ec], 0
mov dword [ebp - 0x358], 0x862fd41e
mov dword [ebp - 0xdf0], 0x97963ba2
mov dword [ebp - 0xdec], 0x97963ba2
mov dword [ebp - 0xde8], 0x97963ba2
mov dword [ebp - 0xde4], 0x97963ba2
lea ecx, [ebp - 0x415]
call fcn.0041b729
push eax
lea eax, [ebp - 0xde0]
push eax
lea eax, [ebp - 0xdf0]
push eax
lea ecx, [ebp - 0x1244]
call fcn.0041b72c
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0xdb4]
call fcn.0041b6e7
mov dword [ebp - 0x6a8], 1
mov dword [ebp - 0x6b0], 0x5bfeb1ec
mov dword [ebp - 0x92c], 2
mov dword [ebp - 0x298], 0
jmp 0x46e1c5
mov eax, dword [ebp - 0x298]
inc eax
mov dword [ebp - 0x298], eax
cmp dword [ebp - 0x298], 1
jge 0x46e1e1
mov eax, dword [ebp - 0x298]
mov dword [ebp + eax*4 - 0xa48], 5
jmp 0x46e1b8
mov dword [ebp - 0x358], 0xfffffffb
jmp 0x46e1fa
mov eax, dword [ebp - 0x358]
dec eax
mov dword [ebp - 0x358], eax
cmp dword [ebp - 0x358], 0xffffffef
jle 0x46e570
mov dword [ebp - 0x2c], 0xde2167fa
mov dword [ebp - 0xa40], 0xeca6696b
mov dword [ebp - 0x2c], 0
jmp 0x46e228
cmp dword [ebp - 0x2c], 0xffffffee
jle 0x46e56b
mov dword [ebp - 0x88], 0x5ed9a924
mov dword [ebp - 0x680], 0x97867a7b
mov dword [ebp - 0xc70], 0
mov dword [ebp - 0x2a0], 0
jmp 0x46e269
cmp dword [ebp - 0x2a0], 4
jge 0x46e285
mov eax, dword [ebp - 0x2a0]
mov dword [ebp + eax*4 - 0x120c], 5
jmp 0x46e25c
cmp dword [ebp - 0x88], 0
je 0x46e29e
jmp 0x46e1ed
push 4
pop eax
imul eax, eax, 0
mov esi, dword [ebp + eax - 0xa48]
push 0
lea ecx, [ebp - 0xdb4]
call fcn.00401332
mov dword [eax], esi
lea ecx, [ebp - 0xdb4]
call fcn.0041b70d
mov dword [ebp - 0x504], 0x84255ebd
mov dword [ebp - 0x128], 0x5912
mov dword [ebp - 0xf8], 2
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0x808], 0xe623b26d
mov dword [ebp - 0x3b8], 0
jmp 0x46e5e2
mov eax, dword [ebp - 0x3b8]
inc eax
mov dword [ebp - 0x3b8], eax
cmp dword [ebp - 0x3b8], 2
jge 0x46e5fe
mov eax, dword [ebp - 0x3b8]
mov dword [ebp + eax*4 - 0x498], 0xc013cef3
jmp 0x46e5d5
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp - 0xf8]
mov dword [ebp - 0x1028], eax
mov eax, dword [ebp - 0xdc]
cmp dword [ebp - 0xdc], eax
je 0x46e636
cmp dword [ebp - 0xf8], 0
jne 0x46e636
and dword [ebp - 0x6c0], 0
jmp 0x46e640
mov dword [ebp - 0x6c0], 1
mov eax, dword [ebp - 0x6c0]
sub eax, dword [ebp - 0x128]
cmp eax, dword [ebp - 0xf8]
jl 0x46e660
mov dword [ebp - 0x8ac], 1
jmp 0x46e667
and dword [ebp - 0x8ac], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x498]
cmp dword [ebp - 0x8ac], eax
jg 0x46e688
mov eax, dword [ebp - 0xa64]
mov dword [ebp - 0xa6c], eax
mov eax, dword [ebp - 0xa6c]
mov dword [ebp - 0xa74], eax
push 0
mov ecx, dword [ebp - 0xa74]
call fcn.00401332
mov dword [ebp - 0x8f0], eax
mov eax, dword [ebp - 0x8f0]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x8f0]
mov dword [ecx], eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret