Function at 0x4514be
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c20b9
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0x3f4
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x54], 0x25b9b55b
mov dword [ebp - 0x1e4], 0x7ecc2443
mov dword [ebp - 0x354], 0x5d764ce3
mov dword [ebp - 0x364], 0xd33d2afd
mov dword [ebp - 0x36c], 1
mov dword [ebp - 0x240], 0xfffffff8
mov dword [ebp - 0x90], 0
jmp 0x451535
mov eax, dword [ebp - 0x90]
inc eax
mov dword [ebp - 0x90], eax
cmp dword [ebp - 0x90], 2
jge 0x451551
mov eax, dword [ebp - 0x90]
mov dword [ebp + eax*4 - 0x3bc], 0xb24adc9f
jmp 0x451528
mov dword [ebp - 0x54], 0
jmp 0x451561
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x14
jle 0x4517eb
mov dword [ebp - 0x34], 8
mov dword [ebp - 0x378], 0xf79facd4
mov dword [ebp - 0x358], 0x498b94be
mov dword [ebp - 0x4c], 0xffffffff
mov dword [ebp - 0x344], 0x70cc321a
mov dword [ebp - 0x340], 0x70cc321a
mov dword [ebp - 0x33c], 0x70cc321a
mov dword [ebp - 0x338], 0x70cc321a
mov dword [ebp - 0x2a8], 0xfffffffa
mov dword [ebp - 0x34], 0
jmp 0x4515cf
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 4
jle 0x4517c0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2b8], 0xe8d55003
mov dword [ebp - 0x2c0], 0xdef5f9ba
mov dword [ebp - 0x6c], 0
jmp 0x451604
mov eax, dword [ebp - 0x6c]
inc eax
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x6c], 1
jge 0x45161a
mov eax, dword [ebp - 0x6c]
mov dword [ebp + eax*4 - 0x298], 0xfffffff7
jmp 0x4515fd
mov dword [ebp - 0x30], 0x16
jmp 0x45162a
mov eax, dword [ebp - 0x30]
dec eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0xfffffff5
jg 0x4517ad
mov dword [ebp - 0x38c], 0xffffffff
push 1
lea ecx, [ebp - 0x2b4]
call fcn.0045315f
mov dword [ebp - 0x11c], 0x804524be
lea eax, [ebp - 0x2b4]
push eax
push 0x64da
push 0x5ff0
push 1
push 0x2dca
push 1
push 0x7eac
push 0x420e
push 1
lea eax, [ebp - 0x360]
push eax
push 0x545d
push 0
push 1
call fcn.0044b64a
add esp, 0x34
cmp dword [ebp - 0x34], 0
jne 0x451787
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x34]
mov dword [ebp + eax - 0x298], ecx
mov eax, dword [ebp - 0x11c]
dec eax
mov dword [ebp - 0x11c], eax
push 0
lea ecx, [ebp - 0x2b4]
call fcn.0045324d
cmp dword [ebp - 0x54], 0
je 0x4516dd
xor eax, eax
je 0x4516dd
mov dword [ebp - 0x1ec], 1
jmp 0x4516e4
and dword [ebp - 0x1ec], 0
mov eax, dword [ebp - 0x240]
cmp dword [ebp - 0x1ec], eax
jg 0x4516fe
mov dword [ebp - 0x2a0], 1
jmp 0x451705
and dword [ebp - 0x2a0], 0
push 0
lea ecx, [ebp - 0x2b4]
call fcn.0045324d
push 0
lea ecx, [ebp - 0x2b4]
call fcn.0045324d
cmp dword [ebp - 0x30], 0xffffffff
jne 0x45172e
cmp dword [ebp - 0x2a8], 0
je 0x45173e
push 0xfffffffffffffffc
pop eax
test eax, eax
je 0x45173e
and dword [ebp - 0x1fc], 0
jmp 0x451748
mov dword [ebp - 0x1fc], 1
mov eax, dword [ebp - 0x30]
cmp dword [ebp - 0x1fc], eax
jge 0x45175f
mov dword [ebp - 0xf8], 1
jmp 0x451766
and dword [ebp - 0xf8], 0
mov dword [ebp - 0x1e4], 0xa23f
mov eax, dword [ebp - 0x1e4]
cmp eax, dword [ebp - 0xf8]
jle 0x451787
and dword [ebp - 0x188], 0
jmp 0x451791
mov dword [ebp - 0x188], 1
mov eax, dword [ebp - 0x188]
mov dword [ebp - 0x2b8], eax
lea ecx, [ebp - 0x2b4]
call fcn.00453231
jmp 0x451623
cmp dword [ebp - 0x2c0], 0
je 0x4517bb
jmp 0x4515c8
jmp 0x4515c8
mov dword [ebp - 0x4c], 0
jmp 0x4517d0
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 4
jge 0x4517e6
mov eax, dword [ebp - 0x4c]
mov dword [ebp + eax*4 - 0x344], 0x18f82ea9
jmp 0x4517c9
jmp 0x45155a
mov eax, dword [ebp + 8]
mov eax, dword [eax + 4]
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0x18], 0xffffffff
mov dword [ebp - 0x44], 0x44455595
mov dword [ebp - 0x100], 0xdb6
mov dword [ebp - 0x2c8], 0xa811f8
cmp dword [ebp - 0x100], 0xf7a
jle 0x4518dd
push 0
push 0
push 0
push 0
call dword [0xa95210]
and dword [ebp - 0x84], 0
jmp 0x45184d
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0x60d0
jge 0x4518dd
and dword [ebp - 0x74], 0
jmp 0x45186a
mov eax, dword [ebp - 0x74]
inc eax
mov dword [ebp - 0x74], eax
cmp dword [ebp - 0x74], 0x5885
jge 0x4518d8
and dword [ebp - 0x5c], 0
jmp 0x451880
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 0x3d2a
jge 0x4518d6
mov eax, dword [ebp - 0x84]
sub eax, dword [ebp - 0x74]
and eax, dword [ebp - 0x5c]
cdq
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x274], edx
push dword [ebp - 0x274]
push dword [ebp - 0x278]
lea ecx, [ebp - 0x3d4]
call fcn.00401963
pop ecx
pop ecx
mov ecx, eax
call fcn.0045303f
push eax
call fcn.004ac267
pop ecx
lea ecx, [ebp - 0x3d4]
call fcn.00453035
jmp 0x451879
jmp 0x451863
jmp 0x451840
and dword [ebp - 4], 0
cmp dword [ebp - 0x100], 0xb2d
jge 0x4518f9
push dword [ebp - 0x2c8]
call fcn.004ac267
pop ecx
jmp 0x451915
or dword [ebp - 4], 0xffffffff
jmp 0x45191f
mov dword [ebp - 0x8c], 0
jmp 0x451938
mov eax, dword [ebp - 0x8c]
inc eax
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0x8c], 2
jge 0x451954
mov eax, dword [ebp - 0x8c]
mov dword [ebp + eax*4 - 0x394], 0x8bbca631
jmp 0x45192b
mov dword [ebp - 0x18], 0
jmp 0x451964
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 1
jg 0x4519ad
mov dword [ebp - 0x1d0], 0xe77ab392
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x1d0], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp + eax*4 - 0x394]
cmp eax, dword [ebp - 0x1d0]
jne 0x45199b
mov dword [ebp - 0x108], 1
jmp 0x4519a2
and dword [ebp - 0x108], 0
mov eax, dword [ebp - 0x108]
mov dword [ebp - 0x44], eax
jmp 0x45195d
mov dword [ebp - 0x44], 0
jmp 0x4519bd
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 1
jge 0x451a14
mov dword [ebp - 0x18], 0x17
jmp 0x4519d3
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xffffffeb
jle 0x451a12
push 0xea4
push 0x2662
push 0xf
push 1
push 0x6686
push 1
push 0x357
push 0x18bb
push 1
push 0x3d9c
push 0x5d26
push 1
push 1
call fcn.0044b64a
add esp, 0x34
jmp 0x4519cc
jmp 0x4519b6
mov dword [ebp - 0x3c], 0xcff0ea75
push 4
lea ecx, [ebp - 0x328]
call fcn.0045315f
mov dword [ebp - 0x264], 0xffffffff
mov dword [ebp - 0x37c], 0x93af8ef
mov dword [ebp - 0x190], 0x61f
mov dword [ebp - 0x2d0], 0xa81240
cmp dword [ebp - 0x190], 0x80b
jle 0x451ad3
and dword [ebp - 0x7c], 0
jmp 0x451a69
mov eax, dword [ebp - 0x7c]
inc eax
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0x2a31
jge 0x451ad3
and dword [ebp - 0x64], 0
jmp 0x451a7f
mov eax, dword [ebp - 0x64]
inc eax
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0x38f8
jge 0x451ad1
mov eax, dword [ebp - 0x7c]
mov ecx, dword [ebp - 0x64]
shl eax, cl
cdq
mov dword [ebp - 0x284], eax
mov dword [ebp - 0x280], edx
push dword [ebp - 0x280]
push dword [ebp - 0x284]
lea ecx, [ebp - 0x3ec]
call fcn.00401963
pop ecx
pop ecx
mov ecx, eax
call fcn.0045303f
push eax
call fcn.004ac267
pop ecx
lea ecx, [ebp - 0x3ec]
call fcn.00453035
jmp 0x451a78
jmp 0x451a62
push 3
lea ecx, [ebp - 0x388]
call fcn.0045315f
mov dword [ebp - 4], 2
cmp dword [ebp - 0x190], 0x291
jge 0x451aff
push dword [ebp - 0x2d0]
call fcn.004ac267
pop ecx
jmp 0x451b1b
or dword [ebp - 4], 0xffffffff
jmp 0x451b25
push 0x1c7e
push 0x1a06
lea eax, [ebp - 0x38]
push eax
push 1
push 1
push 1
push 0x4412
lea eax, [ebp - 0x328]
push eax
push 0x630c
push 0x7afa
call fcn.00443e32
add esp, 0x28
mov dword [ebp - 0x38], 0
jmp 0x451b67
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 3
jge 0x451b80
push dword [ebp - 0x38]
lea ecx, [ebp - 0x388]
call fcn.0045324d
or dword [eax], 0xffffffff
jmp 0x451b60
mov byte [ebp - 0x26], 0
push 1
lea eax, [ebp - 0x26]
push eax
push 1
push 1
push 0x137e
push 0x1c23
push 1
push 0x2f9
push 0x2cdc
push 0x33a5
call fcn.0044be3c
add esp, 0x28
mov dword [ebp - 0x3c], 0
jmp 0x451bc1
mov eax, dword [ebp - 0x3c]
dec eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0xfffffff7
jge 0x451d53
push 3
lea ecx, [ebp - 0x334]
call fcn.0045315f
mov dword [ebp - 0x110], 0x3c34
mov dword [ebp - 0x26c], 0xa812e0
cmp dword [ebp - 0x110], 0x3dc5
jle 0x451c6d
and dword [ebp - 0x68], 0
jmp 0x451c05
mov eax, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x68], eax
cmp dword [ebp - 0x68], 0x41ea
jge 0x451c6d
and dword [ebp - 0x70], 0
jmp 0x451c1b
mov eax, dword [ebp - 0x70]
inc eax
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0x32b2
jge 0x451c6b
mov eax, dword [ebp - 0x68]
sub eax, dword [ebp - 0x70]
cdq
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x28c], edx
push dword [ebp - 0x28c]
push dword [ebp - 0x290]
lea ecx, [ebp - 0x404]
call fcn.00401963
pop ecx
pop ecx
mov ecx, eax
call fcn.0045303f
push eax
call fcn.004ac267
pop ecx
lea ecx, [ebp - 0x404]
call fcn.00453035
jmp 0x451c14
jmp 0x451bfe
mov dword [ebp - 0x294], 0
mov dword [ebp - 4], 4
cmp dword [ebp - 0x110], 0x3b34
jge 0x451c96
push dword [ebp - 0x26c]
call fcn.004ac267
pop ecx
jmp 0x451cb2
or dword [ebp - 4], 0xffffffff
jmp 0x451cbc
mov dword [ebp - 0x250], 9
mov dword [ebp - 0x1f4], 0x1b2d863e
push 1
push 0x1937
push 0x4d53
lea eax, [ebp - 0x334]
push eax
push 1
push 0x2f0a
lea eax, [ebp - 0x368]
push eax
push 0x7f0c
push 1
push 1
push 0x76c9
call fcn.0044c52d
add esp, 0x2c
lea eax, [ebp - 0x264]
push eax
lea eax, [ebp - 0x250]
push eax
lea eax, [ebp - 0x328]
push eax
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x294]
push eax
lea eax, [ebp - 0x334]
push eax
call fcn.00451229
add esp, 0x18
mov eax, dword [ebp - 0x1f4]
inc eax
mov dword [ebp - 0x1f4], eax
lea ecx, [ebp - 0x334]
call fcn.00453231
jmp 0x451bba
lea ecx, [ebp - 0x388]
call fcn.00453231
lea ecx, [ebp - 0x328]
call fcn.00453231
mov eax, dword [ebp + 8]
mov eax, dword [eax]
push 8
pop ecx
imul ecx, ecx, 0
lea eax, [eax + ecx + 0x78]
mov dword [ebp - 0x1e0], eax
mov dword [ebp - 0x2c], 1
mov dword [ebp - 0x268], 0x7187d7a7
mov dword [ebp - 0x2c], 0
jmp 0x451d9f
mov eax, dword [ebp - 0x2c]
dec eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0xfffffff7
jg 0x451ff4
mov dword [ebp - 0x1c], 0xc90a35f3
mov dword [ebp - 0x2c4], 0
mov dword [ebp - 0x260], 0
mov dword [ebp - 0x1c], 0xffffffee
jmp 0x451dd4
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0xfffffff0
jge 0x451fef
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0xd4], 0xe7bf1993
mov dword [ebp - 0x258], 0xa5bed857
mov dword [ebp - 0x29c], 2
mov dword [ebp - 0x24], 6
jmp 0x451e13
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x1b
jg 0x451f94
mov dword [ebp - 0x128], 0xffffffff
mov dword [ebp - 0x130], 0xfffffff8
mov dword [ebp - 0x78], 0
jmp 0x451e41
mov eax, dword [ebp - 0x78]
inc eax
mov dword [ebp - 0x78], eax
cmp dword [ebp - 0x78], 3
jge 0x451e57
mov eax, dword [ebp - 0x78]
mov dword [ebp + eax*4 - 0x3a4], 0x421d
jmp 0x451e3a
call fcn.004512ff
cmp dword [ebp - 0x24], 0
jne 0x451f3f
cmp dword [ebp - 0x24], 0
je 0x451e78
mov dword [ebp - 0x118], 1
jmp 0x451e7f
and dword [ebp - 0x118], 0
mov eax, dword [ebp - 0x2c]
cmp dword [ebp - 0x118], eax
je 0x451e96
mov dword [ebp - 0xac], 1
jmp 0x451e9d
and dword [ebp - 0xac], 0
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0xac]
mov dword [ebp + eax - 0x3a4], ecx
mov eax, dword [ebp - 0x24]
cmp dword [ebp - 0xac], eax
jg 0x451ec6
mov dword [ebp - 0x198], 1
jmp 0x451ecd
and dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x198], eax
jge 0x451eed
mov eax, 0x4087
test eax, eax
je 0x451eed
mov dword [ebp - 0x120], 1
jmp 0x451ef4
and dword [ebp - 0x120], 0
mov eax, dword [ebp - 0x120]
sub eax, dword [ebp - 0x1c]
push 0xfffffffffffffffe
pop ecx
sub ecx, eax
cmp ecx, 0xfffffff9
ja 0x451f13
mov dword [ebp - 0x1d8], 1
jmp 0x451f1a
and dword [ebp - 0x1d8], 0
mov eax, dword [ebp - 0x1d8]
mov dword [ebp - 0x128], eax
cmp dword [ebp - 0x128], 0
jne 0x451f3f
push 0xfffffffffffffffc
pop eax
test eax, eax
jne 0x451f3f
and dword [ebp - 0x1a0], 0
jmp 0x451f49
mov dword [ebp - 0x1a0], 1
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x130]
sub eax, dword [ebp - 0x1c]
mov dword [ebp - 0xd4], eax
cmp dword [ebp - 0xd4], 0x7649
jl 0x451f7c
mov dword [ebp - 0x1f8], 1
jmp 0x451f83
and dword [ebp - 0x1f8], 0
mov eax, dword [ebp - 0x1f8]
mov dword [ebp - 0x258], eax
jmp 0x451e0c
push 0
lea eax, [ebp - 0x1c]
push eax
push 0x7011
lea eax, [ebp - 0x2c]
push eax
push 1
push 0x6a28
lea eax, [ebp - 0x2c4]
push eax
push 0x5032
push 0x21f6
lea eax, [ebp - 0x260]
push eax
push 1
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0xd4]
push eax
push 0x18cf
lea eax, [ebp - 0x29c]
push eax
lea eax, [ebp - 0x268]
push eax
call fcn.0044718e
add esp, 0x40
jmp 0x451dcd
jmp 0x451d98
mov eax, dword [ebp - 0x1e0]
cmp dword [eax + 4], 0
jne 0x452007
xor eax, eax
jmp 0x452fcf
push 1
lea ecx, [ebp - 0x224]
call fcn.0045315f
mov dword [ebp - 0xcc], 0xf3de0369
lea eax, [ebp - 0x224]
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.0045133a
pop ecx
pop ecx
mov dword [ebp - 0x40], 0
jmp 0x452040
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 1
jge 0x452056
mov eax, dword [ebp - 0x40]
mov dword [ebp + eax*4 - 0xbc], 0x8a835a23
jmp 0x452039
push 0
lea ecx, [ebp - 0x224]
call fcn.0045324d
push 0
lea ecx, [ebp - 0x224]
call fcn.0045324d
cmp dword [eax], 0
jne 0x452090
push 0
lea ecx, [ebp - 0x224]
call fcn.0045324d
cmp dword [eax], 0
jne 0x452090
and dword [ebp - 0xb4], 0
jmp 0x45209a
mov dword [ebp - 0xb4], 1
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xb4]
mov dword [ebp + eax - 0xbc], ecx
cmp dword [ebp - 0xb4], 0xfff9
jbe 0x4520c5
mov dword [ebp - 0x138], 1
jmp 0x4520cc
and dword [ebp - 0x138], 0
push 0
lea ecx, [ebp - 0x224]
call fcn.0045324d
mov eax, dword [eax]
cmp eax, dword [ebp - 0x138]
je 0x4520ef
mov dword [ebp - 0x1a8], 1
jmp 0x4520f6
and dword [ebp - 0x1a8], 0
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0xcc], eax
push 0
lea ecx, [ebp - 0x224]
call fcn.0045324d
mov eax, dword [eax]
mov dword [ebp - 0xcc], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0xbc]
cmp eax, dword [ebp - 0xcc]
jg 0x452138
mov dword [ebp - 0x140], 1
jmp 0x45213f
and dword [ebp - 0x140], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x140]
mov dword [ebp + eax - 0xbc], ecx
lea ecx, [ebp - 0x224]
call fcn.00453231
push 0x1959
push 1
push 0x2f08
push 0xd
push 0x1c78
lea eax, [ebp - 0x1e0]
push eax
push 0xf13
push 1
push 0x7cda
push 0x74ed
push 0x52fd
push 1
lea eax, [ebp - 0xc8]
push eax
push 1
lea eax, [ebp - 0xd0]
push eax
push 1
push 0x1f
call fcn.00446460
add esp, 0x44
mov dword [ebp - 0x20], 0xfffffffd
mov dword [ebp - 0x50], 0xffffffff
mov dword [ebp - 0x1f0], 0
mov dword [ebp - 0x88], 0xb6a7f4ea
mov dword [ebp - 0x80], 0xffffffff
mov dword [ebp - 0xdc], 0x3acb6d6
push 2
lea ecx, [ebp - 0xe8]
call fcn.0045315f
mov dword [ebp - 0x2f8], 0x1af6658d
mov dword [ebp - 0x2f4], 0x1af6658d
mov dword [ebp - 0x2f0], 0x1af6658d
mov dword [ebp - 0x2ec], 0x1af6658d
lea ecx, [ebp - 0xa1]
call fcn.0045325c
push eax
lea eax, [ebp - 0x2e8]
push eax
lea eax, [ebp - 0x2f8]
push eax
lea ecx, [ebp - 0x3ac]
call fcn.0045325f
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x218]
call fcn.0045320b
mov dword [ebp - 0x2e4], 0x307b364f
mov dword [ebp - 0x2e0], 0x307b364f
mov dword [ebp - 0x2dc], 0x307b364f
mov dword [ebp - 0x2d8], 0x307b364f
lea ecx, [ebp - 0xd5]
call fcn.0045325c
push eax
lea eax, [ebp - 0x2d4]
push eax
lea eax, [ebp - 0x2e4]
push eax
lea ecx, [ebp - 0x3b4]
call fcn.0045325f
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x208]
call fcn.0045320b
mov dword [ebp - 0x2a4], 0xbd5ced4b
mov dword [ebp - 0x48], 0
jmp 0x4522bf
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 3
jge 0x4522d5
mov eax, dword [ebp - 0x48]
mov dword [ebp + eax*4 - 0x31c], 0xffffffff
jmp 0x4522b8
lea eax, [ebp - 0xe8]
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.00451382
pop ecx
pop ecx
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1f0], eax
mov dword [ebp - 0x88], 0xfffffff7
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x148], eax
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0x148]
mov dword [ebp + eax - 0x31c], ecx
cmp dword [ebp - 0x148], 0xd77c
jl 0x45232e
mov dword [ebp - 0x1b0], 1
jmp 0x452335
and dword [ebp - 0x1b0], 0
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x1b0]
je 0x45234c
mov dword [ebp - 0x150], 1
jmp 0x452353
and dword [ebp - 0x150], 0
mov eax, dword [ebp - 0xdc]
cmp dword [ebp - 0x150], eax
jne 0x45236d
mov dword [ebp - 0x20c], 1
jmp 0x452374
and dword [ebp - 0x20c], 0
cmp dword [ebp - 0x20c], 0
je 0x452389
mov dword [ebp - 0x158], 1
jmp 0x452390
and dword [ebp - 0x158], 0
mov eax, dword [ebp - 0xdc]
cmp dword [ebp - 0x158], eax
jl 0x4523aa
mov dword [ebp - 0x1b8], 1
jmp 0x4523b1
and dword [ebp - 0x1b8], 0
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0xdc], eax
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x31c], 0
jne 0x4523de
cmp dword [ebp - 0x88], 0
jne 0x4523de
and dword [ebp - 0x160], 0
jmp 0x4523e8
mov dword [ebp - 0x160], 1
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x160], eax
jne 0x4523ff
mov dword [ebp - 0x1e8], 1
jmp 0x452406
and dword [ebp - 0x1e8], 0
mov eax, dword [ebp - 0x80]
cmp dword [ebp - 0x1e8], eax
jle 0x45241d
mov dword [ebp - 0x168], 1
jmp 0x452424
and dword [ebp - 0x168], 0
mov dword [ebp - 0x50], 5
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x168]
jge 0x452442
mov dword [ebp - 0x1c0], 1
jmp 0x452449
and dword [ebp - 0x1c0], 0
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x1c0], eax
jne 0x452460
mov dword [ebp - 0x2bc], 1
jmp 0x452467
and dword [ebp - 0x2bc], 0
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x398], eax
push 0
lea ecx, [ebp - 0xe8]
call fcn.0045324d
mov ecx, dword [ebp - 0x20]
cmp dword [eax], ecx
jge 0x452490
mov dword [ebp - 0x170], 1
jmp 0x452497
and dword [ebp - 0x170], 0
push 0
lea ecx, [ebp - 0xe8]
call fcn.0045324d
mov ecx, dword [ebp - 0x170]
cmp ecx, dword [eax]
jge 0x4524ba
mov dword [ebp - 0x270], 1
jmp 0x4524c1
and dword [ebp - 0x270], 0
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x350], eax
cmp dword [ebp - 0x20], 0
je 0x4524dd
push 1
lea ecx, [ebp - 0x218]
call fcn.0045324d
mov eax, 0x4415
imul esi, eax, 3
push 0
lea ecx, [ebp - 0x208]
call fcn.0045324d
mov dword [eax], esi
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x348], eax
push 0
lea ecx, [ebp - 0xe8]
call fcn.0045324d
mov esi, eax
push 0
lea ecx, [ebp - 0x218]
call fcn.0045324d
mov ecx, dword [esi]
cmp ecx, dword [eax]
jl 0x45252b
mov dword [ebp - 0x178], 1
jmp 0x452532
and dword [ebp - 0x178], 0
mov eax, dword [ebp - 0x1f0]
cmp dword [ebp - 0x178], eax
jg 0x45254c
mov dword [ebp - 0x1c8], 1
jmp 0x452553
and dword [ebp - 0x1c8], 0
cmp dword [ebp - 0x1c8], 0x93a39d8e
jbe 0x45256b
mov dword [ebp - 0x180], 1
jmp 0x452572
and dword [ebp - 0x180], 0
push 1
lea ecx, [ebp - 0xe8]
call fcn.0045324d
mov esi, dword [eax]
imul esi, dword [ebp - 0x180]
push 1
lea ecx, [ebp - 0x218]
call fcn.0045324d
cmp esi, dword [eax]
jl 0x4525a5
mov dword [ebp - 0xf0], 1
jmp 0x4525ac
and dword [ebp - 0xf0], 0
push 4
pop eax
shl eax, 1
mov ecx, dword [ebp - 0xf0]
mov dword [ebp + eax - 0x31c], ecx
push 7
pop eax
cmp eax, 1
jle 0x4525d2
mov dword [ebp - 0xf4], 1
jmp 0x4525d9
and dword [ebp - 0xf4], 0
push 0
lea ecx, [ebp - 0x208]
call fcn.0045324d
mov ecx, dword [ebp - 0xf4]
cmp ecx, dword [eax]
je 0x4525fc
mov dword [ebp - 0xfc], 1
jmp 0x452603
and dword [ebp - 0xfc], 0
mov esi, dword [ebp - 0xfc]
add esi, 0xc20
push 0
lea ecx, [ebp - 0xe8]
call fcn.0045324d
imul esi, dword [eax]
add esi, dword [ebp - 0x80]
cmp esi, dword [ebp - 0x50]
je 0x45263a
push 0xfffffffffffffff6
pop eax
test eax, eax
je 0x45263a
mov dword [ebp - 0x104], 1
jmp 0x452641
and dword [ebp - 0x104], 0
push 0
lea ecx, [ebp - 0xe8]
call fcn.0045324d
mov ecx, dword [ebp - 0x104]
sub ecx, dword [eax]
cmp ecx, 0xffffffff
je 0x452667
mov dword [ebp - 0x10c], 1
jmp 0x45266e
and dword [ebp - 0x10c], 0
push 1
lea ecx, [ebp - 0x218]
call fcn.0045324d
mov ecx, dword [ebp - 0x10c]
cmp ecx, dword [eax]
jl 0x4526a0
push 0
lea ecx, [ebp - 0x208]
call fcn.0045324d
cmp dword [eax], 0
jne 0x4526a0
and dword [ebp - 0x114], 0
jmp 0x4526aa
mov dword [ebp - 0x114], 1
mov eax, dword [ebp - 0x88]
cmp dword [ebp - 0x114], eax
jl 0x4526c4
mov dword [ebp - 0xec], 1
jmp 0x4526cb
and dword [ebp - 0xec], 0
mov eax, dword [ebp - 0xec]
sub eax, dword [ebp - 0x50]
cmp eax, 0x99c826ff
je 0x4526e7
mov dword [ebp - 0x124], 1
jmp 0x4526ee
and dword [ebp - 0x124], 0
push 0
lea ecx, [ebp - 0xe8]
call fcn.0045324d
mov ecx, dword [ebp - 0x124]
cmp ecx, dword [eax]
jl 0x452711
mov dword [ebp - 0x12c], 1
jmp 0x452718
and dword [ebp - 0x12c], 0
push 0
lea ecx, [ebp - 0x208]
call fcn.0045324d
mov esi, dword [ebp - 0x12c]
sub esi, dword [eax]
push 1
lea ecx, [ebp - 0x218]
call fcn.0045324d
cmp esi, dword [eax]
jne 0x45274e
xor eax, eax
je 0x45274e
mov dword [ebp - 0x134], 1
jmp 0x452755
and dword [ebp - 0x134], 0
mov eax, dword [ebp - 0x88]
cmp dword [ebp - 0x134], eax
jl 0x45276f
mov dword [ebp - 0x13c], 1
jmp 0x452776
and dword [ebp - 0x13c], 0
push 1
lea ecx, [ebp - 0x218]
call fcn.0045324d
mov ecx, dword [ebp - 0x13c]
cmp ecx, dword [eax]
jl 0x4527a8
push 0
lea ecx, [ebp - 0x208]
call fcn.0045324d
cmp dword [eax], 0
jne 0x4527a8
and dword [ebp - 0x144], 0
jmp 0x4527b2
mov dword [ebp - 0x144], 1
push 0
lea ecx, [ebp - 0x208]
call fcn.0045324d
mov ecx, dword [ebp - 0x144]
sub ecx, dword [eax]
imul ecx, dword [ebp - 0x50]
cmp ecx, 0x197e
jne 0x4527df
mov dword [ebp - 0xc4], 1
jmp 0x4527e6
and dword [ebp - 0xc4], 0
push 0
lea ecx, [ebp - 0x208]
call fcn.0045324d
mov ecx, dword [ebp - 0xc4]
mov dword [eax], ecx
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x2a4], eax
lea ecx, [ebp - 0x208]
call fcn.00453231
lea ecx, [ebp - 0x218]
call fcn.00453231
lea ecx, [ebp - 0xe8]
call fcn.00453231
mov eax, dword [ebp - 0xc8]
cmp dword [eax + 0x14], 0
jne 0x452bcd
mov dword [ebp - 0xb8], 0xffff
push 2
lea ecx, [ebp - 0x310]
call fcn.0045315f
push 1
lea ecx, [ebp - 0x304]
call fcn.0045315f
mov dword [ebp - 0x94], 2
mov dword [ebp - 0x16c], 0xfffffff9
mov dword [ebp - 0x17c], 1
mov dword [ebp - 0xb0], 0xfffe
mov dword [ebp - 0x24c], 0xfffffff7
mov dword [ebp - 0x1ac], 0
push 0x5c80
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x310]
push eax
push 0x13b9
push 1
push 1
push 0x5d2f
push 1
push 1
call fcn.0044dd00
add esp, 0x24
mov dword [ebp - 0x14], 0
jmp 0x4528d2
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 1
jge 0x4528ee
push dword [ebp - 0x14]
lea ecx, [ebp - 0x304]
call fcn.0045324d
mov dword [eax], 0xc924b541
jmp 0x4528cb
mov dword [ebp - 0x14], 0
jmp 0x4528fe
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 3
jge 0x452914
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x23c], 0x39cee24b
jmp 0x4528f7
mov dword [ebp - 0x14], 0
jmp 0x452924
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x45293a
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x374], 0x4acd6ba
jmp 0x45291d
push 0
lea ecx, [ebp - 0x304]
call fcn.0045324d
mov dword [ebp - 0xa8], eax
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x27c], eax
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax]
mov dword [ebp - 0x2cc], eax
mov eax, dword [ebp - 0xa8]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0xa8]
mov dword [ecx], eax
mov eax, dword [ebp - 0x27c]
cmp eax, dword [ebp - 0x2cc]
jg 0x452992
mov dword [ebp - 0x19c], 1
jmp 0x452999
and dword [ebp - 0x19c], 0
cmp dword [ebp - 0xb8], 0
je 0x4529be
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x23c], 0
je 0x4529be
mov dword [ebp - 0x14c], 1
jmp 0x4529c5
and dword [ebp - 0x14c], 0
cmp dword [ebp - 0x14c], 0xfffffff9
jg 0x4529da
mov dword [ebp - 0x154], 1
jmp 0x4529e1
and dword [ebp - 0x154], 0
mov eax, dword [ebp - 0x94]
cmp dword [ebp - 0x154], eax
jl 0x4529fb
mov dword [ebp - 0x288], 1
jmp 0x452a02
and dword [ebp - 0x288], 0
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x23c]
mov dword [ebp - 0x35c], eax
imul eax, dword [ebp - 0x94], 0xecdc
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x94]
push 4
pop ecx
imul ecx, ecx, 0
add eax, dword [ebp + ecx - 0x23c]
push 4
pop ecx
shl ecx, 0
cmp eax, dword [ebp + ecx - 0x23c]
jl 0x452a53
mov dword [ebp - 0x15c], 1
jmp 0x452a5a
and dword [ebp - 0x15c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x374]
cmp dword [ebp - 0x15c], eax
jle 0x452a7b
mov dword [ebp - 0x164], 1
jmp 0x452a82
and dword [ebp - 0x164], 0
mov eax, dword [ebp - 0x164]
mov dword [ebp - 0x16c], eax
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x23c]
cmp eax, dword [ebp - 0x16c]
jne 0x452aaf
mov dword [ebp - 0x174], 1
jmp 0x452ab6
and dword [ebp - 0x174], 0
mov eax, dword [ebp - 0x174]
mov dword [ebp - 0x17c], eax
cmp dword [ebp - 0x17c], 0
jne 0x452add
cmp dword [ebp - 0xb0], 0
jne 0x452add
and dword [ebp - 0x184], 0
jmp 0x452ae7
mov dword [ebp - 0x184], 1
mov eax, dword [ebp - 0xb0]
cmp dword [ebp - 0x184], eax
jne 0x452b01
mov dword [ebp - 0x18c], 1
jmp 0x452b08
and dword [ebp - 0x18c], 0
imul eax, dword [ebp - 0x18c], 0x451
test eax, eax
je 0x452b2b
mov eax, 0xffff
test eax, eax
je 0x452b2b
mov dword [ebp - 0x194], 1
jmp 0x452b32
and dword [ebp - 0x194], 0
mov eax, dword [ebp - 0xb0]
cmp dword [ebp - 0x194], eax
jl 0x452b4c
mov dword [ebp - 0x248], 1
jmp 0x452b53
and dword [ebp - 0x248], 0
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x34c], eax
push 1
lea ecx, [ebp - 0x310]
call fcn.0045324d
mov ecx, dword [ebp - 0x19c]
mov dword [eax], ecx
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x23c], 7
jg 0x452b90
mov dword [ebp - 0x1a4], 1
jmp 0x452b97
and dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x24c], eax
mov eax, dword [ebp - 0x1ac]
dec eax
mov dword [ebp - 0x1ac], eax
lea ecx, [ebp - 0x304]
call fcn.00453231
lea ecx, [ebp - 0x310]
call fcn.00453231
xor eax, eax
jmp 0x452fcf
push 0x375
push 1
push 0xff2
push 1
push 0x7d4a
push 0x71b6
push 1
push 0x1713
push 0x594a
push 0x31ab
push 0x60ac
push 0x64d9
push 0x6783
push 0x34c3
call fcn.0044e279
add esp, 0x38
mov eax, dword [ebp - 0xc8]
mov ecx, dword [ebp + 0xc]
cmp ecx, dword [eax + 0x14]
jbe 0x452d0a
mov dword [ebp - 0x58], 1
push 0x4cd
push 1
push 0x699d
push 0x4180
push 1
push 0x49a
lea eax, [ebp - 0x58]
push eax
push 0x70c
push 0x46f2
push 0x5285
push 1
push 1
push 0x4ee7
push 0x7b08
push 0x46a5
push 0x1e9a
push 0x7f25
push 0x408f
push 1
push 0x1f22
push 0x6a46
call fcn.0044e69a
add esp, 0x54
mov dword [ebp - 0x58], 0
jmp 0x452c9c
mov eax, dword [ebp - 0x58]
inc eax
mov dword [ebp - 0x58], eax
cmp dword [ebp - 0x58], 6
jl 0x452d03
mov byte [ebp - 0x25], 0
movzx eax, byte [ebp - 0x25]
test eax, eax
je 0x452cb3
call fcn.004513ca
push 0xf07
push 0x46aa
push 0x60f0
push 0x2413
push 0x4ea4
push 0x2b1d
push 0x52b9
push 0x29ec
push 0x1e4c
push 0x1227
push 1
push 1
push 0x1cd2
push 0x7fc2
push 1
push 1
push 1
call fcn.0044f317
add esp, 0x44
jmp 0x452c95
xor eax, eax
jmp 0x452fcf
push 2
lea ecx, [ebp - 0x230]
call fcn.0045315f
push 1
lea ecx, [ebp - 0xa0]
call fcn.0045315f
mov dword [ebp - 0x60], 7
push 1
lea eax, [ebp - 0x230]
push eax
push 0x4b12
lea eax, [ebp - 0x254]
push eax
push 0x28
push 1
push 0x315d
push 1
push 0x1e16
push 0xc1b
call fcn.0044fa3b
add esp, 0x28
push 1
push 1
push 0xf23
push 0x625d
lea eax, [ebp - 0xa0]
push eax
push 0x39bd
push 1
lea eax, [ebp - 0x254]
push eax
call fcn.004493f9
add esp, 0x20
push 0
lea ecx, [ebp - 0xa0]
call fcn.0045324d
and dword [eax], 0
jmp 0x452dbe
push 0
lea ecx, [ebp - 0xa0]
call fcn.0045324d
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp - 0x1b4]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x1b4]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0xa0]
call fcn.0045324d
cmp dword [eax], 1
jg 0x452f8d
mov dword [ebp - 0xc0], 0xfffffff9
push 1
lea ecx, [ebp - 0x230]
call fcn.0045324d
mov eax, dword [eax]
mov dword [ebp - 0x60], eax
cmp dword [ebp - 0x60], 0
je 0x452e33
push 0
lea ecx, [ebp - 0xa0]
call fcn.0045324d
push dword [eax]
lea ecx, [ebp - 0x230]
call fcn.0045324d
mov esi, eax
push 0
lea ecx, [ebp - 0xa0]
call fcn.0045324d
mov eax, dword [eax]
neg eax
cmp dword [esi], eax
jg 0x452e33
mov dword [ebp - 0x1bc], 1
jmp 0x452e3a
and dword [ebp - 0x1bc], 0
push 0
lea ecx, [ebp - 0xa0]
call fcn.0045324d
push dword [eax]
lea ecx, [ebp - 0x230]
call fcn.0045324d
mov eax, dword [eax]
cmp eax, dword [ebp - 0x1bc]
jle 0x452e6a
mov dword [ebp - 0x1d4], 1
jmp 0x452e71
and dword [ebp - 0x1d4], 0
push 0
lea ecx, [ebp - 0xa0]
call fcn.0045324d
mov esi, eax
push 0
lea ecx, [ebp - 0xa0]
call fcn.0045324d
mov ecx, dword [esi]
cmp ecx, dword [eax]
jle 0x452e9f
mov dword [ebp - 0x1c4], 1
jmp 0x452ea6
and dword [ebp - 0x1c4], 0
push 0
lea ecx, [ebp - 0xa0]
call fcn.0045324d
push dword [eax]
lea ecx, [ebp - 0x230]
call fcn.0045324d
mov ecx, dword [ebp - 0x1c4]
cmp ecx, dword [eax]
jg 0x452ed6
mov dword [ebp - 0x1cc], 1
jmp 0x452edd
and dword [ebp - 0x1cc], 0
mov eax, dword [ebp - 0xc0]
imul eax, dword [ebp - 0x1cc]
test eax, eax
jne 0x452f09
push 0
lea ecx, [ebp - 0xa0]
call fcn.0045324d
cmp dword [eax], 0
jne 0x452f09
and dword [ebp - 0x1dc], 0
jmp 0x452f13
mov dword [ebp - 0x1dc], 1
mov eax, dword [ebp - 0x1d4]
sub eax, dword [ebp - 0x1dc]
je 0x452f35
lea eax, [ebp - 0xc0]
push eax
lea eax, [ebp - 0x60]
push eax
call fcn.004513e1
pop ecx
pop ecx
jmp 0x452f7a
mov dword [ebp - 0x25c], 0xfffffff9
push 0x79ca
push 0x23dc
push 0x1101
push 1
push 1
push 0x1a1e
lea eax, [ebp - 0x25c]
push eax
push 0x3d30
push 1
push 1
push 0x154e
push 1
lea eax, [ebp - 0x60]
push eax
call fcn.00450fa4
add esp, 0x34
cmp dword [ebp - 0xc0], 0
je 0x452f88
jmp 0x452d9a
jmp 0x452d9a
lea ecx, [ebp - 0xa0]
call fcn.00453231
lea ecx, [ebp - 0x230]
call fcn.00453231
mov eax, dword [ebp - 0xc8]
mov eax, dword [eax + 0x1c]
mov ecx, dword [ebp + 0xc]
lea eax, [eax + ecx*4 - 4]
mov dword [ebp - 0x244], eax
mov eax, dword [ebp - 0xd0]
add eax, dword [ebp - 0x244]
mov ecx, dword [ebp - 0xd0]
add ecx, dword [eax]
mov eax, ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret