Function at 0x412400
Capabilities:
Authenticate hmac
Encrypt data using speck

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4b0ee1
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
mov eax, 0x23c4
call fcn.004ad2f0
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
movzx eax, byte [ebp + 8]
test eax, eax
je 0x421d8b
lea eax, [ebp + 0x10]
mov dword [ebp - 0x1354], eax
mov dword [ebp - 0xbc4], 0x1e50
mov dword [ebp - 0x1258], 0xa96f08
cmp dword [ebp - 0xbc4], 0x1ef2
jle 0x41253e
push 0x13d8
push 0x23b6
push 0
call dword [0xabd52c]
and dword [ebp - 0x218], 0
jmp 0x41248a
mov eax, dword [ebp - 0x218]
inc eax
mov dword [ebp - 0x218], eax
cmp dword [ebp - 0x218], 0x1eb0
jge 0x41253e
and dword [ebp - 0x210], 0
jmp 0x4124b0
mov eax, dword [ebp - 0x210]
inc eax
mov dword [ebp - 0x210], eax
cmp dword [ebp - 0x210], 0x5c3f
jge 0x412539
and dword [ebp - 0x5a4], 0
jmp 0x4124d2
mov eax, dword [ebp - 0x5a4]
inc eax
mov dword [ebp - 0x5a4], eax
cmp dword [ebp - 0x5a4], 0x523d
jge 0x412534
mov eax, dword [ebp - 0x210]
cdq
idiv dword [ebp - 0x5a4]
mov eax, dword [ebp - 0x218]
sub eax, edx
cdq
mov dword [ebp - 0x13a0], eax
mov dword [ebp - 0x139c], edx
push dword [ebp - 0x139c]
push dword [ebp - 0x13a0]
lea ecx, [ebp - 0x2250]
call fcn.00401a01
pop ecx
pop ecx
mov ecx, eax
call fcn.0040a8d0
push eax
call fcn.0049b1a7
pop ecx
lea ecx, [ebp - 0x2250]
call fcn.0040a8c6
jmp 0x4124c5
jmp 0x4124a3
jmp 0x41247d
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x1364], eax
and dword [ebp - 4], 0
cmp dword [ebp - 0xbc4], 0x1d83
jge 0x412563
push dword [ebp - 0x1258]
call fcn.0049b1a7
pop ecx
jmp 0x41257f
or dword [ebp - 4], 0xffffffff
jmp 0x412589
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x1374], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x136c], eax
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x135c], eax
mov eax, dword [ebp - 0x1354]
movzx eax, byte [eax]
test eax, eax
je 0x421d7a
mov eax, dword [ebp - 0x135c]
mov dword [ebp - 0x14d0], eax
mov eax, dword [ebp - 0x1364]
mov dword [ebp - 0x1690], eax
mov eax, dword [ebp - 0x136c]
mov dword [ebp - 0xf70], eax
mov eax, dword [ebp - 0x1374]
mov dword [ebp - 0x6e4], eax
mov dword [ebp - 0xf80], 0x3335
mov dword [ebp - 0x1344], 0xa96f78
cmp dword [ebp - 0xf80], 0x350d
jle 0x4126b1
and dword [ebp - 0x4ac], 0
jmp 0x41261f
mov eax, dword [ebp - 0x4ac]
inc eax
mov dword [ebp - 0x4ac], eax
cmp dword [ebp - 0x4ac], 0xa05
jge 0x4126b1
and dword [ebp - 0x220], 0
jmp 0x412645
mov eax, dword [ebp - 0x220]
inc eax
mov dword [ebp - 0x220], eax
cmp dword [ebp - 0x220], 0x5acf
jge 0x4126ac
and dword [ebp - 0x578], 0
jmp 0x412667
mov eax, dword [ebp - 0x578]
inc eax
mov dword [ebp - 0x578], eax
cmp dword [ebp - 0x578], 0x131
jge 0x4126aa
mov eax, dword [ebp - 0x4ac]
sub eax, dword [ebp - 0x220]
or eax, dword [ebp - 0x578]
cdq
mov dword [ebp - 0x13ac], eax
mov dword [ebp - 0x13a8], edx
push dword [ebp - 0x13a8]
push dword [ebp - 0x13ac]
mov ecx, 0xaba118
call fcn.0040a8db
jmp 0x41265a
jmp 0x412638
jmp 0x412612
push 0
call fcn.00423490
pop ecx
mov dword [ebp - 0xf90], 0x6535
mov dword [ebp - 0x137c], 0xa96fc8
cmp dword [ebp - 0xf90], 0x6604
jle 0x4127b6
and dword [ebp - 0x630], 0
jmp 0x4126f3
mov eax, dword [ebp - 0x630]
inc eax
mov dword [ebp - 0x630], eax
cmp dword [ebp - 0x630], 0x6fc4
jge 0x4127b6
and dword [ebp - 0x228], 0
jmp 0x412719
mov eax, dword [ebp - 0x228]
inc eax
mov dword [ebp - 0x228], eax
cmp dword [ebp - 0x228], 0x2a70
jge 0x4127b1
and dword [ebp - 0x4b8], 0
jmp 0x41273f
mov eax, dword [ebp - 0x4b8]
inc eax
mov dword [ebp - 0x4b8], eax
cmp dword [ebp - 0x4b8], 0x4e44
jge 0x4127ac
and dword [ebp - 0x230], 0
jmp 0x412761
mov eax, dword [ebp - 0x230]
inc eax
mov dword [ebp - 0x230], eax
cmp dword [ebp - 0x230], 0x7b71
jge 0x4127aa
mov eax, dword [ebp - 0x228]
sub eax, dword [ebp - 0x4b8]
sub eax, dword [ebp - 0x230]
xor eax, dword [ebp - 0x630]
cdq
mov dword [ebp - 0x13b8], eax
mov dword [ebp - 0x13b4], edx
push dword [ebp - 0x13b4]
push dword [ebp - 0x13b8]
mov ecx, 0xaba118
call fcn.0040a8db
jmp 0x412754
jmp 0x412732
jmp 0x41270c
jmp 0x4126e6
mov dword [ebp - 0x114], 0x1852
mov dword [ebp - 0x238], 0
jmp 0x4127d9
mov eax, dword [ebp - 0x238]
inc eax
mov dword [ebp - 0x238], eax
cmp dword [ebp - 0x238], 1
jge 0x4127f5
mov eax, dword [ebp - 0x238]
mov dword [ebp + eax*4 - 0x1c28], 0x21ded680
jmp 0x4127cc
mov eax, dword [ebp - 0x114]
inc eax
mov dword [ebp - 0x114], eax
mov dword [ebp - 0x114], 0
jmp 0x41281b
mov eax, dword [ebp - 0x114]
inc eax
mov dword [ebp - 0x114], eax
cmp dword [ebp - 0x114], 0x16
jle 0x412916
mov dword [ebp - 0x80], 0
jmp 0x412838
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 1
jge 0x41284e
mov eax, dword [ebp - 0x80]
mov dword [ebp + eax*4 - 0x4c0], 0x1265ab3e
jmp 0x412831
mov dword [ebp - 0x80], 0
jmp 0x41285e
mov eax, dword [ebp - 0x80]
inc eax
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 4
jge 0x412874
mov eax, dword [ebp - 0x80]
mov dword [ebp + eax*4 - 0x23d4], 0x90611bc3
jmp 0x412857
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x4c0], 6
jmp 0x4128a2
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x4c0]
dec eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x4c0], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x4c0], 0xfffffffa
jl 0x412911
push 2
lea ecx, [ebp - 0x1a9c]
call fcn.0040ac30
push 0
push 0x75ca
push 0x5662
lea eax, [ebp - 0x1d8c]
push eax
lea eax, [ebp - 0x1a9c]
push eax
push 0x5f11
call fcn.0042dbff
add esp, 0x18
push 0x7601
lea eax, [ebp - 0x1a9c]
push eax
push 0
push 0x2d7b
call fcn.0042e37e
add esp, 0x10
lea ecx, [ebp - 0x1a9c]
call fcn.0040ad02
jmp 0x412887
jmp 0x41280e
mov dword [ebp - 4], 2
cmp dword [ebp - 0xf90], 0x62ec
jge 0x412939
mov edx, dword [ebp - 0x137c]
mov ecx, 0xaba118
call fcn.0040d553
jmp 0x412955
or dword [ebp - 4], 0xffffffff
jmp 0x41295f
mov dword [ebp - 0x1ae0], 0x36f6dd8d
mov dword [ebp - 0x1adc], 0x36f6dd8d
mov dword [ebp - 0x1ad8], 0x36f6dd8d
mov dword [ebp - 0x1ad4], 0x36f6dd8d
push 2
lea ecx, [ebp - 0x1790]
call fcn.0040ac30
mov dword [ebp - 0x1384], 6
push 0
lea eax, [ebp - 0x1c1c]
push eax
lea eax, [ebp - 0x1790]
push eax
call fcn.00440153
add esp, 0xc
push 0
lea ecx, [ebp - 0x1790]
call fcn.0040ad1e
mov dword [eax], 0xffffffef
jmp 0x4129ef
push 0
lea ecx, [ebp - 0x1790]
call fcn.0040ad1e
mov dword [ebp - 0xf98], eax
mov eax, dword [ebp - 0xf98]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0xf98]
mov dword [ecx], eax
push 0
lea ecx, [ebp - 0x1790]
call fcn.0040ad1e
cmp dword [eax], 0x19
jge 0x412a55
push 1
lea ecx, [ebp - 0x1898]
call fcn.0040ac30
push 0
lea eax, [ebp - 0x1898]
push eax
lea eax, [ebp - 0x1f78]
push eax
call fcn.00427193
add esp, 0xc
push 0
lea ecx, [ebp - 0x1898]
call fcn.0040ad1e
cmp dword [eax], 0
je 0x412a45
lea ecx, [ebp - 0x1898]
call fcn.0040ad02
jmp 0x412a55
lea ecx, [ebp - 0x1898]
call fcn.0040ad02
jmp 0x4129cb
lea eax, [ebp - 0x1384]
push eax
push 0
push 1
call fcn.0042711a
add esp, 0xc
lea ecx, [ebp - 0x1790]
call fcn.0040ad02
mov dword [ebp - 0x1c24], 0xb1ab4456
push 1
lea ecx, [ebp - 0x17a0]
call fcn.0040ac30
mov dword [ebp - 0xfa0], 1
mov dword [ebp - 0x720], 1
mov dword [ebp - 0x1d9c], 0x63718bd8
mov dword [ebp - 0xcc], 0x9e3d3b0c
mov dword [ebp - 0x1c2c], 0xffffffff
mov dword [ebp - 0x658], 0x68dacb31
mov dword [ebp - 0x6d0], 0x3b10
mov dword [ebp - 0x1708], 0xa01d
mov dword [ebp - 0x20], 0
jmp 0x412aea
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 1
jge 0x412b06
push dword [ebp - 0x20]
lea ecx, [ebp - 0x17a0]
call fcn.0040ad1e
mov dword [eax], 0x1928c176
jmp 0x412ae3
mov dword [ebp - 0x20], 0
jmp 0x412b16
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x412b2c
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1d98], 0xffffffff
jmp 0x412b0f
mov dword [ebp - 0x20], 0
jmp 0x412b3c
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jge 0x412b52
mov eax, dword [ebp - 0x20]
mov dword [ebp + eax*4 - 0x1da8], 0xdec995f7
jmp 0x412b35
lea eax, [ebp - 0xfa0]
push eax
push 0x6e0e
lea eax, [ebp - 0x720]
push eax
lea eax, [ebp - 0x17a0]
push eax
push 0x181
push 0
call fcn.0042c3ca
add esp, 0x18
mov eax, dword [ebp - 0xfa0]
mov dword [ebp - 0xfa8], eax
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0xfa8]
mov dword [ebp + eax - 0x1d98], ecx
mov eax, dword [ebp - 0x6d0]
mov dword [ebp - 0x138c], eax
mov eax, dword [ebp - 0xfa8]
mov dword [ebp - 0x1394], eax
mov eax, dword [ebp - 0x6d0]
inc eax
mov dword [ebp - 0x6d0], eax
mov eax, dword [ebp - 0x138c]
cmp eax, dword [ebp - 0x1394]
jg 0x412bd9
mov dword [ebp - 0xfbc], 1
jmp 0x412be0
and dword [ebp - 0xfbc], 0
mov eax, dword [ebp - 0xcc]
mov dword [ebp - 0x1eec], eax
mov esi, dword [ebp - 0xcc]
push 0
lea ecx, [ebp - 0x17a0]
call fcn.0040ad1e
cmp esi, dword [eax]
jne 0x412c0f
mov dword [ebp - 0xfc4], 1
jmp 0x412c16
and dword [ebp - 0xfc4], 0
mov eax, dword [ebp - 0xfbc]
neg eax
add eax, dword [ebp - 0xfc4]
je 0x412c36
xor eax, eax
je 0x412c36
mov dword [ebp - 0xfcc], 1
jmp 0x412c3d
and dword [ebp - 0xfcc], 0
mov eax, dword [ebp - 0x658]
inc eax
mov dword [ebp - 0x658], eax
mov eax, dword [ebp - 0x658]
mov ecx, dword [ebp - 0xcc]
imul ecx, dword [ebp - 0xfcc]
sub ecx, dword [ebp - 0x720]
sub eax, ecx
cmp eax, 0x54120977
jl 0x412c81
mov eax, 0xfffb
test eax, eax
je 0x412c81
mov dword [ebp - 0xfd4], 1
jmp 0x412c88
and dword [ebp - 0xfd4], 0
mov eax, dword [ebp - 0x720]
cmp eax, dword [ebp - 0xfd4]
jl 0x412ca2
mov dword [ebp - 0xfdc], 1
jmp 0x412ca9
and dword [ebp - 0xfdc], 0
mov eax, dword [ebp - 0xfdc]
mov dword [ebp - 0xcc], eax
cmp dword [ebp - 0xcc], 0
je 0x412cd3
lea eax, [ebp - 0xcc]
push eax
push 0
call fcn.0042dfe5
pop ecx
pop ecx
jmp 0x412e81
mov dword [ebp - 0x148], 6
mov dword [ebp - 0x1718], 1
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x1d98]
mov dword [ebp - 0x1c34], eax
mov eax, dword [ebp - 0x148]
sub eax, 0x577f1e4c
cmp eax, dword [ebp - 0xcc]
je 0x412d19
mov dword [ebp - 0xfe4], 1
jmp 0x412d20
and dword [ebp - 0xfe4], 0
cmp dword [ebp - 0xfe4], 0x4d09d52f
jle 0x412d38
mov dword [ebp - 0xfec], 1
jmp 0x412d3f
and dword [ebp - 0xfec], 0
mov esi, dword [ebp - 0x148]
push 0
lea ecx, [ebp - 0x17a0]
call fcn.0040ad1e
mov ecx, dword [ebp - 0xfec]
sub ecx, dword [eax]
cmp esi, ecx
jg 0x412d6a
mov dword [ebp - 0x1008], 1
jmp 0x412d71
and dword [ebp - 0x1008], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x1da8]
cmp eax, dword [ebp - 0x1008]
jge 0x412d91
mov dword [ebp - 0xf04], 1
jmp 0x412d98
and dword [ebp - 0xf04], 0
imul eax, dword [ebp - 0xf04], 0
imul eax, eax, 9
test eax, eax
je 0x412db6
xor eax, eax
je 0x412db6
mov dword [ebp - 0xf88], 1
jmp 0x412dbd
and dword [ebp - 0xf88], 0
mov eax, dword [ebp - 0x1708]
add eax, dword [ebp - 0xf88]
je 0x412de0
mov eax, 0xbf28
test eax, eax
je 0x412de0
mov dword [ebp - 0x7a0], 1
jmp 0x412de7
and dword [ebp - 0x7a0], 0
mov eax, dword [ebp - 0x148]
cmp dword [ebp - 0x7a0], eax
jg 0x412e01
mov dword [ebp - 0x1710], 1
jmp 0x412e08
and dword [ebp - 0x1710], 0
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x1dac], eax
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x1c3c], eax
mov eax, dword [ebp - 0x1718]
sub eax, 0xf573
push 4
pop ecx
shl ecx, 1
cmp eax, dword [ebp + ecx - 0x1da8]
jge 0x412e45
mov dword [ebp - 0xc28], 1
jmp 0x412e4c
and dword [ebp - 0xc28], 0
mov eax, dword [ebp - 0xc28]
mov dword [ebp - 0x148], eax
mov byte [ebp - 0xbf], 0
push 0
push 0
push 0x741c
lea eax, [ebp - 0xbf]
push eax
push 0x6fe2
push 0x4dbc
call fcn.00432f10
add esp, 0x18
lea ecx, [ebp - 0x17a0]
call fcn.0040ad02
mov dword [ebp - 0x938], 0xfffffff6
mov dword [ebp - 0x7a8], 0x5bed
mov dword [ebp - 0x1720], 0xa97010
cmp dword [ebp - 0x7a8], 0x5e55
jle 0x412f84
and dword [ebp - 0x248], 0
jmp 0x412ed0
mov eax, dword [ebp - 0x248]
inc eax
mov dword [ebp - 0x248], eax
cmp dword [ebp - 0x248], 0x926
jge 0x412f84
and dword [ebp - 0x240], 0
jmp 0x412ef6
mov eax, dword [ebp - 0x240]
inc eax
mov dword [ebp - 0x240], eax
cmp dword [ebp - 0x240], 0x63da
jge 0x412f7f
and dword [ebp - 0x580], 0
jmp 0x412f18
mov eax, dword [ebp - 0x580]
inc eax
mov dword [ebp - 0x580], eax
cmp dword [ebp - 0x580], 0x2f65
jge 0x412f7a
mov eax, dword [ebp - 0x240]
cdq
idiv dword [ebp - 0x580]
or edx, dword [ebp - 0x248]
mov eax, edx
cdq
mov dword [ebp - 0x13c4], eax
mov dword [ebp - 0x13c0], edx
push dword [ebp - 0x13c0]
push dword [ebp - 0x13c4]
lea ecx, [ebp - 0x20dc]
call fcn.00401a01
pop ecx
pop ecx
mov ecx, eax
call fcn.0040a8d0
push eax
call fcn.0049b1a7
pop ecx
lea ecx, [ebp - 0x20dc]
call fcn.0040a8c6
jmp 0x412f0b
jmp 0x412ee9
jmp 0x412ec3
mov dword [ebp - 4], 4
cmp dword [ebp - 0x7a8], 0x5982
jge 0x412fa3
push dword [ebp - 0x1720]
call fcn.0049b1a7
pop ecx
jmp 0x412fbf
or dword [ebp - 4], 0xffffffff
jmp 0x412fc9
mov dword [ebp - 0x1bc], 0x7e2799ac
mov dword [ebp - 0x1730], 0xffffffff
mov dword [ebp - 0x1bc], 0
jmp 0x412ff6
mov eax, dword [ebp - 0x1bc]
dec eax
mov dword [ebp - 0x1bc], eax
cmp dword [ebp - 0x1bc], 0xfffffff6
jl 0x41305b
mov dword [ebp - 0x1728], 1
mov dword [ebp - 0x1738], 5
push 0
lea eax, [ebp - 0x1728]
push eax
lea eax, [ebp - 0x1730]
push eax
push 1
lea eax, [ebp - 0x1bc]
push eax
push 0
push 0x3a81
push 0x234c
push 0x2c4d
push 0x685b
lea eax, [ebp - 0x1738]
push eax
call fcn.0040e95c
add esp, 0x2c
push 0
call fcn.00423dda
pop ecx
jmp 0x412fe9
mov dword [ebp - 0x1f44], 6
mov dword [ebp - 0x6d8], 1
push 4
lea ecx, [ebp - 0x790]
call fcn.0040ac30
mov dword [ebp - 0x4d0], 0x1d91
mov dword [ebp - 0x660], 0xa4df6f97
mov dword [ebp - 0xc20], 0x4b90
mov dword [ebp - 0x1740], 0xa97088
cmp dword [ebp - 0xc20], 0x4d27
jle 0x413192
and dword [ebp - 0x4c8], 0
jmp 0x4130ca
mov eax, dword [ebp - 0x4c8]
inc eax
mov dword [ebp - 0x4c8], eax
cmp dword [ebp - 0x4c8], 0x3730
jge 0x413192
and dword [ebp - 0x250], 0
jmp 0x4130f0
mov eax, dword [ebp - 0x250]
inc eax
mov dword [ebp - 0x250], eax
cmp dword [ebp - 0x250], 0x5bb3
jge 0x41318d
and dword [ebp - 0x5e0], 0
jmp 0x413116
mov eax, dword [ebp - 0x5e0]
inc eax
mov dword [ebp - 0x5e0], eax
cmp dword [ebp - 0x5e0], 0x2475
jge 0x413188
and dword [ebp - 0x258], 0
jmp 0x413138
mov eax, dword [ebp - 0x258]
inc eax
mov dword [ebp - 0x258], eax
cmp dword [ebp - 0x258], 0x793c
jge 0x413186
mov ecx, dword [ebp - 0x4c8]
add ecx, dword [ebp - 0x250]
mov eax, dword [ebp - 0x5e0]
cdq
idiv dword [ebp - 0x258]
sub ecx, edx
mov eax, ecx
cdq
mov dword [ebp - 0x13d0], eax
mov dword [ebp - 0x13cc], edx
push dword [ebp - 0x13cc]
push dword [ebp - 0x13d0]
mov ecx, 0xaba118
call fcn.0040a8db
jmp 0x41312b
jmp 0x413109
jmp 0x4130e3
jmp 0x4130bd
mov dword [ebp - 0xe04], 0xfffffff7
mov dword [ebp - 4], 6
cmp dword [ebp - 0xc20], 0x49de
jge 0x4131bf
mov edx, dword [ebp - 0x1740]
mov ecx, 0xaba118
call fcn.0040d553
jmp 0x4131db
or dword [ebp - 4], 0xffffffff
jmp 0x4131e5
push 1
lea ecx, [ebp - 0x1a0c]
call fcn.0040ac30
push 0
lea eax, [ebp - 0x1748]
push eax
lea eax, [ebp - 0x790]
push eax
push 0x6ce0
call fcn.00437864
add esp, 0x10
lea eax, [ebp - 0x1a0c]
push eax
push 0
push 0x15ea
push 0x3cb2
lea eax, [ebp - 0x1748]
push eax
call fcn.00423281
add esp, 0x14
mov eax, dword [ebp - 0x660]
dec eax
mov dword [ebp - 0x660], eax
jne 0x41324c
mov dword [ebp - 0x7b0], 1
jmp 0x413253
and dword [ebp - 0x7b0], 0
push 2
lea ecx, [ebp - 0x790]
call fcn.0040ad1e
mov ecx, dword [ebp - 0x7b0]
cmp ecx, dword [eax]
jg 0x413276
mov dword [ebp - 0xc04], 1
jmp 0x41327d
and dword [ebp - 0xc04], 0
cmp dword [ebp - 0x4d0], 0
je 0x4133bc
cmp dword [ebp - 0x6d8], 0
je 0x4133bc
push 3
lea ecx, [ebp - 0x790]
call fcn.0040ad1e
mov esi, eax
push 3
lea ecx, [ebp - 0x790]
call fcn.0040ad1e
mov ecx, dword [esi]
cmp ecx, dword [eax]
jle 0x4132c5
mov dword [ebp - 0x1750], 1
jmp 0x4132cc
and dword [ebp - 0x1750], 0
mov eax, dword [ebp - 0x6d8]
mov dword [ebp - 0x1c44], eax
cmp dword [ebp - 0x6d8], 0xee3f2f34
je 0x4132f0
mov dword [ebp - 0xbfc], 1
jmp 0x4132f7
and dword [ebp - 0xbfc], 0
mov eax, dword [ebp - 0xbfc]
add eax, 0x161a56c7
cmp eax, dword [ebp - 0xe04]
jle 0x413316
mov dword [ebp - 0x7b8], 1
jmp 0x41331d
and dword [ebp - 0x7b8], 0
imul esi, dword [ebp - 0x7b8], 0xffff
push 1
lea ecx, [ebp - 0x790]
call fcn.0040ad1e
cmp esi, dword [eax]
jge 0x41334d
cmp dword [ebp - 0x4d0], 0
je 0x41334d
mov dword [ebp - 0x1758], 1
jmp 0x413354
and dword [ebp - 0x1758], 0
mov eax, dword [ebp - 0xe04]
mov dword [ebp - 0x1dbc], eax
push 3
lea ecx, [ebp - 0x790]
call fcn.0040ad1e
push 3
lea ecx, [ebp - 0x790]
call fcn.0040ad1e
mov esi, eax
push 1
lea ecx, [ebp - 0x790]
call fcn.0040ad1e
mov ecx, dword [esi]
cmp ecx, dword [eax]
jg 0x41339b
mov dword [ebp - 0x7c0], 1
jmp 0x4133a2
and dword [ebp - 0x7c0], 0
mov eax, dword [ebp - 0x4d0]
cmp dword [ebp - 0x7c0], eax
jl 0x4133bc
mov dword [ebp - 0x7c8], 1
jmp 0x4133c3
and dword [ebp - 0x7c8], 0
mov eax, dword [ebp - 0xc04]
cmp eax, dword [ebp - 0x7c8]
jle 0x4133dd
mov dword [ebp - 0x1760], 1
jmp 0x4133e4
and dword [ebp - 0x1760], 0
mov esi, dword [ebp - 0x4d0]
push 0
lea ecx, [ebp - 0x1a0c]
call fcn.0040ad1e
mov dword [eax], esi
lea ecx, [ebp - 0x1a0c]
call fcn.0040ad02
lea ecx, [ebp - 0x790]
call fcn.0040ad02
mov dword [ebp - 0x1c4c], 0xfffffffe
mov dword [ebp - 0x14a0], 0xfffffffe
mov dword [ebp - 0x588], 0x80c1
mov dword [ebp - 0x668], 0x1afa9b64
mov dword [ebp - 0x1768], 0
mov dword [ebp - 0x1778], 0xfffffffa
mov dword [ebp - 0x1ef4], 2
mov dword [ebp - 0x260], 0
jmp 0x41346e
mov eax, dword [ebp - 0x260]
inc eax
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 2
jge 0x41348a
mov eax, dword [ebp - 0x260]
mov dword [ebp + eax*4 - 0x1b94], 0xffffffff
jmp 0x413461
mov eax, dword [ebp - 0x588]
mov dword [ebp - 0x1c54], eax
mov dword [ebp - 0x668], 0xffffffff
cmp dword [ebp - 0x668], 6
jbe 0x4134b5
mov dword [ebp - 0x1004], 1
jmp 0x4134bc
and dword [ebp - 0x1004], 0
cmp dword [ebp - 0x1004], 0xfffffffd
jb 0x4134d1
mov dword [ebp - 0x7d0], 1
jmp 0x4134d8
and dword [ebp - 0x7d0], 0
mov eax, dword [ebp - 0x7d0]
sub eax, dword [ebp - 0x588]
mov dword [ebp - 0x1768], eax
mov eax, dword [ebp - 0x588]
cmp dword [ebp - 0x668], eax
jle 0x413504
mov dword [ebp - 0x1770], 1
jmp 0x41350b
and dword [ebp - 0x1770], 0
mov eax, dword [ebp - 0x588]
mov dword [ebp - 0x1dcc], eax
mov eax, dword [ebp - 0x1778]
mov dword [ebp - 0x1c5c], eax
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x1b94], 0xb3e713e1
push 0x7d78
push 0
push 1
call fcn.0043f2e0
add esp, 0xc
mov dword [ebp - 0x1fa8], 0xfffffffa
push 2
lea ecx, [ebp - 0x1a30]
call fcn.0040ac30
mov dword [ebp - 0xc0c], 0x8c45cdbe
mov dword [ebp - 0x1830], 0
mov dword [ebp - 0x1c64], 1
mov dword [ebp - 0x1780], 0x3cfce294
mov dword [ebp - 0x1828], 0xfffc
mov dword [ebp - 0x1838], 0xffff
push 0
lea eax, [ebp - 0x1ddc]
push eax
push 0
lea eax, [ebp - 0x1a30]
push eax
call fcn.00427ab4
add esp, 0x10
lea eax, [ebp - 0x1780]
push eax
lea eax, [ebp - 0xc0c]
push eax
push 0
lea eax, [ebp - 0x1828]
push eax
push 0x2c90
push 0
push 0x1506
push 0x4500
lea eax, [ebp - 0x1a30]
push eax
push 0x4813
call fcn.0041090b
add esp, 0x28
push 0x6f4
push 0
push 1
lea eax, [ebp - 0x1830]
push eax
lea eax, [ebp - 0x1838]
push eax
push 0x5baf
push 0
lea eax, [ebp - 0xc0c]
push eax
call fcn.00410df2
add esp, 0x20
lea ecx, [ebp - 0x1a30]
call fcn.0040ad02
mov dword [ebp - 0xfd8], 0
mov dword [ebp - 0xc24], 0x1028
mov dword [ebp - 0x1858], 0xa97108
cmp dword [ebp - 0xc24], 0x1047
jle 0x4136eb
and dword [ebp - 0x268], 0
jmp 0x41366a
mov eax, dword [ebp - 0x268]
inc eax
mov dword [ebp - 0x268], eax
cmp dword [ebp - 0x268], 0x6543
jge 0x4136eb
and dword [ebp - 0x4d8], 0
jmp 0x41368c
mov eax, dword [ebp - 0x4d8]
inc eax
mov dword [ebp - 0x4d8], eax
cmp dword [ebp - 0x4d8], 0x28bc
jge 0x4136e6
mov eax, dword [ebp - 0x268]
imul eax, dword [ebp - 0x4d8]
cdq
mov dword [ebp - 0x13dc], eax
mov dword [ebp - 0x13d8], edx
push dword [ebp - 0x13d8]
push dword [ebp - 0x13dc]
lea ecx, [ebp - 0x2310]
call fcn.00401a01
pop ecx
pop ecx
mov ecx, eax
call fcn.0040a8d0
push eax
call fcn.0049b1a7
pop ecx
lea ecx, [ebp - 0x2310]
call fcn.0040a8c6
jmp 0x41367f
jmp 0x41365d
mov dword [ebp - 0xa0], 3
mov dword [ebp - 0x7e0], 0x8591b68d
mov dword [ebp - 0xf0c], 0xffffffff
cmp dword [ebp - 0xa0], 0
je 0x41371e
mov dword [ebp - 0x1840], 1
jmp 0x413725
and dword [ebp - 0x1840], 0
mov eax, dword [ebp - 0xf0c]
cmp dword [ebp - 0xa0], eax
je 0x41373f
mov dword [ebp - 0x7d8], 1
jmp 0x413746
and dword [ebp - 0x7d8], 0
cmp dword [ebp - 0x7d8], 0xfffffff7
jle 0x41375b
mov dword [ebp - 0xe0c], 1
jmp 0x413762
and dword [ebp - 0xe0c], 0
mov eax, dword [ebp - 0xa0]
cmp dword [ebp - 0xe0c], eax
jne 0x41377c
mov dword [ebp - 0xc14], 1
jmp 0x413783
and dword [ebp - 0xc14], 0
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x7e0], eax
mov eax, dword [ebp - 0x7e0]
cmp eax, dword [ebp - 0xc14]
jg 0x4137a9
mov dword [ebp - 0x7e8], 1
jmp 0x4137b0
and dword [ebp - 0x7e8], 0
cmp dword [ebp - 0x7e8], 4
ja 0x4137c5
mov dword [ebp - 0x1848], 1
jmp 0x4137cc
and dword [ebp - 0x1848], 0
cmp dword [ebp - 0xa0], 6
jne 0x4137e1
mov dword [ebp - 0x7f0], 1
jmp 0x4137e8
and dword [ebp - 0x7f0], 0
mov eax, dword [ebp - 0xf0c]
cmp dword [ebp - 0x7f0], eax
jl 0x413802
mov dword [ebp - 0xc1c], 1
jmp 0x413809
and dword [ebp - 0xc1c], 0
mov eax, dword [ebp - 0xa0]
cmp eax, dword [ebp - 0xc1c]
jg 0x413823
mov dword [ebp - 0x7f8], 1
jmp 0x41382a
and dword [ebp - 0x7f8], 0
cmp dword [ebp - 0x7f8], 0x58efa97f
je 0x413842
mov dword [ebp - 0xe14], 1
jmp 0x413849
and dword [ebp - 0xe14], 0
mov eax, dword [ebp - 0xa0]
cmp dword [ebp - 0xe14], eax
jle 0x413863
mov dword [ebp - 0x800], 1
jmp 0x41386a
and dword [ebp - 0x800], 0
mov eax, dword [ebp - 0xa0]
cmp dword [ebp - 0x800], eax
jge 0x413894
mov dword [ebp - 0x1850], 0x9ff4caa5
lea eax, [ebp - 0x1850]
push eax
push 0
call fcn.004220c7
pop ecx
pop ecx
jmp 0x4138bb
mov byte [ebp - 0xbc], 0
lea eax, [ebp - 0xbc]
push eax
push 0x443b
push 0
push 0x6a56
push 0xe9d
call fcn.0042d647
add esp, 0x14
mov dword [ebp - 4], 8
cmp dword [ebp - 0xc24], 0xeb9
jge 0x4138da
push dword [ebp - 0x1858]
call fcn.0049b1a7
pop ecx
jmp 0x4138f6
or dword [ebp - 4], 0xffffffff
jmp 0x413900
mov dword [ebp - 0x1180], 1
mov dword [ebp - 0x1188], 0xffffffff
mov dword [ebp - 0x270], 0
jmp 0x41392d
mov eax, dword [ebp - 0x270]
inc eax
mov dword [ebp - 0x270], eax
cmp dword [ebp - 0x270], 2
jge 0x413949
mov eax, dword [ebp - 0x270]
mov dword [ebp + eax*4 - 0x103c], 1
jmp 0x413920
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x103c], 0
jmp 0x413977
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x103c]
inc eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x103c], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x103c], 0x11
jge 0x4139ac
mov byte [ebp - 0xbe], 0
movzx eax, byte [ebp - 0xbe]
test eax, eax
je 0x4139aa
push 0
push 0
push 0x648d
call fcn.0042e218
add esp, 0xc
jmp 0x41395c
push 3
lea ecx, [ebp - 0x1988]
call fcn.0040ac30
mov dword [ebp - 0x176c], 0xfd52a42b
mov dword [ebp - 0x10cc], 0xf7e2799a
mov dword [ebp - 0x10c8], 0xf7e2799a
mov dword [ebp - 0x10c4], 0xf7e2799a
mov dword [ebp - 0x10c0], 0xf7e2799a
mov dword [ebp - 0xc4c], 0
mov dword [ebp - 0x808], 0xfffffff6
mov dword [ebp - 0x1c6c], 0xae0fc36f
mov dword [ebp - 0x10f8], 0xfffffffe
mov dword [ebp - 0xf14], 1
mov dword [ebp - 0x670], 0xcefbde28
mov dword [ebp - 0x117c], 0xe74a6e8f
mov dword [ebp - 0x134c], 0xfffffff8
mov dword [ebp - 0xe1c], 0xfffffffe
mov dword [ebp - 0x4e0], 0xffffffff
mov dword [ebp - 0x610], 0
jmp 0x413a68
mov eax, dword [ebp - 0x610]
inc eax
mov dword [ebp - 0x610], eax
cmp dword [ebp - 0x610], 3
jge 0x413a84
mov eax, dword [ebp - 0x610]
mov dword [ebp + eax*4 - 0x1db8], 1
jmp 0x413a5b
push 4
pop eax
shl eax, 1
mov dword [ebp + eax - 0x10cc], 0
jmp 0x413aaf
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x10cc]
dec eax
push 4
pop ecx
shl ecx, 1
mov dword [ebp + ecx - 0x10cc], eax
push 4
pop eax
shl eax, 1
cmp dword [ebp + eax - 0x10cc], 0xffffffec
jl 0x413ef4
mov dword [ebp - 0xc34], 0x89a6
mov dword [ebp - 0x760], 0x6f8b8ae5
mov dword [ebp - 0x195c], 0xfffffffa
mov dword [ebp - 0x1958], 0xfffffffa
mov dword [ebp - 0x1954], 0xfffffffa
mov dword [ebp - 0x1950], 0xfffffffa
lea ecx, [ebp - 0x701]
call fcn.0040ad2d
push eax
lea eax, [ebp - 0x194c]
push eax
lea eax, [ebp - 0x195c]
push eax
lea ecx, [ebp - 0x1ffc]
call fcn.0040ad30
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x10ac]
call fcn.0040acdc
mov dword [ebp - 0x10f0], 0xffffffff
mov dword [ebp - 0x1e4], 3
mov eax, dword [ebp - 0x1e4]
imul eax, dword [ebp - 0x4e0]
mov dword [ebp - 0x808], eax
mov eax, dword [ebp - 0x808]
mov ecx, dword [ebp - 0x4e0]
inc ecx
mov dword [ebp - 0x4e0], ecx
mov ecx, dword [ebp - 0x1e4]
dec ecx
mov dword [ebp - 0x1e4], ecx
test eax, eax
jne 0x413b90
cmp dword [ebp - 0x1e4], 0
jne 0x413b90
and dword [ebp - 0xf8c], 0
jmp 0x413b9a
mov dword [ebp - 0xf8c], 1
mov eax, dword [ebp - 0xc34]
cmp eax, dword [ebp - 0xf8c]
jl 0x413bb4
mov dword [ebp - 0xc3c], 1
jmp 0x413bbb
and dword [ebp - 0xc3c], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x1db8]
mov dword [ebp - 0x1efc], eax
mov eax, dword [ebp - 0x134c]
cmp dword [ebp - 0x117c], eax
jle 0x413be7
mov dword [ebp - 0x810], 1
jmp 0x413bee
and dword [ebp - 0x810], 0
mov eax, dword [ebp - 0xe1c]
cmp dword [ebp - 0x810], eax
jne 0x413c0e
mov eax, 0xd45e
test eax, eax
jne 0x413c0e
and dword [ebp - 0xc2c], 0
jmp 0x413c18
mov dword [ebp - 0xc2c], 1
cmp dword [ebp - 0xc2c], 0xffffffff
jle 0x413c2d
mov dword [ebp - 0x818], 1
jmp 0x413c34
and dword [ebp - 0x818], 0
mov eax, dword [ebp - 0xc4c]
cmp dword [ebp - 0x818], eax
jne 0x413c54
cmp dword [ebp - 0xe1c], 0
jne 0x413c54
and dword [ebp - 0x820], 0
jmp 0x413c5e
mov dword [ebp - 0x820], 1
mov eax, dword [ebp - 0x10f0]
imul eax, dword [ebp - 0x820]
cmp eax, dword [ebp - 0xc34]
jne 0x413c7f
mov dword [ebp - 0x828], 1
jmp 0x413c86
and dword [ebp - 0x828], 0
mov eax, dword [ebp - 0x828]
mov dword [ebp - 0xf14], eax
mov eax, dword [ebp - 0xf14]
mov dword [ebp - 0x830], eax
push 0
lea ecx, [ebp - 0x10ac]
call fcn.0040ad1e
mov ecx, dword [ebp - 0x830]
mov dword [eax], ecx
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x10cc]
cmp dword [ebp - 0x830], eax
jle 0x413cd4
mov dword [ebp - 0x1440], 1
jmp 0x413cdb
and dword [ebp - 0x1440], 0
cmp dword [ebp - 0x760], 0
jne 0x413cf0
mov dword [ebp - 0x838], 1
jmp 0x413cf7
and dword [ebp - 0x838], 0
mov eax, dword [ebp - 0xc3c]
cmp eax, dword [ebp - 0x838]
je 0x413d11
mov dword [ebp - 0xe24], 1
jmp 0x413d18
and dword [ebp - 0xe24], 0
cmp dword [ebp - 0xe24], 0x76c132d4
jge 0x413d2b
cmp dword [ebp - 0x670], 0
push 4
pop eax
shl eax, 1
mov eax, dword [ebp + eax - 0x1db8]
mov dword [ebp - 0x760], eax
cmp dword [ebp - 0x760], 0
je 0x413d68
push 0x7c40
push 0x381a
push 1
lea eax, [ebp - 0x10ac]
push eax
push 1
call fcn.00411047
add esp, 0x14
jmp 0x413ee4
mov dword [ebp - 0x6e0], 0xfa0179e4
mov dword [ebp - 0x278], 0
jmp 0x413d8b
mov eax, dword [ebp - 0x278]
inc eax
mov dword [ebp - 0x278], eax
cmp dword [ebp - 0x278], 1
jge 0x413da7
mov eax, dword [ebp - 0x278]
mov dword [ebp + eax*4 - 0x678], 0
jmp 0x413d7e
lea eax, [ebp - 0x670]
push eax
push 0
lea eax, [ebp - 0x1e4]
push eax
call fcn.00427ede
add esp, 0xc
push 0
lea ecx, [ebp - 0x10ac]
call fcn.0040ad1e
cmp dword [ebp - 0x6e0], 0
je 0x413df3
push 0
lea ecx, [ebp - 0x10ac]
call fcn.0040ad1e
cmp dword [eax], 0
je 0x413df3
mov dword [ebp - 0x840], 1
jmp 0x413dfa
and dword [ebp - 0x840], 0
push 0
lea ecx, [ebp - 0x10ac]
call fcn.0040ad1e
mov eax, dword [eax]
cmp eax, dword [ebp - 0x840]
jg 0x413e1d
mov dword [ebp - 0xc44], 1
jmp 0x413e24
and dword [ebp - 0xc44], 0
mov eax, dword [ebp - 0x10f8]
cmp eax, dword [ebp - 0xc44]
jne 0x413e3e
mov dword [ebp - 0xfd0], 1
jmp 0x413e45
and dword [ebp - 0xfd0], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x678]
mov dword [ebp - 0x848], eax
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x848]
mov dword [ebp + eax - 0x678], ecx
mov eax, dword [ebp - 0x848]
sub eax, dword [ebp - 0xfd0]
jne 0x413e89
push 7
pop eax
test eax, eax
jne 0x413e89
and dword [ebp - 0x850], 0
jmp 0x413e93
mov dword [ebp - 0x850], 1
imul eax, dword [ebp - 0x850], 0
cmp eax, dword [ebp - 0x6e0]
jle 0x413eae
mov dword [ebp - 0x16c4], 1
jmp 0x413eb5
and dword [ebp - 0x16c4], 0
mov eax, dword [ebp - 0x4e0]
mov dword [ebp - 0x1c74], eax
cmp dword [ebp - 0x670], 0
jne 0x413ed1
cmp dword [ebp - 0x6e0], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x678]
mov dword [ebp - 0xc4c], eax
lea ecx, [ebp - 0x10ac]
call fcn.0040ad02
jmp 0x413a96
mov dword [ebp - 0x1dec], 1
mov dword [ebp - 0xf1c], 0x6174
mov dword [ebp - 0x1110], 0xa97158
cmp dword [ebp - 0xf1c], 0x62fc
jle 0x413fea
push 0
push 0x1331
push 0x1b1e
push 0x15be
call dword [0xabd0ac]
and dword [ebp - 0x288], 0
jmp 0x413f4f
mov eax, dword [ebp - 0x288]
inc eax
mov dword [ebp - 0x288], eax
cmp dword [ebp - 0x288], 0x65ba
jge 0x413fe2
and dword [ebp - 0x280], 0
jmp 0x413f75
mov eax, dword [ebp - 0x280]
inc eax
mov dword [ebp - 0x280], eax
cmp dword [ebp - 0x280], 0x5d6d
jge 0x413fdd
and dword [ebp - 0x590], 0
jmp 0x413f97
mov eax, dword [ebp - 0x590]
inc eax
mov dword [ebp - 0x590], eax
cmp dword [ebp - 0x590], 0x8ee
jge 0x413fdb
mov eax, dword [ebp - 0x280]
imul eax, dword [ebp - 0x590]
xor eax, dword [ebp - 0x288]
cdq
mov dword [ebp - 0x13e8], eax
mov dword [ebp - 0x13e4], edx
push dword [ebp - 0x13e4]
push dword [ebp - 0x13e8]
mov ecx, 0xaba118
call fcn.0040a8db
jmp 0x413f8a
jmp 0x413f68
jmp 0x413f42
push 0
call dword [0xabd3ac]
mov dword [ebp - 0x858], 0x6630
mov dword [ebp - 0x1100], 0xa971b4
cmp dword [ebp - 0x858], 0x69dd
jle 0x414081
and dword [ebp - 0x4e8], 0
jmp 0x414020
mov eax, dword [ebp - 0x4e8]
inc eax
mov dword [ebp - 0x4e8], eax
cmp dword [ebp - 0x4e8], 0x6c0e
jge 0x414081
and dword [ebp - 0x290], 0
jmp 0x414042
mov eax, dword [ebp - 0x290]
inc eax
mov dword [ebp - 0x290], eax
cmp dword [ebp - 0x290], 0xd70
jge 0x41407f
mov eax, dword [ebp - 0x4e8]
sub eax, dword [ebp - 0x290]
cdq
mov dword [ebp - 0x13f4], eax
mov dword [ebp - 0x13f0], edx
push dword [ebp - 0x13f0]
push dword [ebp - 0x13f4]
mov ecx, 0xaba118
call fcn.0040a8db
jmp 0x414035
jmp 0x414013
mov dword [ebp - 4], 0xa
cmp dword [ebp - 0x858], 0x6489
jge 0x4140a4
mov edx, dword [ebp - 0x1100]
mov ecx, 0xaba118
call fcn.0040d553
jmp 0x4140c0
or dword [ebp - 4], 0xffffffff
jmp 0x4140ca
mov dword [ebp - 0x4c], 4
mov dword [ebp - 0x16b4], 0
mov dword [ebp - 0x1c7c], 0x3c1de6fc
mov dword [ebp - 0x5e8], 0
jmp 0x4140fe
mov eax, dword [ebp - 0x5e8]
inc eax
mov dword [ebp - 0x5e8], eax
cmp dword [ebp - 0x5e8], 1
jge 0x41411a
mov eax, dword [ebp - 0x5e8]
mov dword [ebp + eax*4 - 0x724], 0
jmp 0x4140f1
mov dword [ebp - 0x4c], 0
jmp 0x41412a
mov eax, dword [ebp - 0x4c]
dec eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0
jl 0x414144
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x724], 0
je 0x414142
jmp 0x414144
jmp 0x414123
mov dword [ebp - 0x4c], 0
jmp 0x414154
mov eax, dword [ebp - 0x4c]
dec eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 0xffffffed
jge 0x414219
mov dword [ebp - 0xc54], 0xffff
mov dword [ebp - 0xe2c], 2
mov dword [ebp - 0x1108], 0xdbd0176d
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x724]
neg eax
mov dword [ebp - 0xe2c], eax
mov eax, dword [ebp - 0xc54]
imul eax, dword [ebp - 0xe2c]
cmp dword [ebp - 0x4c], eax
jne 0x4141af
mov dword [ebp - 0x860], 1
jmp 0x4141b6
and dword [ebp - 0x860], 0
mov eax, dword [ebp - 0x4c]
cmp dword [ebp - 0x860], eax
jle 0x4141cd
mov dword [ebp - 0x868], 1
jmp 0x4141d4
and dword [ebp - 0x868], 0
mov eax, dword [ebp - 0xc54]
cmp dword [ebp - 0x868], eax
jl 0x4141ee
mov dword [ebp - 0x144c], 1
jmp 0x4141f5
and dword [ebp - 0x144c], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x724]
mov dword [ebp - 0x1f4c], eax
mov eax, dword [ebp - 0x1108]
mov dword [ebp - 0x16b4], eax
jmp 0x41414d
mov dword [ebp - 4], 0xc
cmp dword [ebp - 0xf1c], 0x5ffa
jge 0x41423c
mov edx, dword [ebp - 0x1110]
mov ecx, 0xaba118
call fcn.0040d553
jmp 0x414258
or dword [ebp - 4], 0xffffffff
jmp 0x414262
mov dword [ebp - 0x1c84], 0xc458a922
mov dword [ebp - 0xe3c], 0x4435
mov dword [ebp - 0x1120], 0xa97210
cmp dword [ebp - 0xe3c], 0x450a
jle 0x414326
and dword [ebp - 0x298], 0
jmp 0x4142a6
mov eax, dword [ebp - 0x298]
inc eax
mov dword [ebp - 0x298], eax
cmp dword [ebp - 0x298], 0x4471
jge 0x414326
and dword [ebp - 0x4f0], 0
jmp 0x4142c8
mov eax, dword [ebp - 0x4f0]
inc eax
mov dword [ebp - 0x4f0], eax
cmp dword [ebp - 0x4f0], 0x475c
jge 0x414321
mov eax, dword [ebp - 0x298]
add eax, dword [ebp - 0x4f0]
cdq
mov dword [ebp - 0x1400], eax
mov dword [ebp - 0x13fc], edx
push dword [ebp - 0x13fc]
push dword [ebp - 0x1400]
lea ecx, [ebp - 0x210c]
call fcn.00401a01
pop ecx
pop ecx
mov ecx, eax
call fcn.0040a8d0
push eax
call fcn.0049b1a7
pop ecx
lea ecx, [ebp - 0x210c]
call fcn.0040a8c6
jmp 0x4142bb
jmp 0x414299
mov dword [ebp - 0x98], 3
mov dword [ebp - 0x878], 0x8591b68d
mov dword [ebp - 0xc64], 0xffffffff
cmp dword [ebp - 0x98], 0
je 0x414359
mov dword [ebp - 0x1458], 1
jmp 0x414360
and dword [ebp - 0x1458], 0
mov eax, dword [ebp - 0xc64]
cmp dword [ebp - 0x98], eax
je 0x41437a
mov dword [ebp - 0x870], 1
jmp 0x414381
and dword [ebp - 0x870], 0
cmp dword [ebp - 0x870], 0xfffffff7
jle 0x414396
mov dword [ebp - 0xc5c], 1
jmp 0x41439d
and dword [ebp - 0xc5c], 0
mov eax, dword [ebp - 0x98]
cmp dword [ebp - 0xc5c], eax
jne 0x4143b7
mov dword [ebp - 0xe34], 1
jmp 0x4143be
and dword [ebp - 0xe34], 0
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x878], eax
mov eax, dword [ebp - 0x878]
cmp eax, dword [ebp - 0xe34]
jg 0x4143e4
mov dword [ebp - 0x880], 1
jmp 0x4143eb
and dword [ebp - 0x880], 0
cmp dword [ebp - 0x880], 4
ja 0x414400
mov dword [ebp - 0x1118], 1
jmp 0x414407
and dword [ebp - 0x1118], 0
cmp dword [ebp - 0x98], 6
jne 0x41441c
mov dword [ebp - 0x888], 1
jmp 0x414423
and dword [ebp - 0x888], 0
mov eax, dword [ebp - 0xc64]
cmp dword [ebp - 0x888], eax
jl 0x41443d
mov dword [ebp - 0xf94], 1
jmp 0x414444
and dword [ebp - 0xf94], 0
mov eax, dword [ebp - 0x98]
cmp eax, dword [ebp - 0xf94]
jg 0x41445e
mov dword [ebp - 0x890], 1
jmp 0x414465
and dword [ebp - 0x890], 0
cmp dword [ebp - 0x890], 0x58efa97f
je 0x41447d
mov dword [ebp - 0xc6c], 1
jmp 0x414484
and dword [ebp - 0xc6c], 0
mov eax, dword [ebp - 0x98]
cmp dword [ebp - 0xc6c], eax
jle 0x41449e
mov dword [ebp - 0x898], 1
jmp 0x4144a5
and dword [ebp - 0x898], 0
mov eax, dword [ebp - 0x98]
cmp dword [ebp - 0x898], eax
jge 0x4144d5
mov dword [ebp - 0x17e4], 0x9ff4caa5
lea eax, [ebp - 0x17e4]
push eax
push 0x1f82
push 0
call fcn.00441479
add esp, 0xc
jmp 0x4144f7
mov byte [ebp - 0xc0], 0
push 0x5833
push 0
lea eax, [ebp - 0xc0]
push eax
push 0x14a8
call fcn.00427b8b
add esp, 0x10
mov dword [ebp - 4], 0xe
cmp dword [ebp - 0xe3c], 0x4109
jge 0x414516
push dword [ebp - 0x1120]
call fcn.0049b1a7
pop ecx
jmp 0x414532
or dword [ebp - 4], 0xffffffff
jmp 0x41453c
mov dword [ebp - 0x14ac], 0x8069d1fe
mov dword [ebp - 0x154], 0x9b55bb2c
mov dword [ebp - 0x1dfc], 0x1a7ecc24
mov dword [ebp - 0x1c8c], 7
mov dword [ebp - 0x1f04], 0x2d0da0bd
mov dword [ebp - 0x1c94], 0xffffffff
push 2
lea ecx, [ebp - 0x1dd8]
call fcn.0040ac30
push 1
lea eax, [ebp - 0x1e0c]
push eax
push 1
lea eax, [ebp - 0x1dd8]
push eax
call fcn.00411235
add esp, 0x10
mov dword [ebp - 0x154], 7
jmp 0x4145b8
mov eax, dword [ebp - 0x154]
dec eax
mov dword [ebp - 0x154], eax
cmp dword [ebp - 0x154], 0xffffffed
jg 0x4146d4
push 3
lea ecx, [ebp - 0x197c]
call fcn.0040ac30
mov dword [ebp - 0x1464], 1
mov dword [ebp - 0x1c9c], 0xffffffff
mov dword [ebp - 0x1920], 0x842f88d9
mov dword [ebp - 0x191c], 0x842f88d9
mov dword [ebp - 0x1918], 0x842f88d9
mov dword [ebp - 0x1914], 0x842f88d9
lea ecx, [ebp - 0x725]
call fcn.0040ad2d
push eax
lea eax, [ebp - 0x1910]
push eax
lea eax, [ebp - 0x1920]
push eax
lea ecx, [ebp - 0x201c]
call fcn.0040ad30
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x1dc8]
call fcn.0040acdc
mov dword [ebp - 0x1f8c], 9
mov dword [ebp - 0x1128], 0xa70a1ee3
push 0x78f2
lea eax, [ebp - 0x1ca4]
push eax
push 0x7c3a
push 0x63e0
lea eax, [ebp - 0x197c]
push eax
push 0
push 0
push 1
call fcn.004258e2
add esp, 0x20
lea eax, [ebp - 0x154]
push eax
lea eax, [ebp - 0x1dc8]
push eax
lea eax, [ebp - 0x1464]
push eax
lea eax, [ebp - 0x197c]
push eax
push 0x1e5a
push 0x2fd1
lea eax, [ebp - 0x1128]
push eax
push 0
call fcn.0042af95
add esp, 0x20
lea ecx, [ebp - 0x1dc8]
call fcn.0040ad02
lea ecx, [ebp - 0x197c]
call fcn.0040ad02
jmp 0x4145ab
push 0x293c
push 0x5024
push 0
push 1
call fcn.004112d5
add esp, 0x10
lea ecx, [ebp - 0x1dd8]
call fcn.0040ad02
mov dword [ebp - 0x698], 9
push 2
lea ecx, [ebp - 0x1a48]
call fcn.0040ac30
mov dword [ebp - 0x4f8], 0
mov dword [ebp - 0x8a0], 0x716f
mov dword [ebp - 0x16a8], 0xa97240
cmp dword [ebp - 0x8a0], 0x7474
jle 0x414801
and dword [ebp - 0x2a0], 0
jmp 0x414750
mov eax, dword [ebp - 0x2a0]
inc eax
mov dword [ebp - 0x2a0], eax
cmp dword [ebp - 0x2a0], 0x3346
jge 0x414801
and dword [ebp - 0x598], 0
jmp 0x414776
mov eax, dword [ebp - 0x598]
inc eax
mov dword [ebp - 0x598], eax
cmp dword [ebp - 0x598], 0x3806
jge 0x4147fc
and dword [ebp - 0x2a8], 0
jmp 0x414798
mov eax, dword [ebp - 0x2a8]
inc eax
mov dword [ebp - 0x2a8], eax
cmp dword [ebp - 0x2a8], 0x75ae
jge 0x4147f7
mov eax, dword [ebp - 0x2a0]
add eax, dword [ebp - 0x598]
xor eax, dword [ebp - 0x2a8]
cdq
mov dword [ebp - 0x140c], eax
mov dword [ebp - 0x1408], edx
push dword [ebp - 0x1408]
push dword [ebp - 0x140c]
lea ecx, [ebp - 0x2280]
call fcn.00401a01
pop ecx
pop ecx
mov ecx, eax
call fcn.0040a8d0
push eax
call fcn.0049b1a7
pop ecx
lea ecx, [ebp - 0x2280]
call fcn.0040a8c6
jmp 0x41478b
jmp 0x414769
jmp 0x414743
push 0x4193
lea eax, [ebp - 0x1e1c]
push eax
lea eax, [ebp - 0x1a48]
push eax
push 0
push 0x181
call fcn.004220e6
add esp, 0x14
mov dword [ebp - 4], 0x10
cmp dword [ebp - 0x8a0], 0x704c
jge 0x414842
push dword [ebp - 0x16a8]
call fcn.0049b1a7
pop ecx
jmp 0x41485e
or dword [ebp - 4], 0xffffffff
jmp 0x414868
mov dword [ebp - 0x4f8], 1
jmp 0x414881
mov eax, dword [ebp - 0x4f8]
dec eax
mov dword [ebp - 0x4f8], eax
cmp dword [ebp - 0x4f8], 0
jl 0x414bb4
mov dword [ebp - 0xc74], 0x50ee
mov dword [ebp - 0x1130], 0xa972ac
cmp dword [ebp - 0xc74], 0x5141
jle 0x41495c
and dword [ebp - 0x2b8], 0
jmp 0x4148c8
mov eax, dword [ebp - 0x2b8]
inc eax
mov dword [ebp - 0x2b8], eax
cmp dword [ebp - 0x2b8], 0x85e
jge 0x41495c
and dword [ebp - 0x2b0], 0
jmp 0x4148ee
mov eax, dword [ebp - 0x2b0]
inc eax
mov dword [ebp - 0x2b0], eax
cmp dword [ebp - 0x2b0], 0x6462
jge 0x414957
and dword [ebp - 0x628], 0
jmp 0x414910
mov eax, dword [ebp - 0x628]
inc eax
mov dword [ebp - 0x628], eax
cmp dword [ebp - 0x628], 0x4448
jge 0x414955
mov ecx, dword [ebp - 0x2b0]
sub ecx, dword [ebp - 0x628]
mov eax, dword [ebp - 0x2b8]
shl eax, cl
cdq
mov dword [ebp - 0x1418], eax
mov dword [ebp - 0x1414], edx
push dword [ebp - 0x1414]
push dword [ebp - 0x1418]
mov ecx, 0xaba118
call fcn.0040a8db
jmp 0x414903
jmp 0x4148e1
jmp 0x4148bb
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 4], 0x12
cmp dword [ebp - 0xc74], 0x5028
jge 0x414989
mov edx, dword [ebp - 0x1130]
mov ecx, 0xaba118
call fcn.0040d553
jmp 0x4149a5
or dword [ebp - 4], 0xffffffff
jmp 0x4149af
mov dword [ebp - 0x1a4], 0
jmp 0x4149c8
cmp dword [ebp - 0x1a4], 1
jg 0x414baf
mov dword [ebp - 0x508], 1
mov dword [ebp - 0x8a8], 0x799d
mov dword [ebp - 0x1470], 0xa97308
cmp dword [ebp - 0x8a8], 0x7c46
jle 0x414b02
and dword [ebp - 0x2c8], 0
jmp 0x414a19
cmp dword [ebp - 0x2c8], 0x573d
jge 0x414b02
and dword [ebp - 0x500], 0
jmp 0x414a3f
cmp dword [ebp - 0x500], 0x1c8b
jge 0x414afd
mov dword [ebp - 0x508], 0
jmp 0x414b1b
mov eax, dword [ebp - 0x508]
inc eax
mov dword [ebp - 0x508], eax
cmp dword [ebp - 0x508], 1
jg 0x414b3e
lea eax, [ebp - 0x1a48]
push eax
lea eax, [ebp - 0x1a4]
push eax
push 0
call fcn.00439493
add esp, 0xc
jmp 0x414b0e
mov dword [ebp - 4], 0x14
cmp dword [ebp - 0x8a8], 0x7915
jge 0x414b5d
push dword [ebp - 0x1470]
call fcn.0049b1a7
pop ecx
jmp 0x414b79
jmp 0x414874
lea ecx, [ebp - 0x1a48]
call fcn.0040ad02
mov dword [ebp - 0x920], 9
mov dword [ebp - 0xf24], 0x3d06
mov dword [ebp - 0x8b0], 0x6df251d6
mov dword [ebp - 0x1cac], 0xfffffffe
mov dword [ebp - 0x1148], 0xfffffff9
mov dword [ebp - 0x1138], 0xffffffff
mov dword [ebp - 0x1764], 0xd9d75405
mov dword [ebp - 0x1140], 1
mov dword [ebp - 0x1f0c], 0xfc1da7bc
push 2
lea ecx, [ebp - 0x1a60]
call fcn.0040ac30
mov dword [ebp - 0x147c], 0xe6b6cd3
lea eax, [ebp - 0x1a60]
push eax
lea eax, [ebp - 0x1cb4]
push eax
push 1
push 1
call fcn.004112d5
add esp, 0x10
push 0
push 1
push 0
lea eax, [ebp - 0x8b0]
push eax
push 0x5de9
push 0x10c
lea eax, [ebp - 0xf24]
push eax
push 0x1e6d
call fcn.0042ac81
add esp, 0x20
push 0x22b6
push 0x658a
push 0x5e25
lea eax, [ebp - 0xf24]
push eax
lea eax, [ebp - 0x1138]
push eax
push 0
lea eax, [ebp - 0x1764]
push eax
lea eax, [ebp - 0x1140]
push eax
push 0x4698
push 0
lea eax, [ebp - 0x1a60]
push eax
lea eax, [ebp - 0x147c]
push eax
lea eax, [ebp - 0x1148]
push eax
push 0x3b5
push 1
push 0x2f55
lea eax, [ebp - 0x8b0]
push eax
push 0x4739
call fcn.00427f7c
add esp, 0x48
lea ecx, [ebp - 0x1a60]
call fcn.0040ad02
mov dword [ebp - 0x6e8], 0xfffffff9
mov dword [ebp - 0x1e2c], 0xd47941ce
mov dword [ebp - 0x510], 0x23edb395
mov dword [ebp - 0x1158], 7
mov dword [ebp - 0x1844], 0x3fa3
mov dword [ebp - 0x5c], 0
jmp 0x414d2b
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 1
jge 0x414d41
mov eax, dword [ebp - 0x5c]
mov dword [ebp + eax*4 - 0x1494], 0xfff7
jmp 0x414d24
mov dword [ebp - 0x5c], 0
jmp 0x414d51
mov eax, dword [ebp - 0x5c]
inc eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 4
jge 0x414d67
mov eax, dword [ebp - 0x5c]
mov dword [ebp + eax*4 - 0x104c], 9
jmp 0x414d4a
push 4
pop eax
shl eax, 0
mov dword [ebp + eax - 0x104c], 0
jmp 0x414d95
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x104c]
inc eax
push 4
pop ecx
shl ecx, 0
mov dword [ebp + ecx - 0x104c], eax
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x104c], 0
jg 0x414db5
push 0
push 0x280b
call fcn.004258b7
pop ecx
pop ecx
jmp 0x414d7a
push 4
pop eax
imul eax, eax, 3
cmp dword [ebp + eax - 0x104c], 0
jne 0x414dd7
cmp dword [ebp - 0x510], 0
jne 0x414dd7
and dword [ebp - 0xc7c], 0
jmp 0x414de1
mov dword [ebp - 0xc7c], 1
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x104c]
cmp dword [ebp - 0xc7c], eax
je 0x414e20
mov dword [ebp - 0x16b0], 0xb32e
push 0x1fe4
lea eax, [ebp - 0x16b0]
push eax
push 0x2e05
push 0
call fcn.0042dbd8
add esp, 0x10
jmp 0x4151f8
push 4
lea ecx, [ebp - 0x74c]
call fcn.0040ac30
mov dword [ebp - 0x680], 0x9c2b2e5f
mov dword [ebp - 0x688], 0x18b01197
mov dword [ebp - 0x1488], 4
mov dword [ebp - 0x8d8], 6
mov dword [ebp - 0x8b8], 0x608b
mov dword [ebp - 0x1150], 0xa973a0
cmp dword [ebp - 0x8b8], 0x646a
jle 0x414f21
and dword [ebp - 0x2d8], 0
jmp 0x414e8f
cmp dword [ebp - 0x2d8], 0xd12
jge 0x414f21
mov dword [ebp - 0xc94], 0xe0aee481
mov dword [ebp - 4], 0x16
cmp dword [ebp - 0x8b8], 0x5ee8
jge 0x414f4e
mov edx, dword [ebp - 0x1150]
mov ecx, 0xaba118
call fcn.0040d553
jmp 0x414f6a
mov dword [ebp - 0x44], 0
jmp 0x415208
cmp dword [ebp - 0x44], 2
jge 0x41521e
push 0
push 0
push 0x268
call dword [0xabd540]
jmp 0x421d93
push 0
call fcn.004108c6
pop ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret