Function at 0x50f754
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x993cf6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
and eax, 0
sub esp, 0xfe4
push ebx
push esi
push edi
mov byte [ebp - 0x245], 0
xor eax, eax
mov word [ebp - 0x214], ax
push 0x206
push 0
lea eax, [ebp - 0x212]
push eax
call fcn.0092bc20
add esp, 0xc
and dword [ebp - 0x22c], 0
and dword [ebp - 0x230], 0
fldz
fstp qword [ebp - 0x244]
fldz
fstp qword [ebp - 0x23c]
fldz
fstp qword [ebp - 0x23c]
jmp 0x50f7d5
fld qword [ebp - 0x23c]
fadd qword [0x9976d0]
fstp qword [ebp - 0x23c]
jbe 0x50f767
add ch, bl
popfd
invalid
fld qword [0x997bb8]
fcomp qword [ebp - 0x23c]
fnstsw ax
test ah, 0x41
jne 0x50f85e
invalid
fld qword [0x997bb0]
fmul qword [ebp - 0x23c]
fmul qword [ebp - 0x23c]
fld qword [ebp - 0x23c]
fmul qword [ebp - 0x23c]
fsubp st(1)
fld qword [0x997ba8]
fmul qword [ebp - 0x23c]
fmul qword [ebp - 0x23c]
fadd qword [0x997ba0]
add eax, 0x997ba0
fdivp st(1)
fadd qword [ebp - 0x244]
fstp qword [ebp - 0x244]
fld qword [0x997b98]
mov esp, 0xddfffffd
popfd
mov esp, 0xddfffffd
add eax, 0x997b98
cwde
jnp 0x50f7cc
add ah, bl
fcomp qword [ebp - 0x244]
fnstsw ax
test ah, 5
jp 0x50f859
popfd
mov esp, 0xdffffffd
loopne 0x50f833
les eax, [0x5dd187a]
nop
jnp 0x50f7df
fld qword [0x997b90]
fmul qword [ebp - 0x23c]
fsubr qword [ebp - 0x244]
fstp qword [ebp - 0x244]
add ah, bl
invalid
jmp 0x50f7c3
fldz
fcomp qword [ebp - 0x244]
fnstsw ax
test ah, 0x41
jne 0x50f8b3
inc eax
inc esi
and eax, 0x235b4f7c
jo 0x50f8b6
aaa
imul ebp, dword [ebp + 0x4a], 0x67
aas
aaa
outsd dx, dword [esi]
inc ebx
sub bl, byte [di + 0x2b]
sub eax, 0x7841236e
sub byte [edi + 0x7a], 0x71
xchg byte [ebx + 0x7b], bh
jle 0x50f81b
jo 0x50f912
jl 0x50f910
jo 0x50f917
jl 0x50f918
ja 0x50f824
jns 0x50f91d
jae 0x50f820
jp 0x50f822
jo 0x50f920
jge 0x50f82a
jl 0x50f830
jo 0x50f927
jle 0x50f835
jnp 0x50f92b
jmp 0x510a96
mov dword [ebp - 0x22c], 0x50f888
mov dword [ebp - 0x230], 0x50f86d
mov eax, dword [ebp - 0x22c]
mov dword [ebp - 0x250], eax
mov eax, dword [ebp - 0x230]
mov dword [ebp - 0x24c], eax
mov byte [ebp - 0x36d], 0x1f
and dword [ebp - 0x364], 0
jmp 0x50f8fc
std
invalid
mov eax, dword [ebp - 0x364]
inc eax
mov dword [ebp - 0x364], eax
cmp dword [ebp - 0x364], 0x100
jae 0x50f91d
mov eax, dword [ebp - 0x364]
mov cl, byte [ebp - 0x364]
mov byte [ebp + eax - 0x35c], cl
jmp 0x50f8ef
pushfd
cld
invalid
movsb byte es:[edi], byte [esi]
cld
invalid
and dword [ebp - 0x254], 0
mov byte [ebp - 0x36e], 0
std
invalid
cld
invalid
mov dword [ebp - 0x364], 0xff
jmp 0x50f944
mov eax, dword [ebp - 0x364]
dec eax
mov dword [ebp - 0x364], eax
cmp dword [ebp - 0x364], 0
jbe 0x50fbbe
and dword [ebp - 0x374], 0
mov dword [ebp - 0x37c], 1
mov eax, dword [ebp - 0x37c]
cmp eax, dword [ebp - 0x364]
jae 0x50f982
mov eax, dword [ebp - 0x37c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x37c], eax
jmp 0x50f962
mov eax, dword [ebp - 0x254]
mov dword [ebp - 0xf9c], eax
mov eax, dword [ebp - 0xf9c]
mov dword [ebp - 0xfa0], eax
cmp dword [ebp - 0xfa0], 0
je 0x50f9c7
sub dword [ebp - 0xfa0], 1
je 0x50f9f3
sub dword [ebp - 0xfa0], 1
je 0x50fa1f
sub dword [ebp - 0xfa0], 1
je 0x50fa4b
jmp 0x50fa77
movzx eax, byte [ebp - 0x36e]
movzx ebx, byte [ebp + eax - 0x35c]
fld qword [ebp - 0x244]
call fcn.0092d216
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x36e], bl
jmp 0x50fa9e
movzx eax, byte [ebp - 0x36e]
movzx ebx, byte [ebp + eax - 0x35c]
fld qword [ebp - 0x244]
call fcn.0092d216
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x36e], bl
jmp 0x50fa9e
movzx eax, byte [ebp - 0x36e]
movzx ebx, byte [ebp + eax - 0x35c]
fld qword [ebp - 0x244]
call fcn.0092d216
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x36e], bl
jmp 0x50fa9e
movzx eax, byte [ebp - 0x36e]
movzx ebx, byte [ebp + eax - 0x35c]
fld qword [ebp - 0x244]
call fcn.0092d216
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x36e], bl
jmp 0x50fa9e
movzx eax, byte [ebp - 0x36e]
movzx eax, byte [ebp + eax - 0x35c]
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x254]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0x36e], al
mov eax, dword [ebp - 0x254]
inc eax
mov dword [ebp - 0x254], eax
movzx eax, byte [ebp - 0x36d]
cmp dword [ebp - 0x254], eax
jb 0x50fad7
and dword [ebp - 0x254], 0
movzx eax, byte [ebp - 0x36d]
movzx ecx, byte [ebp - 0x36e]
add ecx, eax
mov byte [ebp - 0x36e], cl
movzx eax, byte [ebp - 0x36e]
and eax, dword [ebp - 0x37c]
mov dword [ebp - 0x378], eax
mov eax, dword [ebp - 0x374]
inc eax
mov dword [ebp - 0x374], eax
cmp dword [ebp - 0x374], 0xb
jbe 0x50fb14
mov eax, dword [ebp - 0x378]
xor edx, edx
div dword [ebp - 0x364]
mov dword [ebp - 0x378], edx
mov eax, dword [ebp - 0x378]
cmp eax, dword [ebp - 0x364]
ja 0x50f982
mov eax, dword [ebp - 0x364]
cmp eax, dword [ebp - 0x378]
je 0x50fbb9
mov eax, dword [ebp - 0x378]
movzx eax, byte [ebp + eax - 0x35c]
mov ecx, dword [ebp - 0x364]
movzx ecx, byte [ebp + ecx - 0x35c]
xor ecx, eax
mov eax, dword [ebp - 0x364]
mov byte [ebp + eax - 0x35c], cl
mov eax, dword [ebp - 0x364]
movzx eax, byte [ebp + eax - 0x35c]
mov ecx, dword [ebp - 0x378]
movzx ecx, byte [ebp + ecx - 0x35c]
xor ecx, eax
mov eax, dword [ebp - 0x378]
mov byte [ebp + eax - 0x35c], cl
mov eax, dword [ebp - 0x378]
movzx eax, byte [ebp + eax - 0x35c]
mov ecx, dword [ebp - 0x364]
movzx ecx, byte [ebp + ecx - 0x35c]
xor ecx, eax
mov eax, dword [ebp - 0x364]
mov byte [ebp + eax - 0x35c], cl
jmp 0x50f937
mov al, byte [ebp - 0x35b]
mov byte [ebp - 0x36f], al
mov al, byte [ebp - 0x359]
mov byte [ebp - 0x255], al
mov al, byte [ebp - 0x357]
mov byte [ebp - 0x35d], al
mov al, byte [ebp - 0x355]
mov byte [ebp - 0x365], al
movzx eax, byte [ebp - 0x36e]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x246], al
mov dword [ebp - 0x36c], 0x26
cmp dword [ebp - 0x36c], 2
jle 0x510a67
mov eax, dword [ebp - 0x36c]
and eax, 1
jne 0x510a67
and dword [ebp - 0x3b0], 0
and dword [ebp - 0x3ac], 0
mov eax, dword [ebp - 0x3ac]
inc eax
mov dword [ebp - 0x3ac], eax
and dword [ebp - 0x380], 0
mov eax, dword [ebp - 0x3b0]
shl eax, 1
mov dword [ebp - 0x380], eax
and dword [ebp - 0x3c0], 0
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x380]
movzx eax, byte [eax]
add eax, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c0], eax
and dword [ebp - 0x388], 0
mov eax, dword [ebp - 0x388]
add eax, 0x6f
mov dword [ebp - 0x388], eax
and dword [ebp - 0x39c], 0
mov eax, dword [ebp - 0x3b0]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x39c], eax
and dword [ebp - 0x3dc], 0
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
add eax, dword [ebp - 0x3dc]
mov dword [ebp - 0x3dc], eax
and dword [ebp - 0x3bc], 0
mov eax, dword [ebp - 0x3bc]
add eax, 0x7a
mov dword [ebp - 0x3bc], eax
and dword [ebp - 0x3d8], 0
mov eax, dword [ebp - 0x3c0]
sub eax, dword [ebp - 0x388]
add eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x3d8], eax
and dword [ebp - 0x384], 0
mov eax, dword [ebp - 0x3dc]
sub eax, dword [ebp - 0x3bc]
add eax, dword [ebp - 0x384]
mov dword [ebp - 0x384], eax
and dword [ebp - 0x3d4], 0
mov eax, dword [ebp - 0x3d8]
shl eax, 4
mov dword [ebp - 0x3d4], eax
and dword [ebp - 0x3b8], 0
mov eax, dword [ebp - 0x384]
mov dword [ebp - 0x3b8], eax
and dword [ebp - 0x3a8], 0
mov eax, dword [ebp - 0x3d4]
or eax, dword [ebp - 0x3b8]
mov dword [ebp - 0x3a8], eax
mov byte [ebp - 0x395], 0
mov al, byte [ebp - 0x3a8]
mov byte [ebp - 0x395], al
mov byte [ebp - 0x3cd], 0
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x3cd], al
movzx eax, byte [ebp - 0x36f]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x255]
add ecx, eax
mov byte [ebp - 0x255], cl
mov al, byte [ebp - 0x36f]
add al, 1
mov byte [ebp - 0x36f], al
movzx eax, byte [ebp - 0x255]
movzx ecx, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x365]
movzx ecx, byte [ebp - 0x255]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x36f]
movzx ecx, byte [ebp - 0x365]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x36f]
mov cl, byte [ebp - 0x3cd]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x3cd]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x395]
movzx ecx, byte [ebp - 0x255]
movzx ecx, byte [ebp + ecx - 0x35c]
movzx edx, byte [ebp - 0x36f]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x35c]
xor eax, ecx
movzx ecx, byte [ebp - 0x365]
movzx ecx, byte [ebp + ecx - 0x35c]
movzx edx, byte [ebp - 0x246]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
movzx edx, byte [ebp - 0x35d]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x35c]
movzx ecx, byte [ebp + ecx - 0x35c]
xor eax, ecx
mov byte [ebp - 0x365], al
mov al, byte [ebp - 0x395]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x3b1], al
cmp dword [ebp - 0x3b0], 0
jle 0x50fef9
mov eax, dword [ebp - 0x3b0]
mov cl, byte [ebp - 0x3b1]
mov byte [ebp + eax - 0x229], cl
mov eax, dword [ebp - 0x3b0]
inc eax
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x3ac]
inc eax
mov dword [ebp - 0x3ac], eax
mov eax, dword [ebp - 0x3b0]
shl eax, 1
mov dword [ebp - 0x380], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x380]
movzx eax, byte [eax]
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x388], 0x6f
mov eax, dword [ebp - 0x3b0]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
mov dword [ebp - 0x3dc], eax
mov dword [ebp - 0x3bc], 0x7a
mov eax, dword [ebp - 0x3c0]
sub eax, dword [ebp - 0x388]
mov dword [ebp - 0x3d8], eax
mov eax, dword [ebp - 0x3dc]
sub eax, dword [ebp - 0x3bc]
mov dword [ebp - 0x384], eax
mov eax, dword [ebp - 0x3d8]
shl eax, 4
mov dword [ebp - 0x3d4], eax
mov eax, dword [ebp - 0x384]
mov dword [ebp - 0x3b8], eax
mov eax, dword [ebp - 0x3d4]
or eax, dword [ebp - 0x3b8]
mov dword [ebp - 0x3a8], eax
mov al, byte [ebp - 0x3a8]
mov byte [ebp - 0x395], al
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x3cd], al
movzx eax, byte [ebp - 0x36f]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x255]
add ecx, eax
mov byte [ebp - 0x255], cl
mov al, byte [ebp - 0x36f]
add al, 1
mov byte [ebp - 0x36f], al
movzx eax, byte [ebp - 0x255]
movzx ecx, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x365]
movzx ecx, byte [ebp - 0x255]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x36f]
movzx ecx, byte [ebp - 0x365]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x36f]
mov cl, byte [ebp - 0x3cd]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x3cd]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x395]
movzx ecx, byte [ebp - 0x255]
movzx ecx, byte [ebp + ecx - 0x35c]
movzx edx, byte [ebp - 0x36f]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x35c]
xor eax, ecx
movzx ecx, byte [ebp - 0x365]
movzx ecx, byte [ebp + ecx - 0x35c]
movzx edx, byte [ebp - 0x246]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
movzx edx, byte [ebp - 0x35d]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x35c]
movzx ecx, byte [ebp + ecx - 0x35c]
xor eax, ecx
mov byte [ebp - 0x365], al
mov al, byte [ebp - 0x395]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x3b1], al
cmp dword [ebp - 0x3b0], 0
jle 0x51014c
mov eax, dword [ebp - 0x3b0]
mov cl, byte [ebp - 0x3b1]
mov byte [ebp + eax - 0x229], cl
mov eax, dword [ebp - 0x3b0]
inc eax
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x3ac]
inc eax
mov dword [ebp - 0x3ac], eax
mov eax, dword [ebp - 0x3b0]
shl eax, 1
mov dword [ebp - 0x380], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x380]
movzx eax, byte [eax]
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x388], 0x6f
mov eax, dword [ebp - 0x3b0]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
mov dword [ebp - 0x3dc], eax
mov dword [ebp - 0x3bc], 0x7a
mov eax, dword [ebp - 0x3c0]
sub eax, dword [ebp - 0x388]
mov dword [ebp - 0x3d8], eax
mov eax, dword [ebp - 0x3dc]
sub eax, dword [ebp - 0x3bc]
mov dword [ebp - 0x384], eax
mov eax, dword [ebp - 0x3d8]
shl eax, 4
mov dword [ebp - 0x3d4], eax
mov eax, dword [ebp - 0x384]
mov dword [ebp - 0x3b8], eax
mov eax, dword [ebp - 0x3d4]
or eax, dword [ebp - 0x3b8]
mov dword [ebp - 0x3a8], eax
mov al, byte [ebp - 0x3a8]
mov byte [ebp - 0x395], al
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x3cd], al
movzx eax, byte [ebp - 0x36f]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x255]
add ecx, eax
mov byte [ebp - 0x255], cl
mov al, byte [ebp - 0x36f]
add al, 1
mov byte [ebp - 0x36f], al
fld qword [0x997b88]
fstp qword [ebp - 0x3cc]
fld qword [0x997b80]
fstp qword [ebp - 0x3a4]
fld qword [0x997b78]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x3cc]
fsub qword [ebp - 0x394]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3a4]
fmul qword [ebp - 0x394]
fstp qword [ebp - 0x3a4]
fld qword [ebp - 0x3a4]
fmul qword [ebp - 0x394]
fstp qword [ebp - 0x3a4]
fld qword [ebp - 0x394]
fcomp qword [ebp - 0x3a4]
fnstsw ax
test ah, 5
jp 0x510323
fld qword [ebp - 0x394]
fmul qword [ebp - 0x3cc]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x394]
fsub qword [ebp - 0x3cc]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x3a4]
fmul qword [ebp - 0x394]
fstp qword [ebp - 0x3a4]
movzx eax, byte [ebp - 0x255]
movzx ecx, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
jmp 0x510410
fld qword [ebp - 0x3a4]
fmul qword [ebp - 0x3cc]
fstp qword [ebp - 0x3a4]
fld qword [ebp - 0x394]
fdiv qword [ebp - 0x3a4]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x3cc]
fdiv qword [ebp - 0x394]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3cc]
fdiv qword [ebp - 0x394]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3cc]
fdiv qword [ebp - 0x394]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3cc]
fsub qword [ebp - 0x394]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x394]
fcomp qword [ebp - 0x3cc]
fnstsw ax
test ah, 5
jp 0x5103da
fld qword [ebp - 0x394]
fadd qword [ebp - 0x3a4]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x394]
fadd qword [ebp - 0x3a4]
fstp qword [ebp - 0x394]
fld qword [ebp - 0x3cc]
fmul qword [ebp - 0x394]
fstp qword [ebp - 0x3cc]
jmp 0x510410
fld qword [ebp - 0x3a4]
fdiv qword [ebp - 0x394]
fstp qword [ebp - 0x3a4]
fld qword [ebp - 0x3a4]
fsub qword [ebp - 0x394]
fstp qword [ebp - 0x3a4]
fld qword [ebp - 0x3cc]
fmul qword [ebp - 0x3a4]
fstp qword [ebp - 0x3cc]
movzx eax, byte [ebp - 0x365]
movzx ecx, byte [ebp - 0x255]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x36f]
movzx ecx, byte [ebp - 0x365]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x36f]
mov cl, byte [ebp - 0x3cd]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x3cd]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x395]
movzx ecx, byte [ebp - 0x255]
movzx ecx, byte [ebp + ecx - 0x35c]
movzx edx, byte [ebp - 0x36f]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x35c]
xor eax, ecx
movzx ecx, byte [ebp - 0x365]
movzx ecx, byte [ebp + ecx - 0x35c]
movzx edx, byte [ebp - 0x246]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
movzx edx, byte [ebp - 0x35d]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x35c]
movzx ecx, byte [ebp + ecx - 0x35c]
xor eax, ecx
mov byte [ebp - 0x365], al
mov al, byte [ebp - 0x395]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x3b1], al
cmp dword [ebp - 0x3b0], 0
jle 0x510534
mov eax, dword [ebp - 0x3b0]
mov cl, byte [ebp - 0x3b1]
mov byte [ebp + eax - 0x229], cl
mov eax, dword [ebp - 0x3ac]
add eax, 8
mov dword [ebp - 0x3ac], eax
mov eax, dword [ebp - 0x3b0]
inc eax
mov dword [ebp - 0x3e0], eax
jmp 0x51055f
mov eax, dword [ebp - 0x3e0]
inc eax
mov dword [ebp - 0x3e0], eax
mov eax, dword [ebp - 0x3e0]
cmp eax, dword [ebp - 0x3ac]
jge 0x5107bc
mov eax, dword [ebp - 0x3b0]
inc eax
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x3b0]
shl eax, 1
mov dword [ebp - 0x380], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x380]
movzx eax, byte [eax]
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x388], 0x6f
mov eax, dword [ebp - 0x3b0]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
mov dword [ebp - 0x3dc], eax
mov dword [ebp - 0x3bc], 0x7a
mov eax, dword [ebp - 0x3c0]
sub eax, dword [ebp - 0x388]
mov dword [ebp - 0x3d8], eax
mov eax, dword [ebp - 0x3dc]
sub eax, dword [ebp - 0x3bc]
mov dword [ebp - 0x384], eax
mov eax, dword [ebp - 0x3d8]
shl eax, 4
mov dword [ebp - 0x3d4], eax
mov eax, dword [ebp - 0x384]
mov dword [ebp - 0x3b8], eax
mov eax, dword [ebp - 0x3d4]
or eax, dword [ebp - 0x3b8]
mov dword [ebp - 0x3a8], eax
mov al, byte [ebp - 0x3a8]
mov byte [ebp - 0x395], al
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x3cd], al
movzx eax, byte [ebp - 0x36f]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x255]
add ecx, eax
mov byte [ebp - 0x255], cl
mov al, byte [ebp - 0x36f]
add al, 1
mov byte [ebp - 0x36f], al
movzx eax, byte [ebp - 0x255]
movzx ecx, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x365]
movzx ecx, byte [ebp - 0x255]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x36f]
movzx ecx, byte [ebp - 0x365]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x36f]
mov cl, byte [ebp - 0x3cd]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x3cd]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x395]
movzx ecx, byte [ebp - 0x255]
movzx ecx, byte [ebp + ecx - 0x35c]
movzx edx, byte [ebp - 0x36f]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x35c]
xor eax, ecx
movzx ecx, byte [ebp - 0x365]
movzx ecx, byte [ebp + ecx - 0x35c]
movzx edx, byte [ebp - 0x246]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
movzx edx, byte [ebp - 0x35d]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x35c]
movzx ecx, byte [ebp + ecx - 0x35c]
xor eax, ecx
mov byte [ebp - 0x365], al
mov al, byte [ebp - 0x395]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x3b1], al
cmp dword [ebp - 0x3b0], 0
jle 0x5107b7
mov eax, dword [ebp - 0x3b0]
mov cl, byte [ebp - 0x3b1]
mov byte [ebp + eax - 0x229], cl
jmp 0x510552
mov eax, dword [ebp - 0x3ac]
inc eax
mov dword [ebp - 0x3ac], eax
mov eax, dword [ebp - 0x3ac]
add eax, 8
mov dword [ebp - 0x3ac], eax
mov eax, dword [ebp - 0x3b0]
inc eax
mov dword [ebp - 0x3e4], eax
jmp 0x5107f4
mov eax, dword [ebp - 0x3e4]
inc eax
mov dword [ebp - 0x3e4], eax
mov eax, dword [ebp - 0x3e4]
cmp eax, dword [ebp - 0x3ac]
jge 0x510a51
mov eax, dword [ebp - 0x3b0]
inc eax
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x3b0]
shl eax, 1
mov dword [ebp - 0x380], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x380]
movzx eax, byte [eax]
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x388], 0x6f
mov eax, dword [ebp - 0x3b0]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
mov dword [ebp - 0x3dc], eax
mov dword [ebp - 0x3bc], 0x7a
mov eax, dword [ebp - 0x3c0]
sub eax, dword [ebp - 0x388]
mov dword [ebp - 0x3d8], eax
mov eax, dword [ebp - 0x3dc]
sub eax, dword [ebp - 0x3bc]
mov dword [ebp - 0x384], eax
mov eax, dword [ebp - 0x3d8]
shl eax, 4
mov dword [ebp - 0x3d4], eax
mov eax, dword [ebp - 0x384]
mov dword [ebp - 0x3b8], eax
mov eax, dword [ebp - 0x3d4]
or eax, dword [ebp - 0x3b8]
mov dword [ebp - 0x3a8], eax
mov al, byte [ebp - 0x3a8]
mov byte [ebp - 0x395], al
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x3cd], al
movzx eax, byte [ebp - 0x36f]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x255]
add ecx, eax
mov byte [ebp - 0x255], cl
mov al, byte [ebp - 0x36f]
add al, 1
mov byte [ebp - 0x36f], al
movzx eax, byte [ebp - 0x255]
movzx ecx, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x365]
movzx ecx, byte [ebp - 0x255]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x36f]
movzx ecx, byte [ebp - 0x365]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
movzx eax, byte [ebp - 0x36f]
mov cl, byte [ebp - 0x3cd]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x3cd]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x395]
movzx ecx, byte [ebp - 0x255]
movzx ecx, byte [ebp + ecx - 0x35c]
movzx edx, byte [ebp - 0x36f]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x35c]
xor eax, ecx
movzx ecx, byte [ebp - 0x365]
movzx ecx, byte [ebp + ecx - 0x35c]
movzx edx, byte [ebp - 0x246]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
movzx edx, byte [ebp - 0x35d]
movzx edx, byte [ebp + edx - 0x35c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x35c]
movzx ecx, byte [ebp + ecx - 0x35c]
xor eax, ecx
mov byte [ebp - 0x365], al
mov al, byte [ebp - 0x395]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x3b1], al
cmp dword [ebp - 0x3b0], 0
jle 0x510a4c
mov eax, dword [ebp - 0x3b0]
mov cl, byte [ebp - 0x3b1]
mov byte [ebp + eax - 0x229], cl
jmp 0x5107e7
mov eax, dword [ebp - 0x3ac]
inc eax
mov dword [ebp - 0x3ac], eax
mov byte [ebp - 0x216], 0
jmp 0x510a96
and dword [ebp - 0x3e8], 0
jmp 0x510a7d
mov eax, dword [ebp - 0x3e8]
inc eax
mov dword [ebp - 0x3e8], eax
cmp dword [ebp - 0x3e8], 0x13
jge 0x510a96
mov eax, dword [ebp - 0x3e8]
mov byte [ebp + eax - 0x228], 0
jmp 0x510a70
lea eax, [ebp - 0x228]
push eax
mov ecx, dword [0x9cea1c]
call fcn.0044d833
mov dword [ebp - 0x234], eax
push 0x104
lea eax, [ebp - 0x214]
push eax
push 0
call dword [ebp - 0x234]
test eax, eax
je 0x51894d
xor eax, eax
mov word [ebp - 0x65c], ax
push 0x206
push 0
lea eax, [ebp - 0x65a]
push eax
call fcn.0092bc20
add esp, 0xc
lea eax, [ebp - 0x214]
mov dword [ebp - 0xfa4], eax
lea eax, [ebp - 0x65c]
mov dword [ebp - 0xfa8], eax
mov eax, dword [ebp - 0xfa8]
mov dword [ebp - 0xfac], eax
mov eax, dword [ebp - 0xfa4]
mov ax, word [eax]
mov word [ebp - 0xfae], ax
mov eax, dword [ebp - 0xfa8]
mov cx, word [ebp - 0xfae]
mov word [eax], cx
mov eax, dword [ebp - 0xfa4]
inc eax
inc eax
mov dword [ebp - 0xfa4], eax
mov eax, dword [ebp - 0xfa8]
inc eax
inc eax
mov dword [ebp - 0xfa8], eax
cmp word [ebp - 0xfae], 0
jne 0x510b0d
push 0x2e
lea eax, [ebp - 0x65c]
push eax
call fcn.004fddbd
pop ecx
pop ecx
mov dword [ebp - 0x3fc], eax
mov eax, dword [ebp - 0x3fc]
movzx eax, word [eax + 4]
cmp eax, 0x78
jne 0x510b8b
mov eax, dword [ebp - 0x3fc]
movzx eax, word [eax + 6]
cmp eax, 0x65
je 0x51190f
and dword [ebp - 0x68c], 0
and dword [ebp - 0x690], 0
fldz
fstp qword [ebp - 0x6ac]
fldz
fstp qword [ebp - 0x6a4]
fldz
fstp qword [ebp - 0x6a4]
jmp 0x510bc5
fld qword [ebp - 0x6a4]
fadd qword [0x9976d0]
fstp qword [ebp - 0x6a4]
fld qword [0x99b960]
fcomp qword [ebp - 0x6a4]
fnstsw ax
test ah, 0x41
jne 0x510c4e
fld qword [0x99b958]
fmul qword [ebp - 0x6a4]
fmul qword [ebp - 0x6a4]
fld qword [ebp - 0x6a4]
fmul qword [ebp - 0x6a4]
fsubp st(1)
fld qword [0x99b950]
fmul qword [ebp - 0x6a4]
fmul qword [ebp - 0x6a4]
fadd qword [0x99b948]
fdivp st(1)
fadd qword [ebp - 0x6ac]
fstp qword [ebp - 0x6ac]
fld qword [0x99b940]
add eax, 0x99b940
fcomp qword [ebp - 0x6ac]
fnstsw ax
test ah, 5
jp 0x510c49
fld qword [0x99b938]
fmul qword [ebp - 0x6a4]
fsubr qword [ebp - 0x6ac]
fstp qword [ebp - 0x6ac]
jmp 0x510bb3
fldz
fcomp qword [ebp - 0x6ac]
fnstsw ax
test ah, 0x41
jne 0x510c82
faddp st(0)
loope 0x510c1f
in al, 0xbb
in eax, 0xc7
fidivr dword [edx + 0x2c643771]
jns 0x510cac
insd dword es:[edi], dx
push 0x4a
dec ebp
jp 0x510cd9
and byte [ecx + 0x43], cl
push ebx
inc esp
push esp
inc esp
xor eax, 0xb7e97176
or eax, dword [eax]
add bh, al
test dword [ecx + edi*8 - 1], esi
call [ebp + 0xc]
push ecx
add bh, al
test dword [eax - 7], esi
invalid
mov dword [ebp - 0x68c], 0x510c5d
mov dword [ebp - 0x690], 0x510c67
mov eax, dword [ebp - 0x68c]
mov dword [ebp - 0x6b8], eax
mov eax, dword [ebp - 0x690]
mov dword [ebp - 0x6b4], eax
mov byte [ebp - 0x7d5], 0x1a
and dword [ebp - 0x7cc], 0
jmp 0x510ccb
invalid
mov eax, dword [ebp - 0x7cc]
inc eax
mov dword [ebp - 0x7cc], eax
cmp dword [ebp - 0x7cc], 0x100
jae 0x510cec
mov eax, dword [ebp - 0x7cc]
mov cl, byte [ebp - 0x7cc]
mov byte [ebp + eax - 0x7c4], cl
jmp 0x510cbe
xor al, 0xf8
invalid
and dword [ebp - 0x6bc], 0
mov byte [ebp - 0x7d6], 0
mov dword [ebp - 0x7cc], 0xff
jmp 0x510d13
mov eax, dword [ebp - 0x7cc]
dec eax
mov dword [ebp - 0x7cc], eax
cmp dword [ebp - 0x7cc], 0
jbe 0x510f8d
and dword [ebp - 0x7dc], 0
mov dword [ebp - 0x7e4], 1
mov eax, dword [ebp - 0x7e4]
cmp eax, dword [ebp - 0x7cc]
jae 0x510d51
mov eax, dword [ebp - 0x7e4]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x7e4], eax
jmp 0x510d31
mov eax, dword [ebp - 0x6bc]
mov dword [ebp - 0xfb4], eax
mov eax, dword [ebp - 0xfb4]
mov dword [ebp - 0xfb8], eax
cmp dword [ebp - 0xfb8], 0
je 0x510d96
sub dword [ebp - 0xfb8], 1
je 0x510dc2
sub dword [ebp - 0xfb8], 1
je 0x510dee
sub dword [ebp - 0xfb8], 1
je 0x510e1a
jmp 0x510e46
movzx eax, byte [ebp - 0x7d6]
movzx ebx, byte [ebp + eax - 0x7c4]
fld qword [ebp - 0x6ac]
call fcn.0092d216
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x7d6], bl
jmp 0x510e6d
movzx eax, byte [ebp - 0x7d6]
movzx ebx, byte [ebp + eax - 0x7c4]
fld qword [ebp - 0x6ac]
call fcn.0092d216
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x7d6], bl
jmp 0x510e6d
movzx eax, byte [ebp - 0x7d6]
movzx ebx, byte [ebp + eax - 0x7c4]
fld qword [ebp - 0x6ac]
call fcn.0092d216
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x7d6], bl
jmp 0x510e6d
movzx eax, byte [ebp - 0x7d6]
movzx ebx, byte [ebp + eax - 0x7c4]
fld qword [ebp - 0x6ac]
call fcn.0092d216
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x7d6], bl
jmp 0x510e6d
movzx eax, byte [ebp - 0x7d6]
movzx eax, byte [ebp + eax - 0x7c4]
mov ecx, dword [ebp - 0x6b4]
add ecx, dword [ebp - 0x6bc]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0x7d6], al
mov eax, dword [ebp - 0x6bc]
inc eax
mov dword [ebp - 0x6bc], eax
movzx eax, byte [ebp - 0x7d5]
cmp dword [ebp - 0x6bc], eax
jb 0x510ea6
and dword [ebp - 0x6bc], 0
movzx eax, byte [ebp - 0x7d5]
movzx ecx, byte [ebp - 0x7d6]
add ecx, eax
mov byte [ebp - 0x7d6], cl
movzx eax, byte [ebp - 0x7d6]
and eax, dword [ebp - 0x7e4]
mov dword [ebp - 0x7e0], eax
mov eax, dword [ebp - 0x7dc]
inc eax
mov dword [ebp - 0x7dc], eax
cmp dword [ebp - 0x7dc], 0xb
jbe 0x510ee3
mov eax, dword [ebp - 0x7e0]
xor edx, edx
div dword [ebp - 0x7cc]
mov dword [ebp - 0x7e0], edx
mov eax, dword [ebp - 0x7e0]
cmp eax, dword [ebp - 0x7cc]
ja 0x510d51
mov eax, dword [ebp - 0x7cc]
cmp eax, dword [ebp - 0x7e0]
je 0x510f88
mov eax, dword [ebp - 0x7e0]
movzx eax, byte [ebp + eax - 0x7c4]
mov ecx, dword [ebp - 0x7cc]
movzx ecx, byte [ebp + ecx - 0x7c4]
xor ecx, eax
mov eax, dword [ebp - 0x7cc]
mov byte [ebp + eax - 0x7c4], cl
mov eax, dword [ebp - 0x7cc]
movzx eax, byte [ebp + eax - 0x7c4]
mov ecx, dword [ebp - 0x7e0]
movzx ecx, byte [ebp + ecx - 0x7c4]
xor ecx, eax
mov eax, dword [ebp - 0x7e0]
mov byte [ebp + eax - 0x7c4], cl
mov eax, dword [ebp - 0x7e0]
movzx eax, byte [ebp + eax - 0x7c4]
mov ecx, dword [ebp - 0x7cc]
movzx ecx, byte [ebp + ecx - 0x7c4]
xor ecx, eax
mov eax, dword [ebp - 0x7cc]
mov byte [ebp + eax - 0x7c4], cl
jmp 0x510d06
mov al, byte [ebp - 0x7c3]
mov byte [ebp - 0x7d7], al
mov al, byte [ebp - 0x7c1]
mov byte [ebp - 0x6bd], al
mov al, byte [ebp - 0x7bf]
mov byte [ebp - 0x7c5], al
mov al, byte [ebp - 0x7bd]
mov byte [ebp - 0x7cd], al
movzx eax, byte [ebp - 0x7d6]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp - 0x6ad], al
mov dword [ebp - 0x7d4], 0xa
cmp dword [ebp - 0x7d4], 2
jle 0x511808
mov eax, dword [ebp - 0x7d4]
and eax, 1
jne 0x511808
and dword [ebp - 0x804], 0
and dword [ebp - 0x800], 0
mov eax, dword [ebp - 0x800]
inc eax
mov dword [ebp - 0x800], eax
and dword [ebp - 0x7e8], 0
mov eax, dword [ebp - 0x804]
shl eax, 1
mov dword [ebp - 0x7e8], eax
and dword [ebp - 0x814], 0
mov eax, dword [ebp - 0x6b8]
add eax, dword [ebp - 0x7e8]
movzx eax, byte [eax]
add eax, dword [ebp - 0x814]
mov dword [ebp - 0x814], eax
and dword [ebp - 0x7f0], 0
mov eax, dword [ebp - 0x7f0]
add eax, 0xd7
mov dword [ebp - 0x7f0], eax
and dword [ebp - 0x7f8], 0
mov eax, dword [ebp - 0x804]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x7f8], eax
and dword [ebp - 0x824], 0
mov eax, dword [ebp - 0x6b8]
add eax, dword [ebp - 0x7f8]
movzx eax, byte [eax]
add eax, dword [ebp - 0x824]
mov dword [ebp - 0x824], eax
and dword [ebp - 0x810], 0
mov eax, dword [ebp - 0x810]
add eax, 0xba
mov dword [ebp - 0x810], eax
and dword [ebp - 0x820], 0
mov eax, dword [ebp - 0x814]
sub eax, dword [ebp - 0x7f0]
add eax, dword [ebp - 0x820]
mov dword [ebp - 0x820], eax
and dword [ebp - 0x7ec], 0
mov eax, dword [ebp - 0x824]
sub eax, dword [ebp - 0x810]
add eax, dword [ebp - 0x7ec]
mov dword [ebp - 0x7ec], eax
and dword [ebp - 0x81c], 0
mov eax, dword [ebp - 0x820]
shl eax, 4
mov dword [ebp - 0x81c], eax
and dword [ebp - 0x80c], 0
mov eax, dword [ebp - 0x7ec]
mov dword [ebp - 0x80c], eax
and dword [ebp - 0x7fc], 0
mov eax, dword [ebp - 0x81c]
or eax, dword [ebp - 0x80c]
mov dword [ebp - 0x7fc], eax
mov byte [ebp - 0x7f1], 0
mov al, byte [ebp - 0x7fc]
mov byte [ebp - 0x7f1], al
mov byte [ebp - 0x815], 0
movzx eax, byte [ebp - 0x6ad]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp - 0x815], al
movzx eax, byte [ebp - 0x7d7]
movzx eax, byte [ebp + eax - 0x7c4]
movzx ecx, byte [ebp - 0x6bd]
add ecx, eax
mov byte [ebp - 0x6bd], cl
mov al, byte [ebp - 0x7d7]
add al, 1
mov byte [ebp - 0x7d7], al
movzx eax, byte [ebp - 0x6bd]
movzx ecx, byte [ebp - 0x6ad]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp + ecx - 0x7c4], al
movzx eax, byte [ebp - 0x7cd]
movzx ecx, byte [ebp - 0x6bd]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp + ecx - 0x7c4], al
movzx eax, byte [ebp - 0x7d7]
movzx ecx, byte [ebp - 0x7cd]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp + ecx - 0x7c4], al
movzx eax, byte [ebp - 0x7d7]
mov cl, byte [ebp - 0x815]
mov byte [ebp + eax - 0x7c4], cl
movzx eax, byte [ebp - 0x815]
movzx eax, byte [ebp + eax - 0x7c4]
movzx ecx, byte [ebp - 0x7c5]
add ecx, eax
mov byte [ebp - 0x7c5], cl
movzx eax, byte [ebp - 0x7f1]
movzx ecx, byte [ebp - 0x6bd]
movzx ecx, byte [ebp + ecx - 0x7c4]
movzx edx, byte [ebp - 0x7d7]
movzx edx, byte [ebp + edx - 0x7c4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x7c4]
xor eax, ecx
movzx ecx, byte [ebp - 0x7cd]
movzx ecx, byte [ebp + ecx - 0x7c4]
movzx edx, byte [ebp - 0x6ad]
movzx edx, byte [ebp + edx - 0x7c4]
add ecx, edx
movzx edx, byte [ebp - 0x7c5]
movzx edx, byte [ebp + edx - 0x7c4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x7c4]
movzx ecx, byte [ebp + ecx - 0x7c4]
xor eax, ecx
mov byte [ebp - 0x7cd], al
mov al, byte [ebp - 0x7f1]
mov byte [ebp - 0x6ad], al
mov al, byte [ebp - 0x7cd]
mov byte [ebp - 0x805], al
cmp dword [ebp - 0x804], 0
jle 0x5112cf
movsx ax, byte [ebp - 0x805]
mov ecx, dword [ebp - 0x804]
mov word [ebp + ecx*2 - 0x69e], ax
mov eax, dword [ebp - 0x800]
inc eax
inc eax
mov dword [ebp - 0x800], eax
mov eax, dword [ebp - 0x804]
inc eax
mov dword [ebp - 0x828], eax
jmp 0x5112f9
mov eax, dword [ebp - 0x828]
inc eax
mov dword [ebp - 0x828], eax
mov eax, dword [ebp - 0x828]
cmp eax, dword [ebp - 0x800]
jge 0x511559
mov eax, dword [ebp - 0x804]
inc eax
mov dword [ebp - 0x804], eax
mov eax, dword [ebp - 0x804]
shl eax, 1
mov dword [ebp - 0x7e8], eax
mov eax, dword [ebp - 0x6b8]
add eax, dword [ebp - 0x7e8]
movzx eax, byte [eax]
mov dword [ebp - 0x814], eax
mov dword [ebp - 0x7f0], 0xd7
mov eax, dword [ebp - 0x804]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x7f8], eax
mov eax, dword [ebp - 0x6b8]
add eax, dword [ebp - 0x7f8]
movzx eax, byte [eax]
mov dword [ebp - 0x824], eax
mov dword [ebp - 0x810], 0xba
mov eax, dword [ebp - 0x814]
sub eax, dword [ebp - 0x7f0]
mov dword [ebp - 0x820], eax
mov eax, dword [ebp - 0x824]
sub eax, dword [ebp - 0x810]
mov dword [ebp - 0x7ec], eax
mov eax, dword [ebp - 0x820]
shl eax, 4
mov dword [ebp - 0x81c], eax
mov eax, dword [ebp - 0x7ec]
mov dword [ebp - 0x80c], eax
mov eax, dword [ebp - 0x81c]
or eax, dword [ebp - 0x80c]
mov dword [ebp - 0x7fc], eax
mov al, byte [ebp - 0x7fc]
mov byte [ebp - 0x7f1], al
movzx eax, byte [ebp - 0x6ad]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp - 0x815], al
movzx eax, byte [ebp - 0x7d7]
movzx eax, byte [ebp + eax - 0x7c4]
movzx ecx, byte [ebp - 0x6bd]
add ecx, eax
mov byte [ebp - 0x6bd], cl
mov al, byte [ebp - 0x7d7]
add al, 1
mov byte [ebp - 0x7d7], al
movzx eax, byte [ebp - 0x6bd]
movzx ecx, byte [ebp - 0x6ad]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp + ecx - 0x7c4], al
movzx eax, byte [ebp - 0x7cd]
movzx ecx, byte [ebp - 0x6bd]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp + ecx - 0x7c4], al
movzx eax, byte [ebp - 0x7d7]
movzx ecx, byte [ebp - 0x7cd]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp + ecx - 0x7c4], al
movzx eax, byte [ebp - 0x7d7]
mov cl, byte [ebp - 0x815]
mov byte [ebp + eax - 0x7c4], cl
movzx eax, byte [ebp - 0x815]
movzx eax, byte [ebp + eax - 0x7c4]
movzx ecx, byte [ebp - 0x7c5]
add ecx, eax
mov byte [ebp - 0x7c5], cl
movzx eax, byte [ebp - 0x7f1]
movzx ecx, byte [ebp - 0x6bd]
movzx ecx, byte [ebp + ecx - 0x7c4]
movzx edx, byte [ebp - 0x7d7]
movzx edx, byte [ebp + edx - 0x7c4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x7c4]
xor eax, ecx
movzx ecx, byte [ebp - 0x7cd]
movzx ecx, byte [ebp + ecx - 0x7c4]
movzx edx, byte [ebp - 0x6ad]
movzx edx, byte [ebp + edx - 0x7c4]
add ecx, edx
movzx edx, byte [ebp - 0x7c5]
movzx edx, byte [ebp + edx - 0x7c4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x7c4]
movzx ecx, byte [ebp + ecx - 0x7c4]
xor eax, ecx
mov byte [ebp - 0x7cd], al
mov al, byte [ebp - 0x7f1]
mov byte [ebp - 0x6ad], al
mov al, byte [ebp - 0x7cd]
mov byte [ebp - 0x805], al
cmp dword [ebp - 0x804], 0
jle 0x511554
movsx ax, byte [ebp - 0x805]
mov ecx, dword [ebp - 0x804]
mov word [ebp + ecx*2 - 0x69e], ax
jmp 0x5112ec
mov eax, dword [ebp - 0x800]
inc eax
mov dword [ebp - 0x800], eax
mov eax, dword [ebp - 0x800]
inc eax
inc eax
mov dword [ebp - 0x800], eax
mov eax, dword [ebp - 0x804]
inc eax
mov dword [ebp - 0x82c], eax
jmp 0x511590
mov eax, dword [ebp - 0x82c]
inc eax
mov dword [ebp - 0x82c], eax
mov eax, dword [ebp - 0x82c]
cmp eax, dword [ebp - 0x800]
jge 0x5117f0
mov eax, dword [ebp - 0x804]
inc eax
mov dword [ebp - 0x804], eax
mov eax, dword [ebp - 0x804]
shl eax, 1
mov dword [ebp - 0x7e8], eax
mov eax, dword [ebp - 0x6b8]
add eax, dword [ebp - 0x7e8]
movzx eax, byte [eax]
mov dword [ebp - 0x814], eax
mov dword [ebp - 0x7f0], 0xd7
mov eax, dword [ebp - 0x804]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x7f8], eax
mov eax, dword [ebp - 0x6b8]
add eax, dword [ebp - 0x7f8]
movzx eax, byte [eax]
mov dword [ebp - 0x824], eax
mov dword [ebp - 0x810], 0xba
mov eax, dword [ebp - 0x814]
sub eax, dword [ebp - 0x7f0]
mov dword [ebp - 0x820], eax
mov eax, dword [ebp - 0x824]
sub eax, dword [ebp - 0x810]
mov dword [ebp - 0x7ec], eax
mov eax, dword [ebp - 0x820]
shl eax, 4
mov dword [ebp - 0x81c], eax
mov eax, dword [ebp - 0x7ec]
mov dword [ebp - 0x80c], eax
mov eax, dword [ebp - 0x81c]
or eax, dword [ebp - 0x80c]
mov dword [ebp - 0x7fc], eax
mov al, byte [ebp - 0x7fc]
mov byte [ebp - 0x7f1], al
movzx eax, byte [ebp - 0x6ad]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp - 0x815], al
movzx eax, byte [ebp - 0x7d7]
movzx eax, byte [ebp + eax - 0x7c4]
movzx ecx, byte [ebp - 0x6bd]
add ecx, eax
mov byte [ebp - 0x6bd], cl
mov al, byte [ebp - 0x7d7]
add al, 1
mov byte [ebp - 0x7d7], al
movzx eax, byte [ebp - 0x6bd]
movzx ecx, byte [ebp - 0x6ad]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp + ecx - 0x7c4], al
movzx eax, byte [ebp - 0x7cd]
movzx ecx, byte [ebp - 0x6bd]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp + ecx - 0x7c4], al
movzx eax, byte [ebp - 0x7d7]
movzx ecx, byte [ebp - 0x7cd]
mov al, byte [ebp + eax - 0x7c4]
mov byte [ebp + ecx - 0x7c4], al
movzx eax, byte [ebp - 0x7d7]
mov cl, byte [ebp - 0x815]
mov byte [ebp + eax - 0x7c4], cl
movzx eax, byte [ebp - 0x815]
movzx eax, byte [ebp + eax - 0x7c4]
movzx ecx, byte [ebp - 0x7c5]
add ecx, eax
mov byte [ebp - 0x7c5], cl
movzx eax, byte [ebp - 0x7f1]
movzx ecx, byte [ebp - 0x6bd]
movzx ecx, byte [ebp + ecx - 0x7c4]
movzx edx, byte [ebp - 0x7d7]
movzx edx, byte [ebp + edx - 0x7c4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x7c4]
xor eax, ecx
movzx ecx, byte [ebp - 0x7cd]
movzx ecx, byte [ebp + ecx - 0x7c4]
movzx edx, byte [ebp - 0x6ad]
movzx edx, byte [ebp + edx - 0x7c4]
add ecx, edx
movzx edx, byte [ebp - 0x7c5]
movzx edx, byte [ebp + edx - 0x7c4]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x7c4]
movzx ecx, byte [ebp + ecx - 0x7c4]
xor eax, ecx
mov byte [ebp - 0x7cd], al
mov al, byte [ebp - 0x7f1]
mov byte [ebp - 0x6ad], al
mov al, byte [ebp - 0x7cd]
mov byte [ebp - 0x805], al
cmp dword [ebp - 0x804], 0
jle 0x5117eb
movsx ax, byte [ebp - 0x805]
mov ecx, dword [ebp - 0x804]
mov word [ebp + ecx*2 - 0x69e], ax
jmp 0x511583
mov eax, dword [ebp - 0x800]
inc eax
mov dword [ebp - 0x800], eax
xor eax, eax
mov word [ebp - 0x694], ax
jmp 0x511839
and dword [ebp - 0x830], 0
jmp 0x51181e
mov eax, dword [ebp - 0x830]
inc eax
mov dword [ebp - 0x830], eax
cmp dword [ebp - 0x830], 5
jge 0x511839
xor eax, eax
mov ecx, dword [ebp - 0x830]
mov word [ebp + ecx*2 - 0x69c], ax
jmp 0x511811
xor eax, eax
mov ecx, dword [ebp - 0x3fc]
mov word [ecx], ax
lea eax, [ebp - 0x69c]
mov dword [ebp - 0xfbc], eax
mov eax, dword [ebp - 0xfbc]
mov dword [ebp - 0xfc0], eax
mov eax, dword [ebp - 0xfbc]
mov ax, word [eax]
mov word [ebp - 0xfc2], ax
add dword [ebp - 0xfbc], 2
cmp word [ebp - 0xfc2], 0
jne 0x51185c
mov eax, dword [ebp - 0xfbc]
sub eax, dword [ebp - 0xfc0]
mov ecx, dword [ebp - 0xfc0]
mov dword [ebp - 0xfc8], ecx
mov dword [ebp - 0xfcc], eax
lea eax, [ebp - 0x65c]
dec eax
dec eax
mov dword [ebp - 0xfd0], eax
mov eax, dword [ebp - 0xfd0]
mov ax, word [eax + 2]
mov word [ebp - 0xfd2], ax
add dword [ebp - 0xfd0], 2
cmp word [ebp - 0xfd2], 0
jne 0x5118a9
mov edi, dword [ebp - 0xfd0]
mov esi, dword [ebp - 0xfc8]
mov eax, dword [ebp - 0xfcc]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [ebp - 0x65c]
push eax
lea eax, [ebp - 0x214]
push eax
call fcn.0092dd12
pop ecx
pop ecx
lea eax, [ebp - 0x65c]
push eax
mov ecx, dword [ebp + 8]
call fcn.004a410d
lea eax, [ebp - 0x3f4]
push eax
push 0
push dword [ebp + 8]
push 0x507363
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
lea ecx, [ebp - 0x3f0]
call fcn.008e4c37
and dword [ebp - 4], 0
and dword [ebp - 0x3f8], 0
and dword [ebp - 0x688], 0
fldz
fstp qword [ebp - 0x424]
fldz
fstp qword [ebp - 0x454]
fldz
fstp qword [ebp - 0x454]
jmp 0x511973
fld qword [ebp - 0x454]
fadd qword [0x9973c0]
fstp qword [ebp - 0x454]
fld qword [0x99a168]
fcomp qword [ebp - 0x454]
fnstsw ax
test ah, 0x41
jne 0x5119fc
fld qword [0x99a160]
fmul qword [ebp - 0x454]
fmul qword [ebp - 0x454]
fld qword [ebp - 0x454]
fmul qword [ebp - 0x454]
fsubp st(1)
fld qword [0x99a158]
fmul qword [ebp - 0x454]
fmul qword [ebp - 0x454]
fadd qword [0x99a150]
fdivp st(1)
fadd qword [ebp - 0x424]
fstp qword [ebp - 0x424]
fld qword [0x99a148]
fcomp qword [ebp - 0x424]
fnstsw ax
test ah, 5
jp 0x5119f7
fld qword [0x99a140]
fmul qword [ebp - 0x454]
fsubr qword [ebp - 0x424]
fstp qword [ebp - 0x424]
jmp 0x511961
fldz
fcomp qword [ebp - 0x424]
fnstsw ax
test ah, 0x41
jne 0x511a44
cmc
inc ebx
cmc
dec edi
out dx, al
inc esi
std
dec esi
cli
push edx
invalid
mov dword [ebp - 0x3f8], 0x511a0b
mov dword [ebp - 0x688], 0x511a23
mov eax, dword [ebp - 0x3f8]
mov dword [ebp - 0x83c], eax
mov eax, dword [ebp - 0x688]
mov dword [ebp - 0x838], eax
mov byte [ebp - 0x96d], 0x20
and dword [ebp - 0x954], 0
jmp 0x511a8d
mov eax, dword [ebp - 0x954]
inc eax
mov dword [ebp - 0x954], eax
cmp dword [ebp - 0x954], 0x100
jae 0x511aae
mov eax, dword [ebp - 0x954]
mov cl, byte [ebp - 0x954]
mov byte [ebp + eax - 0x94c], cl
jmp 0x511a80
and dword [ebp - 0x848], 0
mov byte [ebp - 0x96e], 0
mov dword [ebp - 0x954], 0xff
jmp 0x511ad5
mov eax, dword [ebp - 0x954]
dec eax
mov dword [ebp - 0x954], eax
cmp dword [ebp - 0x954], 0
jbe 0x511d4f
and dword [ebp - 0x974], 0
mov dword [ebp - 0x97c], 1
mov eax, dword [ebp - 0x97c]
cmp eax, dword [ebp - 0x954]
jae 0x511b13
mov eax, dword [ebp - 0x97c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x97c], eax
jmp 0x511af3
mov eax, dword [ebp - 0x848]
mov dword [ebp - 0xfd8], eax
mov eax, dword [ebp - 0xfd8]
mov dword [ebp - 0xfdc], eax
cmp dword [ebp - 0xfdc], 0
je 0x511b58
sub dword [ebp - 0xfdc], 1
je 0x511b84
sub dword [ebp - 0xfdc], 1
je 0x511bb0
sub dword [ebp - 0xfdc], 1
je 0x511bdc
jmp 0x511c08
movzx eax, byte [ebp - 0x96e]
movzx ebx, byte [ebp + eax - 0x94c]
fld qword [ebp - 0x424]
call fcn.0092d216
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x96e], bl
jmp 0x511c2f
movzx eax, byte [ebp - 0x96e]
movzx ebx, byte [ebp + eax - 0x94c]
fld qword [ebp - 0x424]
call fcn.0092d216
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x96e], bl
jmp 0x511c2f
movzx eax, byte [ebp - 0x96e]
movzx ebx, byte [ebp + eax - 0x94c]
fld qword [ebp - 0x424]
call fcn.0092d216
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x96e], bl
jmp 0x511c2f
movzx eax, byte [ebp - 0x96e]
movzx ebx, byte [ebp + eax - 0x94c]
fld qword [ebp - 0x424]
call fcn.0092d216
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x96e], bl
jmp 0x511c2f
movzx eax, byte [ebp - 0x96e]
movzx eax, byte [ebp + eax - 0x94c]
mov ecx, dword [ebp - 0x838]
add ecx, dword [ebp - 0x848]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0x96e], al
mov eax, dword [ebp - 0x848]
inc eax
mov dword [ebp - 0x848], eax
movzx eax, byte [ebp - 0x96d]
cmp dword [ebp - 0x848], eax
jb 0x511c68
and dword [ebp - 0x848], 0
movzx eax, byte [ebp - 0x96d]
movzx ecx, byte [ebp - 0x96e]
add ecx, eax
mov byte [ebp - 0x96e], cl
movzx eax, byte [ebp - 0x96e]
and eax, dword [ebp - 0x97c]
mov dword [ebp - 0x978], eax
mov eax, dword [ebp - 0x974]
inc eax
mov dword [ebp - 0x974], eax
cmp dword [ebp - 0x974], 0xb
jbe 0x511ca5
mov eax, dword [ebp - 0x978]
xor edx, edx
div dword [ebp - 0x954]
mov dword [ebp - 0x978], edx
mov eax, dword [ebp - 0x978]
cmp eax, dword [ebp - 0x954]
ja 0x511b13
mov eax, dword [ebp - 0x954]
cmp eax, dword [ebp - 0x978]
je 0x511d4a
mov eax, dword [ebp - 0x978]
movzx eax, byte [ebp + eax - 0x94c]
mov ecx, dword [ebp - 0x954]
movzx ecx, byte [ebp + ecx - 0x94c]
xor ecx, eax
mov eax, dword [ebp - 0x954]
mov byte [ebp + eax - 0x94c], cl
mov eax, dword [ebp - 0x954]
movzx eax, byte [ebp + eax - 0x94c]
mov ecx, dword [ebp - 0x978]
movzx ecx, byte [ebp + ecx - 0x94c]
xor ecx, eax
mov eax, dword [ebp - 0x978]
mov byte [ebp + eax - 0x94c], cl
mov eax, dword [ebp - 0x978]
movzx eax, byte [ebp + eax - 0x94c]
mov ecx, dword [ebp - 0x954]
movzx ecx, byte [ebp + ecx - 0x94c]
xor ecx, eax
mov eax, dword [ebp - 0x954]
mov byte [ebp + eax - 0x94c], cl
jmp 0x511ac8
mov al, byte [ebp - 0x94b]
mov byte [ebp - 0x96f], al
mov al, byte [ebp - 0x949]
mov byte [ebp - 0x849], al
mov al, byte [ebp - 0x947]
mov byte [ebp - 0x94d], al
mov al, byte [ebp - 0x945]
mov byte [ebp - 0x955], al
fld qword [0x99a138]
fstp qword [ebp - 0x964]
fld qword [0x99a130]
fstp qword [ebp - 0x844]
fld qword [0x99a128]
fstp qword [ebp - 0x96c]
fld qword [ebp - 0x844]
fadd qword [ebp - 0x96c]
fstp qword [ebp - 0x844]
fld qword [ebp - 0x964]
fsub qword [ebp - 0x96c]
fstp qword [ebp - 0x964]
fld qword [ebp - 0x844]
fmul qword [ebp - 0x96c]
fstp qword [ebp - 0x844]
fld qword [ebp - 0x844]
fcomp qword [ebp - 0x96c]
fnstsw ax
test ah, 0x41
jne 0x511e38
fld qword [ebp - 0x96c]
fmul qword [ebp - 0x844]
fstp qword [ebp - 0x96c]
fld qword [ebp - 0x96c]
fsub qword [ebp - 0x844]
fstp qword [ebp - 0x96c]
fld qword [ebp - 0x844]
fmul qword [ebp - 0x964]
fstp qword [ebp - 0x844]
movzx eax, byte [ebp - 0x96e]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp - 0x831], al
jmp 0x511e6e
fld qword [ebp - 0x964]
fadd qword [ebp - 0x96c]
fstp qword [ebp - 0x964]
fld qword [ebp - 0x96c]
fmul qword [ebp - 0x844]
fstp qword [ebp - 0x96c]
fld qword [ebp - 0x964]
fadd qword [ebp - 0x96c]
fstp qword [ebp - 0x964]
mov dword [ebp - 0x95c], 0x18
cmp dword [ebp - 0x95c], 2
jle 0x514844
mov eax, dword [ebp - 0x95c]
and eax, 1
jne 0x514844
and dword [ebp - 0xa48], 0
and dword [ebp - 0xa44], 0
mov eax, dword [ebp - 0xa44]
inc eax
mov dword [ebp - 0xa44], eax
and dword [ebp - 0x980], 0
mov eax, dword [ebp - 0xa48]
shl eax, 1
mov dword [ebp - 0x980], eax
and dword [ebp - 0xa9c], 0
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0x980]
movzx eax, byte [eax]
add eax, dword [ebp - 0xa9c]
mov dword [ebp - 0xa9c], eax
and dword [ebp - 0x9e8], 0
fld qword [0x99a120]
fstp qword [ebp - 0xa3c]
fld qword [0x99a118]
fstp qword [ebp - 0x9e4]
fld qword [0x99a110]
fstp qword [ebp - 0x99c]
fld qword [ebp - 0x9e4]
fsub qword [ebp - 0x99c]
fstp qword [ebp - 0x9e4]
fld qword [ebp - 0xa3c]
fadd qword [ebp - 0x99c]
fstp qword [ebp - 0xa3c]
fld qword [ebp - 0x9e4]
fsub qword [ebp - 0x99c]
fstp qword [ebp - 0x9e4]
fld qword [ebp - 0x9e4]
fcomp qword [ebp - 0xa3c]
fnstsw ax
test ah, 5
jp 0x511fa6
fld qword [ebp - 0xa3c]
fadd qword [ebp - 0x9e4]
fstp qword [ebp - 0xa3c]
fld qword [ebp - 0xa3c]
fadd qword [ebp - 0x9e4]
fstp qword [ebp - 0xa3c]
fld qword [ebp - 0x9e4]
fmul qword [ebp - 0x99c]
fstp qword [ebp - 0x9e4]
mov eax, dword [ebp - 0x9e8]
add eax, 0xee
mov dword [ebp - 0x9e8], eax
jmp 0x512093
fld qword [ebp - 0x99c]
fmul qword [ebp - 0xa3c]
fstp qword [ebp - 0x99c]
fld qword [ebp - 0xa3c]
fsub qword [ebp - 0x9e4]
fstp qword [ebp - 0xa3c]
fld qword [ebp - 0xa3c]
fadd qword [ebp - 0x9e4]
fstp qword [ebp - 0xa3c]
fld qword [ebp - 0x99c]
fsub qword [ebp - 0xa3c]
fstp qword [ebp - 0x99c]
fld qword [ebp - 0x9e4]
fadd qword [ebp - 0x99c]
fstp qword [ebp - 0x9e4]
fld qword [ebp - 0x99c]
fsub qword [ebp - 0xa3c]
fstp qword [ebp - 0x99c]
fld qword [ebp - 0x9e4]
fcomp qword [ebp - 0x99c]
fnstsw ax
test ah, 5
jp 0x51205d
fld qword [ebp - 0xa3c]
fsub qword [ebp - 0x99c]
fstp qword [ebp - 0xa3c]
fld qword [ebp - 0x9e4]
fmul qword [ebp - 0xa3c]
fstp qword [ebp - 0x9e4]
fld qword [ebp - 0x99c]
fdiv qword [ebp - 0x9e4]
fstp qword [ebp - 0x99c]
jmp 0x512093
fld qword [ebp - 0x9e4]
fmul qword [ebp - 0xa3c]
fstp qword [ebp - 0x9e4]
fld qword [ebp - 0x99c]
fdiv qword [ebp - 0x9e4]
fstp qword [ebp - 0x99c]
fld qword [ebp - 0xa3c]
fdiv qword [ebp - 0x99c]
fstp qword [ebp - 0xa3c]
and dword [ebp - 0xa18], 0
mov eax, dword [ebp - 0xa48]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xa18], eax
and dword [ebp - 0xae4], 0
fld dword [0x99a108]
fstp dword [ebp - 0xa98]
fld dword [0x99a104]
fstp dword [ebp - 0xa30]
fld dword [0x99a100]
fstp dword [ebp - 0x9d8]
fld dword [0x99a0fc]
fstp dword [ebp - 0x994]
fld dword [0x99a0f8]
fstp dword [ebp - 0xa94]
fld dword [0x997338]
fstp dword [ebp - 0xa78]
fld dword [ebp - 0x994]
fsub dword [ebp - 0xa78]
fstp dword [ebp - 0x994]
fld dword [ebp - 0xa30]
fadd dword [ebp - 0xa78]
fstp dword [ebp - 0xa30]
fld dword [ebp - 0xa94]
fadd dword [ebp - 0xa78]
fstp dword [ebp - 0xa94]
fld dword [ebp - 0x9d8]
fadd dword [ebp - 0xa78]
fstp dword [ebp - 0x9d8]
fld dword [ebp - 0xa94]
fmul dword [ebp - 0xa78]
fstp dword [ebp - 0xa94]
fld dword [ebp - 0x994]
fadd dword [ebp - 0xa78]
fstp dword [ebp - 0x994]
fld dword [ebp - 0xa78]
fld dword [ebp - 0xa94]
fcompp
fnstsw ax
test ah, 0x41
jne 0x512207
fld dword [ebp - 0xa98]
fadd dword [ebp - 0xa30]
fstp dword [ebp - 0xa98]
fld dword [ebp - 0xa30]
fadd dword [ebp - 0x9d8]
fstp dword [ebp - 0xa30]
fld dword [ebp - 0x994]
fmul dword [ebp - 0xa94]
fstp dword [ebp - 0x994]
fld dword [ebp - 0xa98]
fsub dword [ebp - 0xa30]
fstp dword [ebp - 0xa98]
fld dword [ebp - 0xa94]
fadd dword [ebp - 0xa78]
fstp dword [ebp - 0xa94]
fld dword [ebp - 0xa30]
fsub dword [ebp - 0x9d8]
fstp dword [ebp - 0xa30]
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0xa18]
movzx eax, byte [eax]
add eax, dword [ebp - 0xae4]
mov dword [ebp - 0xae4], eax
jmp 0x512273
fld dword [ebp - 0xa78]
fsub dword [ebp - 0xa98]
fstp dword [ebp - 0xa78]
fld dword [ebp - 0xa98]
fmul dword [ebp - 0xa30]
fstp dword [ebp - 0xa98]
fld dword [ebp - 0xa98]
fsub dword [ebp - 0xa30]
fstp dword [ebp - 0xa98]
fld dword [ebp - 0xa78]
fdiv dword [ebp - 0xa98]
fstp dword [ebp - 0xa78]
fld dword [ebp - 0x994]
fadd dword [ebp - 0xa94]
fstp dword [ebp - 0x994]
fld dword [ebp - 0x994]
fadd dword [ebp - 0xa94]
fstp dword [ebp - 0x994]
and dword [ebp - 0xa90], 0
mov eax, dword [ebp - 0xa90]
add eax, 0x43
mov dword [ebp - 0xa90], eax
and dword [ebp - 0xae0], 0
mov eax, dword [ebp - 0xa9c]
sub eax, dword [ebp - 0x9e8]
add eax, dword [ebp - 0xae0]
mov dword [ebp - 0xae0], eax
and dword [ebp - 0x990], 0
mov eax, dword [ebp - 0xae4]
sub eax, dword [ebp - 0xa90]
add eax, dword [ebp - 0x990]
mov dword [ebp - 0x990], eax
and dword [ebp - 0xadc], 0
mov eax, dword [ebp - 0xae0]
shl eax, 4
mov dword [ebp - 0xadc], eax
and dword [ebp - 0xa8c], 0
mov eax, dword [ebp - 0x990]
mov dword [ebp - 0xa8c], eax
and dword [ebp - 0xa40], 0
mov eax, dword [ebp - 0xadc]
or eax, dword [ebp - 0xa8c]
mov dword [ebp - 0xa40], eax
mov byte [ebp - 0x9e9], 0
mov al, byte [ebp - 0xa40]
mov byte [ebp - 0x9e9], al
mov byte [ebp - 0xad5], 0
movzx eax, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp - 0xad5], al
fld qword [0x99a0f0]
fstp qword [ebp - 0xad4]
fld qword [0x99a0e8]
fstp qword [ebp - 0x9cc]
fld qword [0x99a0e0]
fstp qword [ebp - 0xa14]
fld qword [0x99a0d8]
fstp qword [ebp - 0xa74]
fld qword [0x99a0d0]
fstp qword [ebp - 0xacc]
fld qword [ebp - 0x9cc]
fmul qword [ebp - 0xacc]
fstp qword [ebp - 0x9cc]
fld qword [ebp - 0x9cc]
fmul qword [ebp - 0xacc]
fstp qword [ebp - 0x9cc]
fld qword [ebp - 0xa74]
fadd qword [ebp - 0xacc]
fstp qword [ebp - 0xa74]
fld qword [ebp - 0xad4]
fsub qword [ebp - 0xacc]
fstp qword [ebp - 0xad4]
fld qword [ebp - 0xad4]
fsub qword [ebp - 0xacc]
fstp qword [ebp - 0xad4]
fld qword [ebp - 0xacc]
fcomp qword [ebp - 0x9cc]
fnstsw ax
test ah, 5
jp 0x51246f
fld qword [ebp - 0x9cc]
fadd qword [ebp - 0xa14]
fstp qword [ebp - 0x9cc]
fld qword [ebp - 0xa14]
fadd qword [ebp - 0xa74]
fstp qword [ebp - 0xa14]
fld qword [ebp - 0xa14]
fmul qword [ebp - 0xa74]
fstp qword [ebp - 0xa14]
fld qword [ebp - 0xa74]
fadd qword [ebp - 0xacc]
fstp qword [ebp - 0xa74]
fld qword [ebp - 0xa14]
fsub qword [ebp - 0xa74]
fstp qword [ebp - 0xa14]
movzx eax, byte [ebp - 0x96f]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x849]
add ecx, eax
mov byte [ebp - 0x849], cl
mov al, byte [ebp - 0x96f]
add al, 1
mov byte [ebp - 0x96f], al
jmp 0x5125ec
fld qword [ebp - 0xa14]
fdiv qword [ebp - 0xacc]
fstp qword [ebp - 0xa14]
fld qword [ebp - 0xa74]
fdiv qword [ebp - 0xad4]
fstp qword [ebp - 0xa74]
fld qword [ebp - 0xacc]
fmul qword [ebp - 0x9cc]
fstp qword [ebp - 0xacc]
fld qword [ebp - 0xacc]
fdiv qword [ebp - 0x9cc]
fstp qword [ebp - 0xacc]
fld qword [ebp - 0xad4]
fsub qword [ebp - 0xa14]
fstp qword [ebp - 0xad4]
fld qword [ebp - 0xad4]
fmul qword [ebp - 0xa14]
fstp qword [ebp - 0xad4]
fld qword [ebp - 0xacc]
fsub qword [ebp - 0x9cc]
fstp qword [ebp - 0xacc]
fld qword [ebp - 0xa74]
fdiv qword [ebp - 0xad4]
fstp qword [ebp - 0xa74]
fld qword [ebp - 0x9cc]
fmul qword [ebp - 0xa74]
fstp qword [ebp - 0x9cc]
fld qword [ebp - 0xacc]
fmul qword [ebp - 0x9cc]
fstp qword [ebp - 0xacc]
fld qword [ebp - 0xacc]
fcomp qword [ebp - 0xa14]
fnstsw ax
test ah, 5
jp 0x512592
fld qword [ebp - 0xad4]
fdiv qword [ebp - 0x9cc]
fstp qword [ebp - 0xad4]
fld qword [ebp - 0xacc]
fdiv qword [ebp - 0xad4]
fstp qword [ebp - 0xacc]
fld qword [ebp - 0xacc]
fdiv qword [ebp - 0xad4]
fstp qword [ebp - 0xacc]
fld qword [ebp - 0xacc]
fdiv qword [ebp - 0xad4]
fstp qword [ebp - 0xacc]
fld qword [ebp - 0xad4]
fdiv qword [ebp - 0x9cc]
fstp qword [ebp - 0xad4]
jmp 0x5125ec
fld qword [ebp - 0xacc]
fsub qword [ebp - 0x9cc]
fstp qword [ebp - 0xacc]
fld qword [ebp - 0xad4]
fmul qword [ebp - 0xa14]
fstp qword [ebp - 0xad4]
fld qword [ebp - 0xacc]
fadd qword [ebp - 0x9cc]
fstp qword [ebp - 0xacc]
fld qword [ebp - 0xad4]
fsub qword [ebp - 0xa14]
fstp qword [ebp - 0xad4]
fld qword [ebp - 0xa74]
fsub qword [ebp - 0xad4]
fstp qword [ebp - 0xa74]
movzx eax, byte [ebp - 0x849]
movzx ecx, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x955]
movzx ecx, byte [ebp - 0x849]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
movzx ecx, byte [ebp - 0x955]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
mov cl, byte [ebp - 0xad5]
mov byte [ebp + eax - 0x94c], cl
movzx eax, byte [ebp - 0xad5]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x94d]
add ecx, eax
mov byte [ebp - 0x94d], cl
movzx eax, byte [ebp - 0x9e9]
movzx ecx, byte [ebp - 0x849]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x96f]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
movzx ecx, byte [ebp - 0x955]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x831]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
movzx edx, byte [ebp - 0x94d]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
mov byte [ebp - 0x955], al
mov al, byte [ebp - 0x9e9]
mov byte [ebp - 0x831], al
mov al, byte [ebp - 0x955]
mov byte [ebp - 0xa85], al
cmp dword [ebp - 0xa48], 0
jle 0x51272f
movsx ax, byte [ebp - 0xa85]
mov ecx, dword [ebp - 0xa48]
mov word [ebp + ecx*2 - 0x43e], ax
mov eax, dword [ebp - 0xa48]
inc eax
mov dword [ebp - 0xa48], eax
mov eax, dword [ebp - 0xa44]
inc eax
mov dword [ebp - 0xa44], eax
mov eax, dword [ebp - 0xa48]
shl eax, 1
mov dword [ebp - 0x980], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0x980]
movzx eax, byte [eax]
mov dword [ebp - 0xa9c], eax
mov dword [ebp - 0x9e8], 0xee
mov eax, dword [ebp - 0xa48]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xa18], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0xa18]
movzx eax, byte [eax]
mov dword [ebp - 0xae4], eax
mov dword [ebp - 0xa90], 0x43
mov eax, dword [ebp - 0xa9c]
sub eax, dword [ebp - 0x9e8]
mov dword [ebp - 0xae0], eax
mov eax, dword [ebp - 0xae4]
sub eax, dword [ebp - 0xa90]
mov dword [ebp - 0x990], eax
mov eax, dword [ebp - 0xae0]
shl eax, 4
mov dword [ebp - 0xadc], eax
mov eax, dword [ebp - 0x990]
mov dword [ebp - 0xa8c], eax
mov eax, dword [ebp - 0xadc]
or eax, dword [ebp - 0xa8c]
mov dword [ebp - 0xa40], eax
mov al, byte [ebp - 0xa40]
mov byte [ebp - 0x9e9], al
movzx eax, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp - 0xad5], al
movzx eax, byte [ebp - 0x96f]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x849]
add ecx, eax
mov byte [ebp - 0x849], cl
mov al, byte [ebp - 0x96f]
add al, 1
mov byte [ebp - 0x96f], al
movzx eax, byte [ebp - 0x849]
movzx ecx, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x955]
movzx ecx, byte [ebp - 0x849]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
movzx ecx, byte [ebp - 0x955]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
mov cl, byte [ebp - 0xad5]
mov byte [ebp + eax - 0x94c], cl
movzx eax, byte [ebp - 0xad5]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x94d]
add ecx, eax
mov byte [ebp - 0x94d], cl
movzx eax, byte [ebp - 0x9e9]
movzx ecx, byte [ebp - 0x849]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x96f]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
movzx ecx, byte [ebp - 0x955]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x831]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
movzx edx, byte [ebp - 0x94d]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
mov byte [ebp - 0x955], al
mov al, byte [ebp - 0x9e9]
mov byte [ebp - 0x831], al
mov al, byte [ebp - 0x955]
mov byte [ebp - 0xa85], al
cmp dword [ebp - 0xa48], 0
jle 0x512985
movsx ax, byte [ebp - 0xa85]
mov ecx, dword [ebp - 0xa48]
mov word [ebp + ecx*2 - 0x43e], ax
mov eax, dword [ebp - 0xa48]
inc eax
mov dword [ebp - 0xa48], eax
mov eax, dword [ebp - 0xa44]
inc eax
mov dword [ebp - 0xa44], eax
mov eax, dword [ebp - 0xa48]
shl eax, 1
mov dword [ebp - 0x980], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0x980]
movzx eax, byte [eax]
mov dword [ebp - 0xa9c], eax
mov dword [ebp - 0x9e8], 0xee
mov eax, dword [ebp - 0xa48]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xa18], eax
fld dword [0x99a0c8]
fstp dword [ebp - 0x9c0]
fld dword [0x99a0c4]
fstp dword [ebp - 0xa0c]
fld dword [0x99a0c0]
fstp dword [ebp - 0xa68]
fld dword [0x99a0bc]
fstp dword [ebp - 0xac4]
fld dword [0x99a0b8]
fstp dword [ebp - 0x9bc]
fld dword [ebp - 0xa0c]
fmul dword [ebp - 0x9bc]
fstp dword [ebp - 0xa0c]
fld dword [ebp - 0xa0c]
fmul dword [ebp - 0x9bc]
fstp dword [ebp - 0xa0c]
fld dword [ebp - 0xa0c]
fmul dword [ebp - 0x9bc]
fstp dword [ebp - 0xa0c]
fld dword [ebp - 0xac4]
fsub dword [ebp - 0x9bc]
fstp dword [ebp - 0xac4]
fld dword [ebp - 0x9c0]
fadd dword [ebp - 0x9bc]
fstp dword [ebp - 0x9c0]
fld dword [ebp - 0xac4]
fld dword [ebp - 0xa0c]
fcompp
fnstsw ax
test ah, 5
jp 0x512c0c
fld dword [ebp - 0x9c0]
fdiv dword [ebp - 0xa68]
fstp dword [ebp - 0x9c0]
fld dword [ebp - 0x9c0]
fsub dword [ebp - 0xa68]
fstp dword [ebp - 0x9c0]
fld dword [ebp - 0xa0c]
fmul dword [ebp - 0xac4]
fstp dword [ebp - 0xa0c]
fld dword [ebp - 0xa0c]
fadd dword [ebp - 0xac4]
fstp dword [ebp - 0xa0c]
fld dword [ebp - 0xa68]
fdiv dword [ebp - 0x9bc]
fstp dword [ebp - 0xa68]
fld dword [ebp - 0x9c0]
fmul dword [ebp - 0xa68]
fstp dword [ebp - 0x9c0]
fld dword [ebp - 0xa0c]
fdiv dword [ebp - 0xac4]
fstp dword [ebp - 0xa0c]
fld dword [ebp - 0x9c0]
fadd dword [ebp - 0xa68]
fstp dword [ebp - 0x9c0]
fld dword [ebp - 0x9c0]
fdiv dword [ebp - 0xa68]
fstp dword [ebp - 0x9c0]
fld dword [ebp - 0xa0c]
fmul dword [ebp - 0xac4]
fstp dword [ebp - 0xa0c]
fld dword [ebp - 0x9bc]
fld dword [ebp - 0xa0c]
fcompp
fnstsw ax
test ah, 5
jp 0x512bb0
fld dword [ebp - 0x9bc]
fmul dword [ebp - 0x9c0]
fstp dword [ebp - 0x9bc]
fld dword [ebp - 0xac4]
fdiv dword [ebp - 0x9bc]
fstp dword [ebp - 0xac4]
fld dword [ebp - 0x9c0]
fadd dword [ebp - 0xa0c]
fstp dword [ebp - 0x9c0]
fld dword [ebp - 0x9c0]
fdiv dword [ebp - 0xa0c]
fstp dword [ebp - 0x9c0]
fld dword [ebp - 0xa68]
fmul dword [ebp - 0xac4]
fstp dword [ebp - 0xa68]
jmp 0x512c0a
fld dword [ebp - 0x9c0]
fmul dword [ebp - 0xa68]
fstp dword [ebp - 0x9c0]
fld dword [ebp - 0xa68]
fsub dword [ebp - 0x9bc]
fstp dword [ebp - 0xa68]
fld dword [ebp - 0x9bc]
fdiv dword [ebp - 0xa0c]
fstp dword [ebp - 0x9bc]
fld dword [ebp - 0x9c0]
fmul dword [ebp - 0xa68]
fstp dword [ebp - 0x9c0]
fld dword [ebp - 0xa0c]
fmul dword [ebp - 0xac4]
fstp dword [ebp - 0xa0c]
jmp 0x512c7b
fld dword [ebp - 0xac4]
fmul dword [ebp - 0x9bc]
fstp dword [ebp - 0xac4]
fld dword [ebp - 0x9c0]
fmul dword [ebp - 0xa0c]
fstp dword [ebp - 0x9c0]
fld dword [ebp - 0x9bc]
fsub dword [ebp - 0x9c0]
fstp dword [ebp - 0x9bc]
fld dword [ebp - 0x9c0]
fsub dword [ebp - 0xa0c]
fstp dword [ebp - 0x9c0]
fld dword [ebp - 0xa0c]
fsub dword [ebp - 0xa68]
fstp dword [ebp - 0xa0c]
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0xa18]
movzx eax, byte [eax]
mov dword [ebp - 0xae4], eax
mov dword [ebp - 0xa90], 0x43
mov eax, dword [ebp - 0xa9c]
sub eax, dword [ebp - 0x9e8]
mov dword [ebp - 0xae0], eax
mov eax, dword [ebp - 0xae4]
sub eax, dword [ebp - 0xa90]
mov dword [ebp - 0x990], eax
fld dword [0x99a0b4]
fstp dword [ebp - 0xac0]
fld dword [0x99a0b0]
fstp dword [ebp - 0xa64]
fld dword [0x99a0ac]
fstp dword [ebp - 0xa08]
fld dword [0x99a0a8]
fstp dword [ebp - 0x9b8]
fld dword [0x99a0a4]
fstp dword [ebp - 0xabc]
fld dword [0x996bbc]
fstp dword [ebp - 0xa60]
fld dword [0x99a0a0]
fstp dword [ebp - 0xa04]
fld dword [ebp - 0xa08]
fmul dword [ebp - 0xa04]
fstp dword [ebp - 0xa08]
fld dword [ebp - 0xa64]
fsub dword [ebp - 0xa04]
fstp dword [ebp - 0xa64]
fld dword [ebp - 0x9b8]
fadd dword [ebp - 0xa04]
fstp dword [ebp - 0x9b8]
fld dword [ebp - 0xa64]
fmul dword [ebp - 0xa04]
fstp dword [ebp - 0xa64]
fld dword [ebp - 0xa60]
fsub dword [ebp - 0xa04]
fstp dword [ebp - 0xa60]
fld dword [ebp - 0xabc]
fadd dword [ebp - 0xa04]
fstp dword [ebp - 0xabc]
fld dword [ebp - 0xabc]
fsub dword [ebp - 0xa04]
fstp dword [ebp - 0xabc]
fld dword [ebp - 0xa60]
fld dword [ebp - 0xa08]
fcompp
fnstsw ax
test ah, 5
jp 0x512e17
fld dword [ebp - 0xa04]
fsub dword [ebp - 0xac0]
fstp dword [ebp - 0xa04]
fld dword [ebp - 0xabc]
fadd dword [ebp - 0xa60]
fstp dword [ebp - 0xabc]
fld dword [ebp - 0xa60]
fsub dword [ebp - 0xa04]
fstp dword [ebp - 0xa60]
fld dword [ebp - 0xa08]
fadd dword [ebp - 0x9b8]
fstp dword [ebp - 0xa08]
fld dword [ebp - 0x9b8]
fmul dword [ebp - 0xabc]
fstp dword [ebp - 0x9b8]
fld dword [ebp - 0xabc]
fmul dword [ebp - 0xa60]
fstp dword [ebp - 0xabc]
fld dword [ebp - 0xabc]
fsub dword [ebp - 0xa60]
fstp dword [ebp - 0xabc]
jmp 0x512ea4
fld dword [ebp - 0x9b8]
fadd dword [ebp - 0xa60]
fstp dword [ebp - 0x9b8]
fld dword [ebp - 0xa08]
fadd dword [ebp - 0xabc]
fstp dword [ebp - 0xa08]
fld dword [ebp - 0xa08]
fadd dword [ebp - 0xabc]
fstp dword [ebp - 0xa08]
fld dword [ebp - 0xabc]
fadd dword [ebp - 0xa04]
fstp dword [ebp - 0xabc]
fld dword [ebp - 0xa64]
fsub dword [ebp - 0x9b8]
fstp dword [ebp - 0xa64]
fld dword [ebp - 0xa04]
fadd dword [ebp - 0xa64]
fstp dword [ebp - 0xa04]
fld dword [ebp - 0xa60]
fadd dword [ebp - 0xac0]
fstp dword [ebp - 0xa60]
mov eax, dword [ebp - 0xae0]
shl eax, 4
mov dword [ebp - 0xadc], eax
mov eax, dword [ebp - 0x990]
mov dword [ebp - 0xa8c], eax
mov eax, dword [ebp - 0xadc]
or eax, dword [ebp - 0xa8c]
mov dword [ebp - 0xa40], eax
mov al, byte [ebp - 0xa40]
mov byte [ebp - 0x9e9], al
movzx eax, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp - 0xad5], al
movzx eax, byte [ebp - 0x96f]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x849]
add ecx, eax
mov byte [ebp - 0x849], cl
mov al, byte [ebp - 0x96f]
add al, 1
mov byte [ebp - 0x96f], al
movzx eax, byte [ebp - 0x849]
movzx ecx, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x955]
movzx ecx, byte [ebp - 0x849]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
movzx ecx, byte [ebp - 0x955]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
mov cl, byte [ebp - 0xad5]
mov byte [ebp + eax - 0x94c], cl
movzx eax, byte [ebp - 0xad5]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x94d]
add ecx, eax
mov byte [ebp - 0x94d], cl
movzx eax, byte [ebp - 0x9e9]
movzx ecx, byte [ebp - 0x849]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x96f]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
movzx ecx, byte [ebp - 0x955]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x831]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
movzx edx, byte [ebp - 0x94d]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
mov byte [ebp - 0x955], al
mov al, byte [ebp - 0x9e9]
mov byte [ebp - 0x831], al
mov al, byte [ebp - 0x955]
mov byte [ebp - 0xa85], al
cmp dword [ebp - 0xa48], 0
jle 0x513051
movsx ax, byte [ebp - 0xa85]
mov ecx, dword [ebp - 0xa48]
mov word [ebp + ecx*2 - 0x43e], ax
mov eax, dword [ebp - 0xa44]
inc eax
inc eax
mov dword [ebp - 0xa44], eax
mov eax, dword [ebp - 0xa48]
inc eax
mov dword [ebp - 0xae8], eax
jmp 0x51307b
mov eax, dword [ebp - 0xae8]
inc eax
mov dword [ebp - 0xae8], eax
mov eax, dword [ebp - 0xae8]
cmp eax, dword [ebp - 0xa44]
jge 0x5132db
mov eax, dword [ebp - 0xa48]
inc eax
mov dword [ebp - 0xa48], eax
mov eax, dword [ebp - 0xa48]
shl eax, 1
mov dword [ebp - 0x980], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0x980]
movzx eax, byte [eax]
mov dword [ebp - 0xa9c], eax
mov dword [ebp - 0x9e8], 0xee
mov eax, dword [ebp - 0xa48]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xa18], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0xa18]
movzx eax, byte [eax]
mov dword [ebp - 0xae4], eax
mov dword [ebp - 0xa90], 0x43
mov eax, dword [ebp - 0xa9c]
sub eax, dword [ebp - 0x9e8]
mov dword [ebp - 0xae0], eax
mov eax, dword [ebp - 0xae4]
sub eax, dword [ebp - 0xa90]
mov dword [ebp - 0x990], eax
mov eax, dword [ebp - 0xae0]
shl eax, 4
mov dword [ebp - 0xadc], eax
mov eax, dword [ebp - 0x990]
mov dword [ebp - 0xa8c], eax
mov eax, dword [ebp - 0xadc]
or eax, dword [ebp - 0xa8c]
mov dword [ebp - 0xa40], eax
mov al, byte [ebp - 0xa40]
mov byte [ebp - 0x9e9], al
movzx eax, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp - 0xad5], al
movzx eax, byte [ebp - 0x96f]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x849]
add ecx, eax
mov byte [ebp - 0x849], cl
mov al, byte [ebp - 0x96f]
add al, 1
mov byte [ebp - 0x96f], al
movzx eax, byte [ebp - 0x849]
movzx ecx, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x955]
movzx ecx, byte [ebp - 0x849]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
movzx ecx, byte [ebp - 0x955]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
mov cl, byte [ebp - 0xad5]
mov byte [ebp + eax - 0x94c], cl
movzx eax, byte [ebp - 0xad5]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x94d]
add ecx, eax
mov byte [ebp - 0x94d], cl
movzx eax, byte [ebp - 0x9e9]
movzx ecx, byte [ebp - 0x849]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x96f]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
movzx ecx, byte [ebp - 0x955]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x831]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
movzx edx, byte [ebp - 0x94d]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
mov byte [ebp - 0x955], al
mov al, byte [ebp - 0x9e9]
mov byte [ebp - 0x831], al
mov al, byte [ebp - 0x955]
mov byte [ebp - 0xa85], al
cmp dword [ebp - 0xa48], 0
jle 0x5132d6
movsx ax, byte [ebp - 0xa85]
mov ecx, dword [ebp - 0xa48]
mov word [ebp + ecx*2 - 0x43e], ax
jmp 0x51306e
mov eax, dword [ebp - 0xa44]
inc eax
mov dword [ebp - 0xa44], eax
mov eax, dword [ebp - 0xa48]
inc eax
mov dword [ebp - 0xa48], eax
mov eax, dword [ebp - 0xa44]
inc eax
mov dword [ebp - 0xa44], eax
mov eax, dword [ebp - 0xa48]
shl eax, 1
mov dword [ebp - 0x980], eax
fld dword [0x99a09c]
fstp dword [ebp - 0x9b4]
fld dword [0x99a098]
fstp dword [ebp - 0xab8]
fld dword [0x99a094]
fstp dword [ebp - 0xa00]
fld dword [0x99a090]
fstp dword [ebp - 0x9b0]
fld dword [ebp - 0xa00]
fmul dword [ebp - 0x9b0]
fstp dword [ebp - 0xa00]
fld dword [ebp - 0xab8]
fsub dword [ebp - 0x9b0]
fstp dword [ebp - 0xab8]
fld dword [ebp - 0xab8]
fsub dword [ebp - 0x9b0]
fstp dword [ebp - 0xab8]
fld dword [ebp - 0x9b4]
fmul dword [ebp - 0x9b0]
fstp dword [ebp - 0x9b4]
fld dword [ebp - 0x9b4]
fld dword [ebp - 0xab8]
fcompp
fnstsw ax
test ah, 5
jp 0x5133ff
fld dword [ebp - 0x9b4]
fadd dword [ebp - 0xa00]
fstp dword [ebp - 0x9b4]
fld dword [ebp - 0x9b0]
fadd dword [ebp - 0xab8]
fstp dword [ebp - 0x9b0]
fld dword [ebp - 0x9b4]
fsub dword [ebp - 0xa00]
fstp dword [ebp - 0x9b4]
fld dword [ebp - 0xab8]
fadd dword [ebp - 0x9b0]
fstp dword [ebp - 0xab8]
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0x980]
movzx eax, byte [eax]
mov dword [ebp - 0xa9c], eax
jmp 0x513536
fld dword [ebp - 0xab8]
fsub dword [ebp - 0x9b0]
fstp dword [ebp - 0xab8]
fld dword [ebp - 0xab8]
fadd dword [ebp - 0x9b0]
fstp dword [ebp - 0xab8]
fld dword [ebp - 0xab8]
fdiv dword [ebp - 0x9b0]
fstp dword [ebp - 0xab8]
fld dword [ebp - 0xa00]
fmul dword [ebp - 0x9b4]
fstp dword [ebp - 0xa00]
fld dword [ebp - 0xab8]
fsub dword [ebp - 0xa00]
fstp dword [ebp - 0xab8]
fld dword [ebp - 0x9b4]
fmul dword [ebp - 0xab8]
fstp dword [ebp - 0x9b4]
fld dword [ebp - 0x9b0]
fadd dword [ebp - 0x9b4]
fstp dword [ebp - 0x9b0]
fld dword [ebp - 0x9b4]
fdiv dword [ebp - 0xab8]
fstp dword [ebp - 0x9b4]
fld dword [ebp - 0xab8]
fld dword [ebp - 0x9b0]
fcompp
fnstsw ax
test ah, 5
jp 0x5134ee
fld dword [ebp - 0xa00]
fmul dword [ebp - 0x9b0]
fstp dword [ebp - 0xa00]
fld dword [ebp - 0xa00]
fdiv dword [ebp - 0x9b0]
fstp dword [ebp - 0xa00]
fld dword [ebp - 0xab8]
fdiv dword [ebp - 0xa00]
fstp dword [ebp - 0xab8]
fld dword [ebp - 0xab8]
fdiv dword [ebp - 0xa00]
fstp dword [ebp - 0xab8]
jmp 0x513536
fld dword [ebp - 0x9b0]
fdiv dword [ebp - 0xab8]
fstp dword [ebp - 0x9b0]
fld dword [ebp - 0x9b0]
fsub dword [ebp - 0xab8]
fstp dword [ebp - 0x9b0]
fld dword [ebp - 0x9b0]
fdiv dword [ebp - 0xab8]
fstp dword [ebp - 0x9b0]
fld dword [ebp - 0x9b4]
fadd dword [ebp - 0xa00]
fstp dword [ebp - 0x9b4]
mov dword [ebp - 0x9e8], 0xee
mov eax, dword [ebp - 0xa48]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xa18], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0xa18]
movzx eax, byte [eax]
mov dword [ebp - 0xae4], eax
mov dword [ebp - 0xa90], 0x43
mov eax, dword [ebp - 0xa9c]
sub eax, dword [ebp - 0x9e8]
mov dword [ebp - 0xae0], eax
mov eax, dword [ebp - 0xae4]
sub eax, dword [ebp - 0xa90]
mov dword [ebp - 0x990], eax
mov eax, dword [ebp - 0xae0]
shl eax, 4
mov dword [ebp - 0xadc], eax
mov eax, dword [ebp - 0x990]
mov dword [ebp - 0xa8c], eax
mov eax, dword [ebp - 0xadc]
or eax, dword [ebp - 0xa8c]
mov dword [ebp - 0xa40], eax
mov al, byte [ebp - 0xa40]
mov byte [ebp - 0x9e9], al
movzx eax, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp - 0xad5], al
movzx eax, byte [ebp - 0x96f]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x849]
add ecx, eax
mov byte [ebp - 0x849], cl
mov al, byte [ebp - 0x96f]
add al, 1
mov byte [ebp - 0x96f], al
movzx eax, byte [ebp - 0x849]
movzx ecx, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
fld qword [0x99a088]
fstp qword [ebp - 0xab4]
fld qword [0x99a080]
fstp qword [ebp - 0xa5c]
fld qword [0x99a078]
fstp qword [ebp - 0x9fc]
fld qword [0x99a070]
fstp qword [ebp - 0x9ac]
fld qword [0x99a068]
fstp qword [ebp - 0xaac]
fld qword [ebp - 0xab4]
fmul qword [ebp - 0xaac]
fstp qword [ebp - 0xab4]
fld qword [ebp - 0xab4]
fsub qword [ebp - 0xaac]
fstp qword [ebp - 0xab4]
fld qword [ebp - 0xa5c]
fadd qword [ebp - 0xaac]
fstp qword [ebp - 0xa5c]
fld qword [ebp - 0xa5c]
fmul qword [ebp - 0xaac]
fstp qword [ebp - 0xa5c]
fld qword [ebp - 0x9ac]
fadd qword [ebp - 0xaac]
fstp qword [ebp - 0x9ac]
fld qword [ebp - 0xaac]
fcomp qword [ebp - 0xa5c]
fnstsw ax
test ah, 0x41
jne 0x51372d
fld qword [ebp - 0xa5c]
fadd qword [ebp - 0x9ac]
fstp qword [ebp - 0xa5c]
fld qword [ebp - 0xaac]
fmul qword [ebp - 0xa5c]
fstp qword [ebp - 0xaac]
fld qword [ebp - 0xab4]
fsub qword [ebp - 0x9fc]
fstp qword [ebp - 0xab4]
fld qword [ebp - 0xab4]
fdiv qword [ebp - 0x9fc]
fstp qword [ebp - 0xab4]
fld qword [ebp - 0x9fc]
fdiv qword [ebp - 0xaac]
fstp qword [ebp - 0x9fc]
jmp 0x5137a3
fld qword [ebp - 0x9ac]
fmul qword [ebp - 0xaac]
fstp qword [ebp - 0x9ac]
fld qword [ebp - 0x9ac]
fsub qword [ebp - 0xaac]
fstp qword [ebp - 0x9ac]
fld qword [ebp - 0x9fc]
fadd qword [ebp - 0x9ac]
fstp qword [ebp - 0x9fc]
fld qword [ebp - 0xa5c]
fmul qword [ebp - 0x9fc]
fstp qword [ebp - 0xa5c]
fld qword [ebp - 0x9ac]
fsub qword [ebp - 0xaac]
fstp qword [ebp - 0x9ac]
movzx eax, byte [ebp - 0x955]
movzx ecx, byte [ebp - 0x849]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
fld qword [0x99a060]
fstp qword [ebp - 0xa54]
fld qword [0x99a058]
fstp qword [ebp - 0x9f4]
fld qword [0x99a050]
fstp qword [ebp - 0x9a4]
fld qword [0x9982d8]
fstp qword [ebp - 0xa2c]
fld qword [ebp - 0x9a4]
fmul qword [ebp - 0xa2c]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0xa54]
fsub qword [ebp - 0xa2c]
fstp qword [ebp - 0xa54]
fld qword [ebp - 0xa54]
fmul qword [ebp - 0xa2c]
fstp qword [ebp - 0xa54]
fld qword [ebp - 0xa54]
fadd qword [ebp - 0xa2c]
fstp qword [ebp - 0xa54]
fld qword [ebp - 0xa54]
fcomp qword [ebp - 0xa2c]
fnstsw ax
test ah, 0x41
jne 0x513897
fld qword [ebp - 0xa2c]
fmul qword [ebp - 0xa54]
fstp qword [ebp - 0xa2c]
fld qword [ebp - 0x9f4]
fmul qword [ebp - 0x9a4]
fstp qword [ebp - 0x9f4]
fld qword [ebp - 0xa54]
fadd qword [ebp - 0x9f4]
fstp qword [ebp - 0xa54]
fld qword [ebp - 0xa54]
fmul qword [ebp - 0x9f4]
fstp qword [ebp - 0xa54]
movzx eax, byte [ebp - 0x96f]
movzx ecx, byte [ebp - 0x955]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
jmp 0x5139cc
fld qword [ebp - 0x9a4]
fmul qword [ebp - 0xa54]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0xa2c]
fsub qword [ebp - 0x9f4]
fstp qword [ebp - 0xa2c]
fld qword [ebp - 0x9f4]
fdiv qword [ebp - 0xa2c]
fstp qword [ebp - 0x9f4]
fld qword [ebp - 0x9f4]
fmul qword [ebp - 0xa2c]
fstp qword [ebp - 0x9f4]
fld qword [ebp - 0x9a4]
fmul qword [ebp - 0xa2c]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0xa2c]
fsub qword [ebp - 0xa54]
fstp qword [ebp - 0xa2c]
fld qword [ebp - 0xa2c]
fmul qword [ebp - 0xa54]
fstp qword [ebp - 0xa2c]
fld qword [ebp - 0x9a4]
fmul qword [ebp - 0xa2c]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0x9a4]
fcomp qword [ebp - 0xa54]
fnstsw ax
test ah, 0x41
jne 0x513984
fld qword [ebp - 0x9f4]
fsub qword [ebp - 0xa2c]
fstp qword [ebp - 0x9f4]
fld qword [ebp - 0x9a4]
fmul qword [ebp - 0xa54]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0xa54]
fadd qword [ebp - 0x9a4]
fstp qword [ebp - 0xa54]
fld qword [ebp - 0xa2c]
fdiv qword [ebp - 0x9f4]
fstp qword [ebp - 0xa2c]
jmp 0x5139cc
fld qword [ebp - 0x9f4]
fsub qword [ebp - 0xa2c]
fstp qword [ebp - 0x9f4]
fld qword [ebp - 0xa54]
fadd qword [ebp - 0x9a4]
fstp qword [ebp - 0xa54]
fld qword [ebp - 0xa2c]
fsub qword [ebp - 0x9f4]
fstp qword [ebp - 0xa2c]
fld qword [ebp - 0xa54]
fadd qword [ebp - 0x9a4]
fstp qword [ebp - 0xa54]
movzx eax, byte [ebp - 0x96f]
mov cl, byte [ebp - 0xad5]
mov byte [ebp + eax - 0x94c], cl
movzx eax, byte [ebp - 0xad5]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x94d]
add ecx, eax
mov byte [ebp - 0x94d], cl
movzx eax, byte [ebp - 0x9e9]
movzx ecx, byte [ebp - 0x849]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x96f]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
movzx ecx, byte [ebp - 0x955]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x831]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
movzx edx, byte [ebp - 0x94d]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
mov byte [ebp - 0x955], al
mov al, byte [ebp - 0x9e9]
mov byte [ebp - 0x831], al
mov al, byte [ebp - 0x955]
mov byte [ebp - 0xa85], al
cmp dword [ebp - 0xa48], 0
jle 0x513abb
movsx ax, byte [ebp - 0xa85]
mov ecx, dword [ebp - 0xa48]
mov word [ebp + ecx*2 - 0x43e], ax
mov eax, dword [ebp - 0xa44]
add eax, 3
mov dword [ebp - 0xa44], eax
mov eax, dword [ebp - 0xa48]
inc eax
mov dword [ebp - 0xaec], eax
jmp 0x513ae6
mov eax, dword [ebp - 0xaec]
inc eax
mov dword [ebp - 0xaec], eax
mov eax, dword [ebp - 0xaec]
cmp eax, dword [ebp - 0xa44]
jge 0x513fcb
fld qword [0x99a048]
fstp qword [ebp - 0xb04]
fld qword [0x99a040]
fstp qword [ebp - 0xaf4]
fld qword [0x99a038]
fstp qword [ebp - 0xb14]
fld qword [0x99a030]
fstp qword [ebp - 0xb0c]
fld qword [0x99a028]
fstp qword [ebp - 0xafc]
fld qword [ebp - 0xaf4]
fmul qword [ebp - 0xafc]
fstp qword [ebp - 0xaf4]
fld qword [ebp - 0xb0c]
fmul qword [ebp - 0xafc]
fstp qword [ebp - 0xb0c]
fld qword [ebp - 0xb14]
fsub qword [ebp - 0xafc]
fstp qword [ebp - 0xb14]
fld qword [ebp - 0xb04]
fsub qword [ebp - 0xafc]
fstp qword [ebp - 0xb04]
fld qword [ebp - 0xb14]
fsub qword [ebp - 0xafc]
fstp qword [ebp - 0xb14]
fld qword [ebp - 0xb14]
fcomp qword [ebp - 0xaf4]
fnstsw ax
test ah, 5
jp 0x513c0d
fld qword [ebp - 0xb0c]
fmul qword [ebp - 0xb04]
fstp qword [ebp - 0xb0c]
fld qword [ebp - 0xaf4]
fsub qword [ebp - 0xb0c]
fstp qword [ebp - 0xaf4]
fld qword [ebp - 0xb14]
fadd qword [ebp - 0xafc]
fstp qword [ebp - 0xb14]
fld qword [ebp - 0xb0c]
fadd qword [ebp - 0xb04]
fstp qword [ebp - 0xb0c]
fld qword [ebp - 0xaf4]
fsub qword [ebp - 0xb0c]
fstp qword [ebp - 0xaf4]
mov eax, dword [ebp - 0xa48]
inc eax
mov dword [ebp - 0xa48], eax
jmp 0x513d8a
fld qword [ebp - 0xb0c]
fadd qword [ebp - 0xafc]
fstp qword [ebp - 0xb0c]
fld qword [ebp - 0xb04]
fmul qword [ebp - 0xaf4]
fstp qword [ebp - 0xb04]
fld qword [ebp - 0xaf4]
fmul qword [ebp - 0xb14]
fstp qword [ebp - 0xaf4]
fld qword [ebp - 0xb14]
fdiv qword [ebp - 0xb0c]
fstp qword [ebp - 0xb14]
fld qword [ebp - 0xaf4]
fsub qword [ebp - 0xb14]
fstp qword [ebp - 0xaf4]
fld qword [ebp - 0xb14]
fdiv qword [ebp - 0xb0c]
fstp qword [ebp - 0xb14]
fld qword [ebp - 0xb0c]
fsub qword [ebp - 0xafc]
fstp qword [ebp - 0xb0c]
fld qword [ebp - 0xb14]
fmul qword [ebp - 0xb0c]
fstp qword [ebp - 0xb14]
fld qword [ebp - 0xafc]
fmul qword [ebp - 0xb04]
fstp qword [ebp - 0xafc]
fld qword [ebp - 0xaf4]
fsub qword [ebp - 0xb14]
fstp qword [ebp - 0xaf4]
fld qword [ebp - 0xaf4]
fcomp qword [ebp - 0xafc]
fnstsw ax
test ah, 5
jp 0x513d30
fld qword [ebp - 0xafc]
fdiv qword [ebp - 0xb04]
fstp qword [ebp - 0xafc]
fld qword [ebp - 0xaf4]
fdiv qword [ebp - 0xb14]
fstp qword [ebp - 0xaf4]
fld qword [ebp - 0xafc]
fdiv qword [ebp - 0xb04]
fstp qword [ebp - 0xafc]
fld qword [ebp - 0xb0c]
fsub qword [ebp - 0xafc]
fstp qword [ebp - 0xb0c]
fld qword [ebp - 0xafc]
fdiv qword [ebp - 0xb04]
fstp qword [ebp - 0xafc]
jmp 0x513d8a
fld qword [ebp - 0xb04]
fdiv qword [ebp - 0xb14]
fstp qword [ebp - 0xb04]
fld qword [ebp - 0xafc]
fdiv qword [ebp - 0xaf4]
fstp qword [ebp - 0xafc]
fld qword [ebp - 0xaf4]
fsub qword [ebp - 0xb0c]
fstp qword [ebp - 0xaf4]
fld qword [ebp - 0xb14]
fdiv qword [ebp - 0xafc]
fstp qword [ebp - 0xb14]
fld qword [ebp - 0xb0c]
fdiv qword [ebp - 0xb04]
fstp qword [ebp - 0xb0c]
mov eax, dword [ebp - 0xa48]
shl eax, 1
mov dword [ebp - 0x980], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0x980]
movzx eax, byte [eax]
mov dword [ebp - 0xa9c], eax
mov dword [ebp - 0x9e8], 0xee
mov eax, dword [ebp - 0xa48]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xa18], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0xa18]
movzx eax, byte [eax]
mov dword [ebp - 0xae4], eax
mov dword [ebp - 0xa90], 0x43
mov eax, dword [ebp - 0xa9c]
sub eax, dword [ebp - 0x9e8]
mov dword [ebp - 0xae0], eax
mov eax, dword [ebp - 0xae4]
sub eax, dword [ebp - 0xa90]
mov dword [ebp - 0x990], eax
mov eax, dword [ebp - 0xae0]
shl eax, 4
mov dword [ebp - 0xadc], eax
mov eax, dword [ebp - 0x990]
mov dword [ebp - 0xa8c], eax
mov eax, dword [ebp - 0xadc]
or eax, dword [ebp - 0xa8c]
mov dword [ebp - 0xa40], eax
mov al, byte [ebp - 0xa40]
mov byte [ebp - 0x9e9], al
movzx eax, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp - 0xad5], al
movzx eax, byte [ebp - 0x96f]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x849]
add ecx, eax
mov byte [ebp - 0x849], cl
mov al, byte [ebp - 0x96f]
add al, 1
mov byte [ebp - 0x96f], al
movzx eax, byte [ebp - 0x849]
movzx ecx, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x955]
movzx ecx, byte [ebp - 0x849]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
movzx ecx, byte [ebp - 0x955]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
mov cl, byte [ebp - 0xad5]
mov byte [ebp + eax - 0x94c], cl
movzx eax, byte [ebp - 0xad5]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x94d]
add ecx, eax
mov byte [ebp - 0x94d], cl
movzx eax, byte [ebp - 0x9e9]
movzx ecx, byte [ebp - 0x849]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x96f]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
movzx ecx, byte [ebp - 0x955]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x831]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
movzx edx, byte [ebp - 0x94d]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
mov byte [ebp - 0x955], al
mov al, byte [ebp - 0x9e9]
mov byte [ebp - 0x831], al
mov al, byte [ebp - 0x955]
mov byte [ebp - 0xa85], al
cmp dword [ebp - 0xa48], 0
jle 0x513fc6
movsx ax, byte [ebp - 0xa85]
mov ecx, dword [ebp - 0xa48]
mov word [ebp + ecx*2 - 0x43e], ax
jmp 0x513ad9
mov eax, dword [ebp - 0xa44]
inc eax
mov dword [ebp - 0xa44], eax
mov eax, dword [ebp - 0xa48]
inc eax
mov dword [ebp - 0xa48], eax
mov eax, dword [ebp - 0xa44]
inc eax
mov dword [ebp - 0xa44], eax
mov eax, dword [ebp - 0xa48]
shl eax, 1
mov dword [ebp - 0x980], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0x980]
movzx eax, byte [eax]
mov dword [ebp - 0xa9c], eax
mov dword [ebp - 0x9e8], 0xee
mov eax, dword [ebp - 0xa48]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xa18], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0xa18]
movzx eax, byte [eax]
mov dword [ebp - 0xae4], eax
mov dword [ebp - 0xa90], 0x43
mov eax, dword [ebp - 0xa9c]
sub eax, dword [ebp - 0x9e8]
mov dword [ebp - 0xae0], eax
mov eax, dword [ebp - 0xae4]
sub eax, dword [ebp - 0xa90]
mov dword [ebp - 0x990], eax
mov eax, dword [ebp - 0xae0]
shl eax, 4
mov dword [ebp - 0xadc], eax
mov eax, dword [ebp - 0x990]
mov dword [ebp - 0xa8c], eax
mov eax, dword [ebp - 0xadc]
or eax, dword [ebp - 0xa8c]
mov dword [ebp - 0xa40], eax
mov al, byte [ebp - 0xa40]
mov byte [ebp - 0x9e9], al
movzx eax, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp - 0xad5], al
movzx eax, byte [ebp - 0x96f]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x849]
add ecx, eax
mov byte [ebp - 0x849], cl
mov al, byte [ebp - 0x96f]
add al, 1
mov byte [ebp - 0x96f], al
movzx eax, byte [ebp - 0x849]
movzx ecx, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x955]
movzx ecx, byte [ebp - 0x849]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
movzx ecx, byte [ebp - 0x955]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
mov cl, byte [ebp - 0xad5]
mov byte [ebp + eax - 0x94c], cl
movzx eax, byte [ebp - 0xad5]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x94d]
add ecx, eax
mov byte [ebp - 0x94d], cl
movzx eax, byte [ebp - 0x9e9]
movzx ecx, byte [ebp - 0x849]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x96f]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
movzx ecx, byte [ebp - 0x955]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x831]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
movzx edx, byte [ebp - 0x94d]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
mov byte [ebp - 0x955], al
mov al, byte [ebp - 0x9e9]
mov byte [ebp - 0x831], al
mov al, byte [ebp - 0x955]
mov byte [ebp - 0xa85], al
cmp dword [ebp - 0xa48], 0
jle 0x51422e
movsx ax, byte [ebp - 0xa85]
mov ecx, dword [ebp - 0xa48]
mov word [ebp + ecx*2 - 0x43e], ax
mov eax, dword [ebp - 0xa48]
inc eax
mov dword [ebp - 0xa48], eax
mov eax, dword [ebp - 0xa44]
inc eax
mov dword [ebp - 0xa44], eax
mov eax, dword [ebp - 0xa48]
shl eax, 1
mov dword [ebp - 0x980], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0x980]
movzx eax, byte [eax]
mov dword [ebp - 0xa9c], eax
mov dword [ebp - 0x9e8], 0xee
mov eax, dword [ebp - 0xa48]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xa18], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0xa18]
movzx eax, byte [eax]
mov dword [ebp - 0xae4], eax
mov dword [ebp - 0xa90], 0x43
mov eax, dword [ebp - 0xa9c]
sub eax, dword [ebp - 0x9e8]
mov dword [ebp - 0xae0], eax
mov eax, dword [ebp - 0xae4]
sub eax, dword [ebp - 0xa90]
mov dword [ebp - 0x990], eax
mov eax, dword [ebp - 0xae0]
shl eax, 4
mov dword [ebp - 0xadc], eax
mov eax, dword [ebp - 0x990]
mov dword [ebp - 0xa8c], eax
mov eax, dword [ebp - 0xadc]
or eax, dword [ebp - 0xa8c]
mov dword [ebp - 0xa40], eax
mov al, byte [ebp - 0xa40]
mov byte [ebp - 0x9e9], al
movzx eax, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp - 0xad5], al
movzx eax, byte [ebp - 0x96f]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x849]
add ecx, eax
mov byte [ebp - 0x849], cl
mov al, byte [ebp - 0x96f]
add al, 1
mov byte [ebp - 0x96f], al
movzx eax, byte [ebp - 0x849]
movzx ecx, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x955]
movzx ecx, byte [ebp - 0x849]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
movzx ecx, byte [ebp - 0x955]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
mov cl, byte [ebp - 0xad5]
mov byte [ebp + eax - 0x94c], cl
movzx eax, byte [ebp - 0xad5]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x94d]
add ecx, eax
mov byte [ebp - 0x94d], cl
movzx eax, byte [ebp - 0x9e9]
movzx ecx, byte [ebp - 0x849]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x96f]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
movzx ecx, byte [ebp - 0x955]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x831]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
movzx edx, byte [ebp - 0x94d]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
mov byte [ebp - 0x955], al
mov al, byte [ebp - 0x9e9]
mov byte [ebp - 0x831], al
mov al, byte [ebp - 0x955]
mov byte [ebp - 0xa85], al
cmp dword [ebp - 0xa48], 0
jle 0x514484
movsx ax, byte [ebp - 0xa85]
mov ecx, dword [ebp - 0xa48]
mov word [ebp + ecx*2 - 0x43e], ax
mov eax, dword [ebp - 0xa48]
inc eax
mov dword [ebp - 0xa48], eax
mov eax, dword [ebp - 0xa44]
inc eax
mov dword [ebp - 0xa44], eax
fld qword [0x99a020]
fstp qword [ebp - 0x98c]
fld qword [0x99a018]
fstp qword [ebp - 0xa84]
fld qword [0x99a010]
fstp qword [ebp - 0xa24]
fld qword [0x99a008]
fstp qword [ebp - 0x9d4]
fld qword [0x99a000]
fstp qword [ebp - 0xaa4]
fld qword [ebp - 0x98c]
fsub qword [ebp - 0xaa4]
fstp qword [ebp - 0x98c]
fld qword [ebp - 0xa84]
fmul qword [ebp - 0xaa4]
fstp qword [ebp - 0xa84]
fld qword [ebp - 0x98c]
fsub qword [ebp - 0xaa4]
fstp qword [ebp - 0x98c]
fld qword [ebp - 0x9d4]
fsub qword [ebp - 0xaa4]
fstp qword [ebp - 0x9d4]
fld qword [ebp - 0x98c]
fsub qword [ebp - 0xaa4]
fstp qword [ebp - 0x98c]
fld qword [ebp - 0xa84]
fcomp qword [ebp - 0x9d4]
fnstsw ax
test ah, 0x41
jne 0x5145b1
fld qword [ebp - 0xa24]
fmul qword [ebp - 0x9d4]
fstp qword [ebp - 0xa24]
fld qword [ebp - 0xa24]
fmul qword [ebp - 0x9d4]
fstp qword [ebp - 0xa24]
fld qword [ebp - 0x98c]
fmul qword [ebp - 0xa84]
fstp qword [ebp - 0x98c]
fld qword [ebp - 0x98c]
fsub qword [ebp - 0xa84]
fstp qword [ebp - 0x98c]
fld qword [ebp - 0xa84]
fadd qword [ebp - 0xa24]
fstp qword [ebp - 0xa84]
mov eax, dword [ebp - 0xa48]
shl eax, 1
mov dword [ebp - 0x980], eax
jmp 0x51460b
fld qword [ebp - 0xaa4]
fadd qword [ebp - 0xa84]
fstp qword [ebp - 0xaa4]
fld qword [ebp - 0x9d4]
fmul qword [ebp - 0x98c]
fstp qword [ebp - 0x9d4]
fld qword [ebp - 0xa24]
fadd qword [ebp - 0xaa4]
fstp qword [ebp - 0xa24]
fld qword [ebp - 0xaa4]
fdiv qword [ebp - 0xa84]
fstp qword [ebp - 0xaa4]
fld qword [ebp - 0xa24]
fadd qword [ebp - 0xaa4]
fstp qword [ebp - 0xa24]
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0x980]
movzx eax, byte [eax]
mov dword [ebp - 0xa9c], eax
mov dword [ebp - 0x9e8], 0xee
mov eax, dword [ebp - 0xa48]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xa18], eax
mov eax, dword [ebp - 0x83c]
add eax, dword [ebp - 0xa18]
movzx eax, byte [eax]
mov dword [ebp - 0xae4], eax
mov dword [ebp - 0xa90], 0x43
mov eax, dword [ebp - 0xa9c]
sub eax, dword [ebp - 0x9e8]
mov dword [ebp - 0xae0], eax
mov eax, dword [ebp - 0xae4]
sub eax, dword [ebp - 0xa90]
mov dword [ebp - 0x990], eax
mov eax, dword [ebp - 0xae0]
shl eax, 4
mov dword [ebp - 0xadc], eax
mov eax, dword [ebp - 0x990]
mov dword [ebp - 0xa8c], eax
mov eax, dword [ebp - 0xadc]
or eax, dword [ebp - 0xa8c]
mov dword [ebp - 0xa40], eax
mov al, byte [ebp - 0xa40]
mov byte [ebp - 0x9e9], al
movzx eax, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp - 0xad5], al
movzx eax, byte [ebp - 0x96f]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x849]
add ecx, eax
mov byte [ebp - 0x849], cl
mov al, byte [ebp - 0x96f]
add al, 1
mov byte [ebp - 0x96f], al
movzx eax, byte [ebp - 0x849]
movzx ecx, byte [ebp - 0x831]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x955]
movzx ecx, byte [ebp - 0x849]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
movzx ecx, byte [ebp - 0x955]
mov al, byte [ebp + eax - 0x94c]
mov byte [ebp + ecx - 0x94c], al
movzx eax, byte [ebp - 0x96f]
mov cl, byte [ebp - 0xad5]
mov byte [ebp + eax - 0x94c], cl
movzx eax, byte [ebp - 0xad5]
movzx eax, byte [ebp + eax - 0x94c]
movzx ecx, byte [ebp - 0x94d]
add ecx, eax
mov byte [ebp - 0x94d], cl
movzx eax, byte [ebp - 0x9e9]
movzx ecx, byte [ebp - 0x849]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x96f]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
movzx ecx, byte [ebp - 0x955]
movzx ecx, byte [ebp + ecx - 0x94c]
movzx edx, byte [ebp - 0x831]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
movzx edx, byte [ebp - 0x94d]
movzx edx, byte [ebp + edx - 0x94c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x94c]
movzx ecx, byte [ebp + ecx - 0x94c]
xor eax, ecx
mov byte [ebp - 0x955], al
mov al, byte [ebp - 0x9e9]
mov byte [ebp - 0x831], al
mov al, byte [ebp - 0x955]
mov byte [ebp - 0xa85], al
cmp dword [ebp - 0xa48], 0
jle 0x514839
movsx ax, byte [ebp - 0xa85]
mov ecx, dword [ebp - 0xa48]
mov word [ebp + ecx*2 - 0x43e], ax
xor eax, eax
mov word [ebp - 0x426], ax
jmp 0x514875
and dword [ebp - 0xb18], 0
jmp 0x51485a
mov eax, dword [ebp - 0xb18]
inc eax
mov dword [ebp - 0xb18], eax
cmp dword [ebp - 0xb18], 0xc
jge 0x514875
xor eax, eax
mov ecx, dword [ebp - 0xb18]
mov word [ebp + ecx*2 - 0x43c], ax
jmp 0x51484d
push 4
call fcn.0092c01f
pop ecx
mov dword [ebp - 0xf90], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0xf90], 0
je 0x5148aa
lea eax, [ebp - 0x43c]
push eax
mov ecx, dword [ebp - 0xf90]
call fcn.0044d7fd
mov dword [ebp - 0xfe0], eax
jmp 0x5148b1
and dword [ebp - 0xfe0], 0
mov eax, dword [ebp - 0xfe0]
mov dword [ebp - 0xf8c], eax
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0xf8c]
mov dword [ebp - 0x40c], eax
and dword [ebp - 0x664], 0
and dword [ebp - 0x660], 0
fldz
fstp qword [ebp - 0x44c]
fldz
fstp qword [ebp - 0x674]
fldz
fstp qword [ebp - 0x674]
jmp 0x514907
fld qword [ebp - 0x674]
fadd qword [0x997948]
fstp qword [ebp - 0x674]
fld qword [0x99b930]
fcomp qword [ebp - 0x674]
fnstsw ax
test ah, 0x41
jne 0x514990
fld qword [0x99b928]
fmul qword [ebp - 0x674]
fmul qword [ebp - 0x674]
fld qword [ebp - 0x674]
fmul qword [ebp - 0x674]
fsubp st(1)
fld qword [0x999698]
fmul qword [ebp - 0x674]
fmul qword [ebp - 0x674]
fadd qword [0x99b920]
fdivp st(1)
fadd qword [ebp - 0x44c]
fstp qword [ebp - 0x44c]
fld qword [0x99b918]
fcomp qword [ebp - 0x44c]
fnstsw ax
test ah, 5
jp 0x51498b
fld qword [0x99b910]
fmul qword [ebp - 0x674]
fsubr qword [ebp - 0x44c]
fstp qword [ebp - 0x44c]
stc
invalid
mov ah, 0xfb
invalid
jmp 0x5148f5
fldz
fcomp qword [ebp - 0x44c]
fnstsw ax
test ah, 0x41
jne 0x5149d4
inc ebp
das
cmp eax, 0x4c425a6f
push 0x60
jae 0x5149fc
and ch, byte [esi]
cmp al, 0x59
insb byte es:[edi], dx
push eax
inc edi
dec esi
sub al, 0xe0
mov ch, 0xe0
mov bl, 0xe0
mov dh, 0xd9
lodsb al, byte [esi]
in al, 0xaa
loop 0x514971
fisubr word [esi - 0x1f4c2250]
scasd eax, dword es:[edi]
out 0xb4, eax
loopne 0x51497c
loop 0x514981
fld xword [edi + 0x1d38e9]
add bh, al
test dword [ecx + edi*8 + 0x49b3ffff], ebx
push ecx
add bh, al
test dword [eax - 0x60000007], esp
dec ecx
push ecx
add byte [ebx - 0x6637b], cl
dec dword [ecx - 0xb237b]
dec dword [ebx - 0x65f7b]
dec dword [ecx - 0xb1f7b]
inc esi
test ebx, eax
invalid
mov dword [ebp - 0x664], 0x5149b3
mov dword [ebp - 0x660], 0x51499f
mov eax, dword [ebp - 0x664]
mov dword [ebp - 0xb24], eax
mov eax, dword [ebp - 0x660]
mov dword [ebp - 0xb20], eax
mov byte [ebp - 0xc3d], 0x18
and dword [ebp - 0xc34], 0
jmp 0x514a1d
invalid
loopne 0x5149f2
invalid
mov eax, dword [ebp - 0xc34]
inc eax
mov dword [ebp - 0xc34], eax
cmp dword [ebp - 0xc34], 0x100
jae 0x514a3e
mov eax, dword [ebp - 0xc34]
mov cl, byte [ebp - 0xc34]
mov byte [ebp + eax - 0xc2c], cl
jmp 0x514a10
and dword [ebp - 0xb28], 0
mov byte [ebp - 0xc3e], 0
mov dword [ebp - 0xc34], 0xff
jmp 0x514a65
mov eax, dword [ebp - 0xc34]
dec eax
mov dword [ebp - 0xc34], eax
cmp dword [ebp - 0xc34], 0
jbe 0x514cdf
and dword [ebp - 0xc44], 0
mov dword [ebp - 0xc4c], 1
mov eax, dword [ebp - 0xc4c]
cmp eax, dword [ebp - 0xc34]
jae 0x514aa3
mov eax, dword [ebp - 0xc4c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xc4c], eax
jmp 0x514a83
mov eax, dword [ebp - 0xb28]
mov dword [ebp - 0xfe4], eax
mov eax, dword [ebp - 0xfe4]
mov dword [ebp - 0xfe8], eax
cmp dword [ebp - 0xfe8], 0
je 0x514ae8
sub dword [ebp - 0xfe8], 1
je 0x514b14
sub dword [ebp - 0xfe8], 1
je 0x514b40
sub dword [ebp - 0xfe8], 1
je 0x514b6c
jmp 0x514b98
movzx eax, byte [ebp - 0xc3e]
movzx ebx, byte [ebp + eax - 0xc2c]
fld qword [ebp - 0x44c]
call fcn.0092d216
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xc3e], bl
jmp 0x514bbf
movzx eax, byte [ebp - 0xc3e]
movzx ebx, byte [ebp + eax - 0xc2c]
fld qword [ebp - 0x44c]
call fcn.0092d216
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xc3e], bl
jmp 0x514bbf
movzx eax, byte [ebp - 0xc3e]
movzx ebx, byte [ebp + eax - 0xc2c]
fld qword [ebp - 0x44c]
call fcn.0092d216
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xc3e], bl
jmp 0x514bbf
movzx eax, byte [ebp - 0xc3e]
movzx ebx, byte [ebp + eax - 0xc2c]
fld qword [ebp - 0x44c]
call fcn.0092d216
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xc3e], bl
jmp 0x514bbf
movzx eax, byte [ebp - 0xc3e]
movzx eax, byte [ebp + eax - 0xc2c]
mov ecx, dword [ebp - 0xb20]
add ecx, dword [ebp - 0xb28]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0xc3e], al
mov eax, dword [ebp - 0xb28]
inc eax
mov dword [ebp - 0xb28], eax
movzx eax, byte [ebp - 0xc3d]
cmp dword [ebp - 0xb28], eax
jb 0x514bf8
and dword [ebp - 0xb28], 0
movzx eax, byte [ebp - 0xc3d]
movzx ecx, byte [ebp - 0xc3e]
add ecx, eax
mov byte [ebp - 0xc3e], cl
movzx eax, byte [ebp - 0xc3e]
and eax, dword [ebp - 0xc4c]
mov dword [ebp - 0xc48], eax
mov eax, dword [ebp - 0xc44]
inc eax
mov dword [ebp - 0xc44], eax
cmp dword [ebp - 0xc44], 0xb
jbe 0x514c35
mov eax, dword [ebp - 0xc48]
xor edx, edx
div dword [ebp - 0xc34]
mov dword [ebp - 0xc48], edx
mov eax, dword [ebp - 0xc48]
cmp eax, dword [ebp - 0xc34]
ja 0x514aa3
mov eax, dword [ebp - 0xc34]
cmp eax, dword [ebp - 0xc48]
je 0x514cda
mov eax, dword [ebp - 0xc48]
movzx eax, byte [ebp + eax - 0xc2c]
mov ecx, dword [ebp - 0xc34]
movzx ecx, byte [ebp + ecx - 0xc2c]
xor ecx, eax
mov eax, dword [ebp - 0xc34]
mov byte [ebp + eax - 0xc2c], cl
mov eax, dword [ebp - 0xc34]
movzx eax, byte [ebp + eax - 0xc2c]
mov ecx, dword [ebp - 0xc48]
movzx ecx, byte [ebp + ecx - 0xc2c]
xor ecx, eax
mov eax, dword [ebp - 0xc48]
mov byte [ebp + eax - 0xc2c], cl
mov eax, dword [ebp - 0xc48]
movzx eax, byte [ebp + eax - 0xc2c]
mov ecx, dword [ebp - 0xc34]
movzx ecx, byte [ebp + ecx - 0xc2c]
xor ecx, eax
mov eax, dword [ebp - 0xc34]
mov byte [ebp + eax - 0xc2c], cl
jmp 0x514a58
mov al, byte [ebp - 0xc2b]
mov byte [ebp - 0xc3f], al
mov al, byte [ebp - 0xc29]
mov byte [ebp - 0xb29], al
mov al, byte [ebp - 0xc27]
mov byte [ebp - 0xc2d], al
mov al, byte [ebp - 0xc25]
mov byte [ebp - 0xc35], al
movzx eax, byte [ebp - 0xc3e]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp - 0xb19], al
mov dword [ebp - 0xc3c], 0x1c
cmp dword [ebp - 0xc3c], 2
jle 0x5166dd
mov eax, dword [ebp - 0xc3c]
and eax, 1
jne 0x5166dd
and dword [ebp - 0xcd0], 0
and dword [ebp - 0xccc], 0
mov eax, dword [ebp - 0xccc]
inc eax
mov dword [ebp - 0xccc], eax
and dword [ebp - 0xc50], 0
mov eax, dword [ebp - 0xcd0]
shl eax, 1
mov dword [ebp - 0xc50], eax
and dword [ebp - 0xce0], 0
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xc50]
movzx eax, byte [eax]
add eax, dword [ebp - 0xce0]
mov dword [ebp - 0xce0], eax
and dword [ebp - 0xc70], 0
mov eax, dword [ebp - 0xc70]
add eax, 0xd8
mov dword [ebp - 0xc70], eax
and dword [ebp - 0xca4], 0
mov eax, dword [ebp - 0xcd0]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xca4], eax
and dword [ebp - 0xd0c], 0
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xca4]
movzx eax, byte [eax]
add eax, dword [ebp - 0xd0c]
mov dword [ebp - 0xd0c], eax
and dword [ebp - 0xcdc], 0
mov eax, dword [ebp - 0xcdc]
add eax, 0xaa
mov dword [ebp - 0xcdc], eax
and dword [ebp - 0xd08], 0
mov eax, dword [ebp - 0xce0]
sub eax, dword [ebp - 0xc70]
add eax, dword [ebp - 0xd08]
mov dword [ebp - 0xd08], eax
and dword [ebp - 0xc54], 0
mov eax, dword [ebp - 0xd0c]
sub eax, dword [ebp - 0xcdc]
add eax, dword [ebp - 0xc54]
mov dword [ebp - 0xc54], eax
and dword [ebp - 0xd04], 0
mov eax, dword [ebp - 0xd08]
shl eax, 4
mov dword [ebp - 0xd04], eax
and dword [ebp - 0xcd8], 0
mov eax, dword [ebp - 0xc54]
mov dword [ebp - 0xcd8], eax
and dword [ebp - 0xcc8], 0
mov eax, dword [ebp - 0xd04]
or eax, dword [ebp - 0xcd8]
mov dword [ebp - 0xcc8], eax
mov byte [ebp - 0xc9d], 0
mov al, byte [ebp - 0xcc8]
mov byte [ebp - 0xc9d], al
mov byte [ebp - 0xcfd], 0
movzx eax, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp - 0xcfd], al
movzx eax, byte [ebp - 0xc3f]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xb29]
add ecx, eax
mov byte [ebp - 0xb29], cl
mov al, byte [ebp - 0xc3f]
add al, 1
mov byte [ebp - 0xc3f], al
movzx eax, byte [ebp - 0xb29]
movzx ecx, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc35]
movzx ecx, byte [ebp - 0xb29]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
movzx ecx, byte [ebp - 0xc35]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
mov cl, byte [ebp - 0xcfd]
mov byte [ebp + eax - 0xc2c], cl
movzx eax, byte [ebp - 0xcfd]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xc2d]
add ecx, eax
mov byte [ebp - 0xc2d], cl
movzx eax, byte [ebp - 0xc9d]
movzx ecx, byte [ebp - 0xb29]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xc3f]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xc35]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xb19]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
mov byte [ebp - 0xc35], al
fld qword [0x99b908]
fstp qword [ebp - 0xcc4]
fld qword [0x99b900]
fstp qword [ebp - 0xc9c]
fld qword [0x99b8f8]
fstp qword [ebp - 0xc6c]
fld qword [0x99b8f0]
fstp qword [ebp - 0xcfc]
fld qword [0x99b8e8]
fstp qword [ebp - 0xcbc]
fld qword [0x99b8e0]
fstp qword [ebp - 0xc94]
fld qword [ebp - 0xcfc]
fsub qword [ebp - 0xc94]
fstp qword [ebp - 0xcfc]
fld qword [ebp - 0xcbc]
fadd qword [ebp - 0xc94]
fstp qword [ebp - 0xcbc]
fld qword [ebp - 0xc6c]
fsub qword [ebp - 0xc94]
fstp qword [ebp - 0xc6c]
fld qword [ebp - 0xcfc]
fadd qword [ebp - 0xc94]
fstp qword [ebp - 0xcfc]
fld qword [ebp - 0xcbc]
fmul qword [ebp - 0xc94]
fstp qword [ebp - 0xcbc]
fld qword [ebp - 0xc6c]
fmul qword [ebp - 0xc94]
fstp qword [ebp - 0xc6c]
fld qword [ebp - 0xcbc]
fcomp qword [ebp - 0xc94]
fnstsw ax
test ah, 5
jp 0x51527c
fld qword [ebp - 0xc94]
fdiv qword [ebp - 0xc9c]
fstp qword [ebp - 0xc94]
fld qword [ebp - 0xc94]
fsub qword [ebp - 0xc9c]
fstp qword [ebp - 0xc94]
fld qword [ebp - 0xcc4]
fdiv qword [ebp - 0xc6c]
fstp qword [ebp - 0xcc4]
fld qword [ebp - 0xcbc]
fadd qword [ebp - 0xcc4]
fstp qword [ebp - 0xcbc]
fld qword [ebp - 0xcbc]
fsub qword [ebp - 0xcc4]
fstp qword [ebp - 0xcbc]
fld qword [ebp - 0xc6c]
fsub qword [ebp - 0xcbc]
fstp qword [ebp - 0xc6c]
fld qword [ebp - 0xc9c]
fdiv qword [ebp - 0xc6c]
fstp qword [ebp - 0xc9c]
fld qword [ebp - 0xcfc]
fdiv qword [ebp - 0xcbc]
fstp qword [ebp - 0xcfc]
fld qword [ebp - 0xcc4]
fmul qword [ebp - 0xc9c]
fstp qword [ebp - 0xcc4]
fld qword [ebp - 0xc94]
fdiv qword [ebp - 0xcc4]
fstp qword [ebp - 0xc94]
fld qword [ebp - 0xcc4]
fdiv qword [ebp - 0xc9c]
fstp qword [ebp - 0xcc4]
fld qword [ebp - 0xc9c]
fsub qword [ebp - 0xc6c]
fstp qword [ebp - 0xc9c]
fld qword [ebp - 0xcbc]
fcomp qword [ebp - 0xc6c]
fnstsw ax
test ah, 0x41
jne 0x51520e
fld qword [ebp - 0xc94]
fdiv qword [ebp - 0xcc4]
fstp qword [ebp - 0xc94]
fld qword [ebp - 0xcbc]
fsub qword [ebp - 0xc94]
fstp qword [ebp - 0xcbc]
fld qword [ebp - 0xcbc]
fdiv qword [ebp - 0xc94]
fstp qword [ebp - 0xcbc]
fld qword [ebp - 0xc94]
fadd qword [ebp - 0xcc4]
fstp qword [ebp - 0xc94]
fld qword [ebp - 0xcc4]
fadd qword [ebp - 0xc9c]
fstp qword [ebp - 0xcc4]
fld qword [ebp - 0xc6c]
fsub qword [ebp - 0xcfc]
fstp qword [ebp - 0xc6c]
jmp 0x51527a
fld qword [ebp - 0xcc4]
fadd qword [ebp - 0xc9c]
fstp qword [ebp - 0xcc4]
fld qword [ebp - 0xc94]
fadd qword [ebp - 0xcc4]
fstp qword [ebp - 0xc94]
fld qword [ebp - 0xcc4]
fadd qword [ebp - 0xc9c]
fstp qword [ebp - 0xcc4]
fld qword [ebp - 0xcbc]
fadd qword [ebp - 0xc94]
fstp qword [ebp - 0xcbc]
fld qword [ebp - 0xc9c]
fsub qword [ebp - 0xc6c]
fstp qword [ebp - 0xc9c]
fld qword [ebp - 0xcc4]
fadd qword [ebp - 0xc9c]
fstp qword [ebp - 0xcc4]
jmp 0x5152f4
fld qword [ebp - 0xcc4]
fadd qword [ebp - 0xc9c]
fstp qword [ebp - 0xcc4]
fld qword [ebp - 0xc9c]
fadd qword [ebp - 0xc6c]
fstp qword [ebp - 0xc9c]
fld qword [ebp - 0xc9c]
fadd qword [ebp - 0xc6c]
fstp qword [ebp - 0xc9c]
fld qword [ebp - 0xc9c]
fadd qword [ebp - 0xc6c]
fstp qword [ebp - 0xc9c]
fld qword [ebp - 0xcbc]
fadd qword [ebp - 0xc94]
fstp qword [ebp - 0xcbc]
fld qword [ebp - 0xcfc]
fadd qword [ebp - 0xcbc]
fstp qword [ebp - 0xcfc]
mov al, byte [ebp - 0xc9d]
mov byte [ebp - 0xb19], al
mov al, byte [ebp - 0xc35]
mov byte [ebp - 0xcd1], al
cmp dword [ebp - 0xcd0], 0
jle 0x51531c
mov eax, dword [ebp - 0xcd0]
mov cl, byte [ebp - 0xcd1]
mov byte [ebp + eax - 0x685], cl
mov eax, dword [ebp - 0xcd0]
inc eax
mov dword [ebp - 0xcd0], eax
mov eax, dword [ebp - 0xccc]
inc eax
mov dword [ebp - 0xccc], eax
mov eax, dword [ebp - 0xcd0]
shl eax, 1
mov dword [ebp - 0xc50], eax
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xc50]
movzx eax, byte [eax]
mov dword [ebp - 0xce0], eax
mov dword [ebp - 0xc70], 0xd8
mov eax, dword [ebp - 0xcd0]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xca4], eax
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xca4]
movzx eax, byte [eax]
mov dword [ebp - 0xd0c], eax
mov dword [ebp - 0xcdc], 0xaa
mov eax, dword [ebp - 0xce0]
sub eax, dword [ebp - 0xc70]
mov dword [ebp - 0xd08], eax
mov eax, dword [ebp - 0xd0c]
sub eax, dword [ebp - 0xcdc]
mov dword [ebp - 0xc54], eax
mov eax, dword [ebp - 0xd08]
shl eax, 4
mov dword [ebp - 0xd04], eax
mov eax, dword [ebp - 0xc54]
mov dword [ebp - 0xcd8], eax
mov eax, dword [ebp - 0xd04]
or eax, dword [ebp - 0xcd8]
mov dword [ebp - 0xcc8], eax
mov al, byte [ebp - 0xcc8]
mov byte [ebp - 0xc9d], al
movzx eax, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp - 0xcfd], al
movzx eax, byte [ebp - 0xc3f]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xb29]
add ecx, eax
mov byte [ebp - 0xb29], cl
mov al, byte [ebp - 0xc3f]
add al, 1
mov byte [ebp - 0xc3f], al
movzx eax, byte [ebp - 0xb29]
movzx ecx, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc35]
movzx ecx, byte [ebp - 0xb29]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
movzx ecx, byte [ebp - 0xc35]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
mov cl, byte [ebp - 0xcfd]
mov byte [ebp + eax - 0xc2c], cl
movzx eax, byte [ebp - 0xcfd]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xc2d]
add ecx, eax
mov byte [ebp - 0xc2d], cl
fld dword [0x99b8d8]
fstp dword [ebp - 0xc64]
fld dword [0x99b8d4]
fstp dword [ebp - 0xcf4]
fld dword [0x99b8d0]
fstp dword [ebp - 0xcb4]
fld dword [0x99b8cc]
fstp dword [ebp - 0xc88]
fld dword [ebp - 0xcf4]
fsub dword [ebp - 0xc88]
fstp dword [ebp - 0xcf4]
fld dword [ebp - 0xc64]
fadd dword [ebp - 0xc88]
fstp dword [ebp - 0xc64]
fld dword [ebp - 0xc64]
fsub dword [ebp - 0xc88]
fstp dword [ebp - 0xc64]
fld dword [ebp - 0xcb4]
fsub dword [ebp - 0xc88]
fstp dword [ebp - 0xcb4]
fld dword [ebp - 0xcb4]
fld dword [ebp - 0xc64]
fcompp
fnstsw ax
test ah, 5
jp 0x51558f
fld dword [ebp - 0xcf4]
fsub dword [ebp - 0xc88]
fstp dword [ebp - 0xcf4]
fld dword [ebp - 0xc64]
fadd dword [ebp - 0xcb4]
fstp dword [ebp - 0xc64]
fld dword [ebp - 0xcb4]
fdiv dword [ebp - 0xc64]
fstp dword [ebp - 0xcb4]
fld dword [ebp - 0xc88]
fmul dword [ebp - 0xcf4]
fstp dword [ebp - 0xc88]
jmp 0x51565d
fld dword [ebp - 0xc88]
fsub dword [ebp - 0xcf4]
fstp dword [ebp - 0xc88]
fld dword [ebp - 0xc88]
fadd dword [ebp - 0xcf4]
fstp dword [ebp - 0xc88]
fld dword [ebp - 0xcf4]
fadd dword [ebp - 0xc88]
fstp dword [ebp - 0xcf4]
fld dword [ebp - 0xc88]
fsub dword [ebp - 0xcf4]
fstp dword [ebp - 0xc88]
movzx eax, byte [ebp - 0xc9d]
movzx ecx, byte [ebp - 0xb29]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xc3f]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xc35]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xb19]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
mov byte [ebp - 0xc35], al
mov al, byte [ebp - 0xc9d]
mov byte [ebp - 0xb19], al
mov al, byte [ebp - 0xc35]
mov byte [ebp - 0xcd1], al
cmp dword [ebp - 0xcd0], 0
jle 0x515691
mov eax, dword [ebp - 0xcd0]
mov cl, byte [ebp - 0xcd1]
mov byte [ebp + eax - 0x685], cl
mov eax, dword [ebp - 0xcd0]
inc eax
mov dword [ebp - 0xcd0], eax
mov eax, dword [ebp - 0xccc]
inc eax
mov dword [ebp - 0xccc], eax
mov eax, dword [ebp - 0xcd0]
shl eax, 1
mov dword [ebp - 0xc50], eax
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xc50]
movzx eax, byte [eax]
mov dword [ebp - 0xce0], eax
mov dword [ebp - 0xc70], 0xd8
mov eax, dword [ebp - 0xcd0]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xca4], eax
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xca4]
movzx eax, byte [eax]
mov dword [ebp - 0xd0c], eax
mov dword [ebp - 0xcdc], 0xaa
mov eax, dword [ebp - 0xce0]
sub eax, dword [ebp - 0xc70]
mov dword [ebp - 0xd08], eax
mov eax, dword [ebp - 0xd0c]
sub eax, dword [ebp - 0xcdc]
mov dword [ebp - 0xc54], eax
mov eax, dword [ebp - 0xd08]
shl eax, 4
mov dword [ebp - 0xd04], eax
mov eax, dword [ebp - 0xc54]
mov dword [ebp - 0xcd8], eax
mov eax, dword [ebp - 0xd04]
or eax, dword [ebp - 0xcd8]
mov dword [ebp - 0xcc8], eax
fld dword [0x99b8c8]
fstp dword [ebp - 0xcb0]
fld dword [0x99b8c4]
fstp dword [ebp - 0xcf0]
fld dword [0x99b8c0]
fstp dword [ebp - 0xc60]
fld dword [ebp - 0xcf0]
fsub dword [ebp - 0xc60]
fstp dword [ebp - 0xcf0]
fld dword [ebp - 0xcb0]
fadd dword [ebp - 0xc60]
fstp dword [ebp - 0xcb0]
fld dword [ebp - 0xcf0]
fsub dword [ebp - 0xc60]
fstp dword [ebp - 0xcf0]
fld dword [ebp - 0xcb0]
fld dword [ebp - 0xcf0]
fcompp
fnstsw ax
test ah, 0x41
jne 0x5158bc
fld dword [ebp - 0xcf0]
fmul dword [ebp - 0xcb0]
fstp dword [ebp - 0xcf0]
fld dword [ebp - 0xc60]
fdiv dword [ebp - 0xcf0]
fstp dword [ebp - 0xc60]
fld dword [ebp - 0xcf0]
fdiv dword [ebp - 0xcb0]
fstp dword [ebp - 0xcf0]
fld dword [ebp - 0xcf0]
fdiv dword [ebp - 0xcb0]
fstp dword [ebp - 0xcf0]
fld dword [ebp - 0xc60]
fdiv dword [ebp - 0xcf0]
fstp dword [ebp - 0xc60]
fld dword [ebp - 0xc60]
fmul dword [ebp - 0xcf0]
fstp dword [ebp - 0xc60]
fld dword [ebp - 0xc60]
fld dword [ebp - 0xcf0]
fcompp
fnstsw ax
test ah, 0x41
jne 0x515884
fld dword [ebp - 0xcb0]
fmul dword [ebp - 0xcf0]
fstp dword [ebp - 0xcb0]
fld dword [ebp - 0xcf0]
fdiv dword [ebp - 0xc60]
fstp dword [ebp - 0xcf0]
fld dword [ebp - 0xc60]
fmul dword [ebp - 0xcb0]
fstp dword [ebp - 0xc60]
jmp 0x5158ba
fld dword [ebp - 0xcf0]
fdiv dword [ebp - 0xc60]
fstp dword [ebp - 0xcf0]
fld dword [ebp - 0xcb0]
fsub dword [ebp - 0xcf0]
fstp dword [ebp - 0xcb0]
fld dword [ebp - 0xcf0]
fmul dword [ebp - 0xc60]
fstp dword [ebp - 0xcf0]
jmp 0x5158fe
fld dword [ebp - 0xcf0]
fsub dword [ebp - 0xcb0]
fstp dword [ebp - 0xcf0]
fld dword [ebp - 0xcb0]
fadd dword [ebp - 0xc60]
fstp dword [ebp - 0xcb0]
fld dword [ebp - 0xcb0]
fsub dword [ebp - 0xc60]
fstp dword [ebp - 0xcb0]
mov al, byte [ebp - 0xcc8]
mov byte [ebp - 0xc9d], al
fld qword [0x997628]
fstp qword [ebp - 0xc84]
fld qword [0x99b8b8]
fstp qword [ebp - 0xcac]
fld qword [0x99b8b0]
fstp qword [ebp - 0xcec]
fld qword [0x99b8a8]
fstp qword [ebp - 0xc5c]
fld qword [0x99b8a0]
fstp qword [ebp - 0xc7c]
fld qword [ebp - 0xcac]
fsub qword [ebp - 0xc7c]
fstp qword [ebp - 0xcac]
fld qword [ebp - 0xc84]
fadd qword [ebp - 0xc7c]
fstp qword [ebp - 0xc84]
fld qword [ebp - 0xc5c]
fmul qword [ebp - 0xc7c]
fstp qword [ebp - 0xc5c]
fld qword [ebp - 0xc5c]
fadd qword [ebp - 0xc7c]
fstp qword [ebp - 0xc5c]
fld qword [ebp - 0xcec]
fmul qword [ebp - 0xc7c]
fstp qword [ebp - 0xcec]
fld qword [ebp - 0xc7c]
fcomp qword [ebp - 0xcec]
fnstsw ax
test ah, 0x41
jne 0x515b2a
fld qword [ebp - 0xcec]
fadd qword [ebp - 0xc7c]
fstp qword [ebp - 0xcec]
fld qword [ebp - 0xc84]
fadd qword [ebp - 0xcec]
fstp qword [ebp - 0xc84]
fld qword [ebp - 0xcac]
fmul qword [ebp - 0xc5c]
fstp qword [ebp - 0xcac]
fld qword [ebp - 0xcec]
fadd qword [ebp - 0xc7c]
fstp qword [ebp - 0xcec]
fld qword [ebp - 0xcec]
fmul qword [ebp - 0xc7c]
fstp qword [ebp - 0xcec]
fld qword [ebp - 0xcec]
fadd qword [ebp - 0xc7c]
fstp qword [ebp - 0xcec]
fld qword [ebp - 0xcac]
fmul qword [ebp - 0xc5c]
fstp qword [ebp - 0xcac]
fld qword [ebp - 0xc5c]
fadd qword [ebp - 0xc84]
fstp qword [ebp - 0xc5c]
fld qword [ebp - 0xcac]
fsub qword [ebp - 0xc5c]
fstp qword [ebp - 0xcac]
fld qword [ebp - 0xcac]
fmul qword [ebp - 0xc5c]
fstp qword [ebp - 0xcac]
fld qword [ebp - 0xcec]
fcomp qword [ebp - 0xc84]
fnstsw ax
test ah, 5
jp 0x515ace
fld qword [ebp - 0xc5c]
fdiv qword [ebp - 0xc84]
fstp qword [ebp - 0xc5c]
fld qword [ebp - 0xc84]
fdiv qword [ebp - 0xcec]
fstp qword [ebp - 0xc84]
fld qword [ebp - 0xc7c]
fsub qword [ebp - 0xcac]
fstp qword [ebp - 0xc7c]
fld qword [ebp - 0xc7c]
fdiv qword [ebp - 0xcac]
fstp qword [ebp - 0xc7c]
fld qword [ebp - 0xc7c]
fadd qword [ebp - 0xcac]
fstp qword [ebp - 0xc7c]
jmp 0x515b28
fld qword [ebp - 0xc7c]
fmul qword [ebp - 0xcac]
fstp qword [ebp - 0xc7c]
fld qword [ebp - 0xc7c]
fsub qword [ebp - 0xcac]
fstp qword [ebp - 0xc7c]
fld qword [ebp - 0xcec]
fmul qword [ebp - 0xc7c]
fstp qword [ebp - 0xcec]
fld qword [ebp - 0xcec]
fmul qword [ebp - 0xc7c]
fstp qword [ebp - 0xcec]
fld qword [ebp - 0xc84]
fmul qword [ebp - 0xcec]
fstp qword [ebp - 0xc84]
jmp 0x515b98
fld qword [ebp - 0xc5c]
fadd qword [ebp - 0xc7c]
fstp qword [ebp - 0xc5c]
fld qword [ebp - 0xcec]
fsub qword [ebp - 0xc5c]
fstp qword [ebp - 0xcec]
fld qword [ebp - 0xcac]
fsub qword [ebp - 0xcec]
fstp qword [ebp - 0xcac]
fld qword [ebp - 0xcac]
fmul qword [ebp - 0xcec]
fstp qword [ebp - 0xcac]
fld qword [ebp - 0xc84]
fadd qword [ebp - 0xcac]
fstp qword [ebp - 0xc84]
movzx eax, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp - 0xcfd], al
movzx eax, byte [ebp - 0xc3f]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xb29]
add ecx, eax
mov byte [ebp - 0xb29], cl
mov al, byte [ebp - 0xc3f]
add al, 1
mov byte [ebp - 0xc3f], al
movzx eax, byte [ebp - 0xb29]
movzx ecx, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc35]
movzx ecx, byte [ebp - 0xb29]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
movzx ecx, byte [ebp - 0xc35]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
mov cl, byte [ebp - 0xcfd]
mov byte [ebp + eax - 0xc2c], cl
movzx eax, byte [ebp - 0xcfd]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xc2d]
add ecx, eax
mov byte [ebp - 0xc2d], cl
movzx eax, byte [ebp - 0xc9d]
movzx ecx, byte [ebp - 0xb29]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xc3f]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xc35]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xb19]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
mov byte [ebp - 0xc35], al
mov al, byte [ebp - 0xc9d]
mov byte [ebp - 0xb19], al
mov al, byte [ebp - 0xc35]
mov byte [ebp - 0xcd1], al
cmp dword [ebp - 0xcd0], 0
jle 0x515d04
mov eax, dword [ebp - 0xcd0]
mov cl, byte [ebp - 0xcd1]
mov byte [ebp + eax - 0x685], cl
mov eax, dword [ebp - 0xccc]
add eax, 4
mov dword [ebp - 0xccc], eax
mov eax, dword [ebp - 0xcd0]
inc eax
mov dword [ebp - 0xd10], eax
jmp 0x515d2f
mov eax, dword [ebp - 0xd10]
inc eax
mov dword [ebp - 0xd10], eax
mov eax, dword [ebp - 0xd10]
cmp eax, dword [ebp - 0xccc]
jge 0x515f8c
mov eax, dword [ebp - 0xcd0]
inc eax
mov dword [ebp - 0xcd0], eax
mov eax, dword [ebp - 0xcd0]
shl eax, 1
mov dword [ebp - 0xc50], eax
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xc50]
movzx eax, byte [eax]
mov dword [ebp - 0xce0], eax
mov dword [ebp - 0xc70], 0xd8
mov eax, dword [ebp - 0xcd0]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xca4], eax
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xca4]
movzx eax, byte [eax]
mov dword [ebp - 0xd0c], eax
mov dword [ebp - 0xcdc], 0xaa
mov eax, dword [ebp - 0xce0]
sub eax, dword [ebp - 0xc70]
mov dword [ebp - 0xd08], eax
mov eax, dword [ebp - 0xd0c]
sub eax, dword [ebp - 0xcdc]
mov dword [ebp - 0xc54], eax
mov eax, dword [ebp - 0xd08]
shl eax, 4
mov dword [ebp - 0xd04], eax
mov eax, dword [ebp - 0xc54]
mov dword [ebp - 0xcd8], eax
mov eax, dword [ebp - 0xd04]
or eax, dword [ebp - 0xcd8]
mov dword [ebp - 0xcc8], eax
mov al, byte [ebp - 0xcc8]
mov byte [ebp - 0xc9d], al
movzx eax, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp - 0xcfd], al
movzx eax, byte [ebp - 0xc3f]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xb29]
add ecx, eax
mov byte [ebp - 0xb29], cl
mov al, byte [ebp - 0xc3f]
add al, 1
mov byte [ebp - 0xc3f], al
movzx eax, byte [ebp - 0xb29]
movzx ecx, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc35]
movzx ecx, byte [ebp - 0xb29]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
movzx ecx, byte [ebp - 0xc35]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
mov cl, byte [ebp - 0xcfd]
mov byte [ebp + eax - 0xc2c], cl
movzx eax, byte [ebp - 0xcfd]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xc2d]
add ecx, eax
mov byte [ebp - 0xc2d], cl
movzx eax, byte [ebp - 0xc9d]
movzx ecx, byte [ebp - 0xb29]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xc3f]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xc35]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xb19]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
mov byte [ebp - 0xc35], al
mov al, byte [ebp - 0xc9d]
mov byte [ebp - 0xb19], al
mov al, byte [ebp - 0xc35]
mov byte [ebp - 0xcd1], al
cmp dword [ebp - 0xcd0], 0
jle 0x515f87
mov eax, dword [ebp - 0xcd0]
mov cl, byte [ebp - 0xcd1]
mov byte [ebp + eax - 0x685], cl
jmp 0x515d22
mov eax, dword [ebp - 0xccc]
inc eax
mov dword [ebp - 0xccc], eax
mov eax, dword [ebp - 0xccc]
add eax, 5
mov dword [ebp - 0xccc], eax
mov eax, dword [ebp - 0xcd0]
inc eax
mov dword [ebp - 0xd14], eax
jmp 0x515fc4
mov eax, dword [ebp - 0xd14]
inc eax
mov dword [ebp - 0xd14], eax
mov eax, dword [ebp - 0xd14]
cmp eax, dword [ebp - 0xccc]
jge 0x516221
mov eax, dword [ebp - 0xcd0]
inc eax
mov dword [ebp - 0xcd0], eax
mov eax, dword [ebp - 0xcd0]
shl eax, 1
mov dword [ebp - 0xc50], eax
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xc50]
movzx eax, byte [eax]
mov dword [ebp - 0xce0], eax
mov dword [ebp - 0xc70], 0xd8
mov eax, dword [ebp - 0xcd0]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xca4], eax
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xca4]
movzx eax, byte [eax]
mov dword [ebp - 0xd0c], eax
mov dword [ebp - 0xcdc], 0xaa
mov eax, dword [ebp - 0xce0]
sub eax, dword [ebp - 0xc70]
mov dword [ebp - 0xd08], eax
mov eax, dword [ebp - 0xd0c]
sub eax, dword [ebp - 0xcdc]
mov dword [ebp - 0xc54], eax
mov eax, dword [ebp - 0xd08]
shl eax, 4
mov dword [ebp - 0xd04], eax
mov eax, dword [ebp - 0xc54]
mov dword [ebp - 0xcd8], eax
mov eax, dword [ebp - 0xd04]
or eax, dword [ebp - 0xcd8]
mov dword [ebp - 0xcc8], eax
mov al, byte [ebp - 0xcc8]
mov byte [ebp - 0xc9d], al
movzx eax, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp - 0xcfd], al
movzx eax, byte [ebp - 0xc3f]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xb29]
add ecx, eax
mov byte [ebp - 0xb29], cl
mov al, byte [ebp - 0xc3f]
add al, 1
mov byte [ebp - 0xc3f], al
movzx eax, byte [ebp - 0xb29]
movzx ecx, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc35]
movzx ecx, byte [ebp - 0xb29]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
movzx ecx, byte [ebp - 0xc35]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
mov cl, byte [ebp - 0xcfd]
mov byte [ebp + eax - 0xc2c], cl
movzx eax, byte [ebp - 0xcfd]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xc2d]
add ecx, eax
mov byte [ebp - 0xc2d], cl
movzx eax, byte [ebp - 0xc9d]
movzx ecx, byte [ebp - 0xb29]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xc3f]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xc35]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xb19]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
mov byte [ebp - 0xc35], al
mov al, byte [ebp - 0xc9d]
mov byte [ebp - 0xb19], al
mov al, byte [ebp - 0xc35]
mov byte [ebp - 0xcd1], al
cmp dword [ebp - 0xcd0], 0
jle 0x51621c
mov eax, dword [ebp - 0xcd0]
mov cl, byte [ebp - 0xcd1]
mov byte [ebp + eax - 0x685], cl
jmp 0x515fb7
mov eax, dword [ebp - 0xccc]
inc eax
mov dword [ebp - 0xccc], eax
mov eax, dword [ebp - 0xcd0]
inc eax
mov dword [ebp - 0xcd0], eax
mov eax, dword [ebp - 0xccc]
inc eax
mov dword [ebp - 0xccc], eax
mov eax, dword [ebp - 0xcd0]
shl eax, 1
mov dword [ebp - 0xc50], eax
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xc50]
movzx eax, byte [eax]
mov dword [ebp - 0xce0], eax
mov dword [ebp - 0xc70], 0xd8
mov eax, dword [ebp - 0xcd0]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xca4], eax
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xca4]
movzx eax, byte [eax]
mov dword [ebp - 0xd0c], eax
mov dword [ebp - 0xcdc], 0xaa
mov eax, dword [ebp - 0xce0]
sub eax, dword [ebp - 0xc70]
mov dword [ebp - 0xd08], eax
mov eax, dword [ebp - 0xd0c]
sub eax, dword [ebp - 0xcdc]
mov dword [ebp - 0xc54], eax
mov eax, dword [ebp - 0xd08]
shl eax, 4
mov dword [ebp - 0xd04], eax
mov eax, dword [ebp - 0xc54]
mov dword [ebp - 0xcd8], eax
mov eax, dword [ebp - 0xd04]
or eax, dword [ebp - 0xcd8]
mov dword [ebp - 0xcc8], eax
mov al, byte [ebp - 0xcc8]
mov byte [ebp - 0xc9d], al
movzx eax, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp - 0xcfd], al
movzx eax, byte [ebp - 0xc3f]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xb29]
add ecx, eax
mov byte [ebp - 0xb29], cl
mov al, byte [ebp - 0xc3f]
add al, 1
mov byte [ebp - 0xc3f], al
movzx eax, byte [ebp - 0xb29]
movzx ecx, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc35]
movzx ecx, byte [ebp - 0xb29]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
movzx ecx, byte [ebp - 0xc35]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
mov cl, byte [ebp - 0xcfd]
mov byte [ebp + eax - 0xc2c], cl
movzx eax, byte [ebp - 0xcfd]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xc2d]
add ecx, eax
mov byte [ebp - 0xc2d], cl
movzx eax, byte [ebp - 0xc9d]
movzx ecx, byte [ebp - 0xb29]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xc3f]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xc35]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xb19]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
mov byte [ebp - 0xc35], al
mov al, byte [ebp - 0xc9d]
mov byte [ebp - 0xb19], al
mov al, byte [ebp - 0xc35]
mov byte [ebp - 0xcd1], al
cmp dword [ebp - 0xcd0], 0
jle 0x516481
mov eax, dword [ebp - 0xcd0]
mov cl, byte [ebp - 0xcd1]
mov byte [ebp + eax - 0x685], cl
mov eax, dword [ebp - 0xcd0]
inc eax
mov dword [ebp - 0xcd0], eax
mov eax, dword [ebp - 0xccc]
inc eax
mov dword [ebp - 0xccc], eax
mov eax, dword [ebp - 0xcd0]
shl eax, 1
mov dword [ebp - 0xc50], eax
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xc50]
movzx eax, byte [eax]
mov dword [ebp - 0xce0], eax
mov dword [ebp - 0xc70], 0xd8
mov eax, dword [ebp - 0xcd0]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xca4], eax
mov eax, dword [ebp - 0xb24]
add eax, dword [ebp - 0xca4]
movzx eax, byte [eax]
mov dword [ebp - 0xd0c], eax
mov dword [ebp - 0xcdc], 0xaa
mov eax, dword [ebp - 0xce0]
sub eax, dword [ebp - 0xc70]
mov dword [ebp - 0xd08], eax
mov eax, dword [ebp - 0xd0c]
sub eax, dword [ebp - 0xcdc]
mov dword [ebp - 0xc54], eax
mov eax, dword [ebp - 0xd08]
shl eax, 4
mov dword [ebp - 0xd04], eax
mov eax, dword [ebp - 0xc54]
mov dword [ebp - 0xcd8], eax
mov eax, dword [ebp - 0xd04]
or eax, dword [ebp - 0xcd8]
mov dword [ebp - 0xcc8], eax
mov al, byte [ebp - 0xcc8]
mov byte [ebp - 0xc9d], al
movzx eax, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp - 0xcfd], al
movzx eax, byte [ebp - 0xc3f]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xb29]
add ecx, eax
mov byte [ebp - 0xb29], cl
mov al, byte [ebp - 0xc3f]
add al, 1
mov byte [ebp - 0xc3f], al
movzx eax, byte [ebp - 0xb29]
movzx ecx, byte [ebp - 0xb19]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc35]
movzx ecx, byte [ebp - 0xb29]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
movzx ecx, byte [ebp - 0xc35]
mov al, byte [ebp + eax - 0xc2c]
mov byte [ebp + ecx - 0xc2c], al
movzx eax, byte [ebp - 0xc3f]
mov cl, byte [ebp - 0xcfd]
mov byte [ebp + eax - 0xc2c], cl
movzx eax, byte [ebp - 0xcfd]
movzx eax, byte [ebp + eax - 0xc2c]
movzx ecx, byte [ebp - 0xc2d]
add ecx, eax
mov byte [ebp - 0xc2d], cl
movzx eax, byte [ebp - 0xc9d]
movzx ecx, byte [ebp - 0xb29]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xc3f]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xc35]
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx edx, byte [ebp - 0xb19]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xc2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xc2c]
movzx ecx, byte [ebp + ecx - 0xc2c]
xor eax, ecx
mov byte [ebp - 0xc35], al
mov al, byte [ebp - 0xc9d]
mov byte [ebp - 0xb19], al
mov al, byte [ebp - 0xc35]
mov byte [ebp - 0xcd1], al
cmp dword [ebp - 0xcd0], 0
jle 0x5166d4
mov eax, dword [ebp - 0xcd0]
mov cl, byte [ebp - 0xcd1]
mov byte [ebp + eax - 0x685], cl
mov byte [ebp - 0x677], 0
jmp 0x51670c
and dword [ebp - 0xd18], 0
jmp 0x5166f3
mov eax, dword [ebp - 0xd18]
inc eax
mov dword [ebp - 0xd18], eax
cmp dword [ebp - 0xd18], 0xe
jge 0x51670c
mov eax, dword [ebp - 0xd18]
mov byte [ebp + eax - 0x684], 0
jmp 0x5166e6
lea eax, [ebp - 0x684]
push eax
mov ecx, dword [ebp - 0x40c]
call fcn.0044d833
mov dword [ebp - 0x3ec], eax
and dword [ebp - 0x408], 0
and dword [ebp - 0x668], 0
fldz
fstp qword [ebp - 0x404]
fldz
fstp qword [ebp - 0x444]
fldz
fstp qword [ebp - 0x444]
jmp 0x51675e
fld qword [ebp - 0x444]
fadd qword [0x996cc8]
fstp qword [ebp - 0x444]
fld qword [0x99b898]
fcomp qword [ebp - 0x444]
fnstsw ax
test ah, 0x41
jne 0x5167e7
fld qword [0x99b890]
fmul qword [ebp - 0x444]
fmul qword [ebp - 0x444]
fld qword [ebp - 0x444]
fmul qword [ebp - 0x444]
fsubp st(1)
fld qword [0x998548]
fmul qword [ebp - 0x444]
fmul qword [ebp - 0x444]
fadd qword [0x99b888]
fdivp st(1)
fadd qword [ebp - 0x404]
fstp qword [ebp - 0x404]
fld qword [0x99b880]
fcomp qword [ebp - 0x404]
fnstsw ax
test ah, 5
jp 0x5167e2
fld qword [0x99b878]
fmul qword [ebp - 0x444]
fsubr qword [ebp - 0x404]
fstp qword [ebp - 0x404]
jmp 0x51674c
fldz
fcomp qword [ebp - 0x404]
fnstsw ax
test ah, 0x41
jne 0x51681b
fdivr st(0), st(0)
invalid
mov dword [ebp - 0x408], 0x5167f6
mov dword [ebp - 0x668], 0x516802
mov eax, dword [ebp - 0x408]
mov dword [ebp - 0xd24], eax
mov eax, dword [ebp - 0x668]
mov dword [ebp - 0xd20], eax
mov byte [ebp - 0xe4d], 0x18
and dword [ebp - 0xe40], 0
jmp 0x516864
mov eax, dword [ebp - 0xe40]
inc eax
mov dword [ebp - 0xe40], eax
cmp dword [ebp - 0xe40], 0x100
jae 0x516885
mov eax, dword [ebp - 0xe40]
mov cl, byte [ebp - 0xe40]
mov byte [ebp + eax - 0xe2c], cl
jmp 0x516857
and dword [ebp - 0xd28], 0
mov byte [ebp - 0xe4e], 0
mov dword [ebp - 0xe40], 0xff
jmp 0x5168ac
mov eax, dword [ebp - 0xe40]
dec eax
mov dword [ebp - 0xe40], eax
cmp dword [ebp - 0xe40], 0
jbe 0x516b26
and dword [ebp - 0xe5c], 0
mov dword [ebp - 0xe64], 1
mov eax, dword [ebp - 0xe64]
cmp eax, dword [ebp - 0xe40]
jae 0x5168ea
mov eax, dword [ebp - 0xe64]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xe64], eax
jmp 0x5168ca
mov eax, dword [ebp - 0xd28]
mov dword [ebp - 0xfec], eax
mov eax, dword [ebp - 0xfec]
mov dword [ebp - 0xff0], eax
cmp dword [ebp - 0xff0], 0
je 0x51692f
sub dword [ebp - 0xff0], 1
je 0x51695b
sub dword [ebp - 0xff0], 1
je 0x516987
sub dword [ebp - 0xff0], 1
je 0x5169b3
jmp 0x5169df
movzx eax, byte [ebp - 0xe4e]
movzx ebx, byte [ebp + eax - 0xe2c]
fld qword [ebp - 0x404]
call fcn.0092d216
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xe4e], bl
jmp 0x516a06
movzx eax, byte [ebp - 0xe4e]
movzx ebx, byte [ebp + eax - 0xe2c]
fld qword [ebp - 0x404]
call fcn.0092d216
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xe4e], bl
jmp 0x516a06
movzx eax, byte [ebp - 0xe4e]
movzx ebx, byte [ebp + eax - 0xe2c]
fld qword [ebp - 0x404]
call fcn.0092d216
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xe4e], bl
jmp 0x516a06
movzx eax, byte [ebp - 0xe4e]
movzx ebx, byte [ebp + eax - 0xe2c]
fld qword [ebp - 0x404]
call fcn.0092d216
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xe4e], bl
jmp 0x516a06
movzx eax, byte [ebp - 0xe4e]
movzx eax, byte [ebp + eax - 0xe2c]
mov ecx, dword [ebp - 0xd20]
add ecx, dword [ebp - 0xd28]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0xe4e], al
mov eax, dword [ebp - 0xd28]
inc eax
mov dword [ebp - 0xd28], eax
movzx eax, byte [ebp - 0xe4d]
cmp dword [ebp - 0xd28], eax
jb 0x516a3f
and dword [ebp - 0xd28], 0
movzx eax, byte [ebp - 0xe4d]
movzx ecx, byte [ebp - 0xe4e]
add ecx, eax
mov byte [ebp - 0xe4e], cl
movzx eax, byte [ebp - 0xe4e]
and eax, dword [ebp - 0xe64]
mov dword [ebp - 0xe60], eax
mov eax, dword [ebp - 0xe5c]
inc eax
mov dword [ebp - 0xe5c], eax
cmp dword [ebp - 0xe5c], 0xb
jbe 0x516a7c
mov eax, dword [ebp - 0xe60]
xor edx, edx
div dword [ebp - 0xe40]
mov dword [ebp - 0xe60], edx
mov eax, dword [ebp - 0xe60]
cmp eax, dword [ebp - 0xe40]
ja 0x5168ea
mov eax, dword [ebp - 0xe40]
cmp eax, dword [ebp - 0xe60]
je 0x516b21
mov eax, dword [ebp - 0xe60]
movzx eax, byte [ebp + eax - 0xe2c]
mov ecx, dword [ebp - 0xe40]
movzx ecx, byte [ebp + ecx - 0xe2c]
xor ecx, eax
mov eax, dword [ebp - 0xe40]
mov byte [ebp + eax - 0xe2c], cl
mov eax, dword [ebp - 0xe40]
movzx eax, byte [ebp + eax - 0xe2c]
mov ecx, dword [ebp - 0xe60]
movzx ecx, byte [ebp + ecx - 0xe2c]
xor ecx, eax
mov eax, dword [ebp - 0xe60]
mov byte [ebp + eax - 0xe2c], cl
mov eax, dword [ebp - 0xe60]
movzx eax, byte [ebp + eax - 0xe2c]
mov ecx, dword [ebp - 0xe40]
movzx ecx, byte [ebp + ecx - 0xe2c]
xor ecx, eax
mov eax, dword [ebp - 0xe40]
mov byte [ebp + eax - 0xe2c], cl
jmp 0x51689f
mov al, byte [ebp - 0xe2b]
mov byte [ebp - 0xe4f], al
mov al, byte [ebp - 0xe29]
mov byte [ebp - 0xd29], al
mov al, byte [ebp - 0xe27]
mov byte [ebp - 0xe35], al
mov al, byte [ebp - 0xe25]
mov byte [ebp - 0xe41], al
fld dword [0x99b874]
fstp dword [ebp - 0xe58]
fld dword [0x99b870]
fstp dword [ebp - 0xe34]
fld dword [0x99b86c]
fstp dword [ebp - 0xe3c]
fld dword [0x99b868]
fstp dword [ebp - 0xe48]
fld dword [0x99b864]
fstp dword [ebp - 0xe54]
fld dword [0x99b860]
fstp dword [ebp - 0xe30]
fld dword [ebp - 0xe34]
fsub dword [ebp - 0xe30]
fstp dword [ebp - 0xe34]
fld dword [ebp - 0xe3c]
fmul dword [ebp - 0xe30]
fstp dword [ebp - 0xe3c]
fld dword [ebp - 0xe3c]
fadd dword [ebp - 0xe30]
fstp dword [ebp - 0xe3c]
fld dword [ebp - 0xe34]
fmul dword [ebp - 0xe30]
fstp dword [ebp - 0xe34]
fld dword [ebp - 0xe48]
fadd dword [ebp - 0xe30]
fstp dword [ebp - 0xe48]
fld dword [ebp - 0xe34]
fsub dword [ebp - 0xe30]
fstp dword [ebp - 0xe34]
fld dword [ebp - 0xe30]
fld dword [ebp - 0xe3c]
fcompp
fnstsw ax
test ah, 5
jp 0x516c90
fld dword [ebp - 0xe3c]
fmul dword [ebp - 0xe48]
fstp dword [ebp - 0xe3c]
fld dword [ebp - 0xe48]
fsub dword [ebp - 0xe54]
fstp dword [ebp - 0xe48]
fld dword [ebp - 0xe58]
fadd dword [ebp - 0xe34]
fstp dword [ebp - 0xe58]
fld dword [ebp - 0xe54]
fadd dword [ebp - 0xe30]
fstp dword [ebp - 0xe54]
fld dword [ebp - 0xe48]
fadd dword [ebp - 0xe54]
fstp dword [ebp - 0xe48]
fld dword [ebp - 0xe54]
fadd dword [ebp - 0xe30]
fstp dword [ebp - 0xe54]
jmp 0x516d10
fld dword [ebp - 0xe30]
fmul dword [ebp - 0xe58]
fstp dword [ebp - 0xe30]
fld dword [ebp - 0xe48]
fmul dword [ebp - 0xe54]
fstp dword [ebp - 0xe48]
fld dword [ebp - 0xe48]
fadd dword [ebp - 0xe54]
fstp dword [ebp - 0xe48]
fld dword [ebp - 0xe54]
fsub dword [ebp - 0xe30]
fstp dword [ebp - 0xe54]
fld dword [ebp - 0xe54]
fmul dword [ebp - 0xe30]
fstp dword [ebp - 0xe54]
fld dword [ebp - 0xe54]
fsub dword [ebp - 0xe30]
fstp dword [ebp - 0xe54]
movzx eax, byte [ebp - 0xe4e]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp - 0xd19], al
mov dword [ebp - 0xe4c], 0xc
cmp dword [ebp - 0xe4c], 2
jle 0x51887e
mov eax, dword [ebp - 0xe4c]
and eax, 1
jne 0x51887e
and dword [ebp - 0xf10], 0
and dword [ebp - 0xf0c], 0
mov eax, dword [ebp - 0xf0c]
inc eax
mov dword [ebp - 0xf0c], eax
and dword [ebp - 0xe68], 0
mov eax, dword [ebp - 0xf10]
shl eax, 1
mov dword [ebp - 0xe68], eax
and dword [ebp - 0xf4c], 0
mov eax, dword [ebp - 0xd24]
add eax, dword [ebp - 0xe68]
movzx eax, byte [eax]
add eax, dword [ebp - 0xf4c]
mov dword [ebp - 0xf4c], eax
and dword [ebp - 0xeb8], 0
mov eax, dword [ebp - 0xeb8]
add eax, 0xd8
mov dword [ebp - 0xeb8], eax
and dword [ebp - 0xee8], 0
mov eax, dword [ebp - 0xf10]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xee8], eax
and dword [ebp - 0xf84], 0
mov eax, dword [ebp - 0xd24]
add eax, dword [ebp - 0xee8]
movzx eax, byte [eax]
add eax, dword [ebp - 0xf84]
mov dword [ebp - 0xf84], eax
and dword [ebp - 0xf48], 0
mov eax, dword [ebp - 0xf48]
add eax, 0xe4
mov dword [ebp - 0xf48], eax
and dword [ebp - 0xf80], 0
mov eax, dword [ebp - 0xf4c]
sub eax, dword [ebp - 0xeb8]
add eax, dword [ebp - 0xf80]
mov dword [ebp - 0xf80], eax
and dword [ebp - 0xe80], 0
mov eax, dword [ebp - 0xf84]
sub eax, dword [ebp - 0xf48]
add eax, dword [ebp - 0xe80]
mov dword [ebp - 0xe80], eax
and dword [ebp - 0xf7c], 0
mov eax, dword [ebp - 0xf80]
shl eax, 4
mov dword [ebp - 0xf7c], eax
and dword [ebp - 0xf44], 0
mov eax, dword [ebp - 0xe80]
mov dword [ebp - 0xf44], eax
and dword [ebp - 0xf08], 0
mov eax, dword [ebp - 0xf7c]
or eax, dword [ebp - 0xf44]
mov dword [ebp - 0xf08], eax
mov byte [ebp - 0xecd], 0
fld qword [0x99b858]
fstp qword [ebp - 0xee4]
fld qword [0x99b850]
fstp qword [ebp - 0xf2c]
fld qword [0x99b848]
fstp qword [ebp - 0xe9c]
fld qword [0x99b840]
fstp qword [ebp - 0xf64]
fld qword [ebp - 0xee4]
fadd qword [ebp - 0xf64]
fstp qword [ebp - 0xee4]
fld qword [ebp - 0xe9c]
fsub qword [ebp - 0xf64]
fstp qword [ebp - 0xe9c]
fld qword [ebp - 0xf2c]
fadd qword [ebp - 0xf64]
fstp qword [ebp - 0xf2c]
fld qword [ebp - 0xf2c]
fmul qword [ebp - 0xf64]
fstp qword [ebp - 0xf2c]
fld qword [ebp - 0xf2c]
fcomp qword [ebp - 0xe9c]
fnstsw ax
test ah, 5
jp 0x51703e
fld qword [ebp - 0xf2c]
fsub qword [ebp - 0xe9c]
fstp qword [ebp - 0xf2c]
fld qword [ebp - 0xee4]
fadd qword [ebp - 0xf2c]
fstp qword [ebp - 0xee4]
fld qword [ebp - 0xf64]
fadd qword [ebp - 0xee4]
fstp qword [ebp - 0xf64]
fld qword [ebp - 0xee4]
fmul qword [ebp - 0xf2c]
fstp qword [ebp - 0xee4]
fld qword [ebp - 0xf64]
fdiv qword [ebp - 0xf2c]
fstp qword [ebp - 0xf64]
fld qword [ebp - 0xee4]
fdiv qword [ebp - 0xe9c]
fstp qword [ebp - 0xee4]
fld qword [ebp - 0xf2c]
fmul qword [ebp - 0xf64]
fstp qword [ebp - 0xf2c]
fld qword [ebp - 0xf2c]
fdiv qword [ebp - 0xf64]
fstp qword [ebp - 0xf2c]
fld qword [ebp - 0xee4]
fcomp qword [ebp - 0xe9c]
fnstsw ax
test ah, 0x41
jne 0x516ff4
fld qword [ebp - 0xf2c]
fsub qword [ebp - 0xe9c]
fstp qword [ebp - 0xf2c]
fld qword [ebp - 0xf64]
fadd qword [ebp - 0xee4]
fstp qword [ebp - 0xf64]
fld qword [ebp - 0xe9c]
fsub qword [ebp - 0xf64]
fstp qword [ebp - 0xe9c]
fld qword [ebp - 0xf64]
fadd qword [ebp - 0xee4]
fstp qword [ebp - 0xf64]
jmp 0x51703c
fld qword [ebp - 0xf64]
fdiv qword [ebp - 0xf2c]
fstp qword [ebp - 0xf64]
fld qword [ebp - 0xe9c]
fsub qword [ebp - 0xee4]
fstp qword [ebp - 0xe9c]
fld qword [ebp - 0xe9c]
fdiv qword [ebp - 0xee4]
fstp qword [ebp - 0xe9c]
fld qword [ebp - 0xe9c]
fadd qword [ebp - 0xee4]
fstp qword [ebp - 0xe9c]
jmp 0x517092
fld qword [ebp - 0xf64]
fadd qword [ebp - 0xf2c]
fstp qword [ebp - 0xf64]
fld qword [ebp - 0xf2c]
fsub qword [ebp - 0xf64]
fstp qword [ebp - 0xf2c]
fld qword [ebp - 0xe9c]
fmul qword [ebp - 0xee4]
fstp qword [ebp - 0xe9c]
fld qword [ebp - 0xf64]
fadd qword [ebp - 0xf2c]
fstp qword [ebp - 0xf64]
mov al, byte [ebp - 0xf08]
mov byte [ebp - 0xecd], al
mov byte [ebp - 0xf75], 0
movzx eax, byte [ebp - 0xd19]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp - 0xf75], al
movzx eax, byte [ebp - 0xe4f]
movzx eax, byte [ebp + eax - 0xe2c]
movzx ecx, byte [ebp - 0xd29]
add ecx, eax
mov byte [ebp - 0xd29], cl
mov al, byte [ebp - 0xe4f]
add al, 1
mov byte [ebp - 0xe4f], al
movzx eax, byte [ebp - 0xd29]
movzx ecx, byte [ebp - 0xd19]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe41]
movzx ecx, byte [ebp - 0xd29]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe4f]
movzx ecx, byte [ebp - 0xe41]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe4f]
mov cl, byte [ebp - 0xf75]
mov byte [ebp + eax - 0xe2c], cl
movzx eax, byte [ebp - 0xf75]
movzx eax, byte [ebp + eax - 0xe2c]
movzx ecx, byte [ebp - 0xe35]
add ecx, eax
mov byte [ebp - 0xe35], cl
movzx eax, byte [ebp - 0xecd]
movzx ecx, byte [ebp - 0xd29]
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx edx, byte [ebp - 0xe4f]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xe2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xe41]
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx edx, byte [ebp - 0xd19]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
movzx edx, byte [ebp - 0xe35]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx ecx, byte [ebp + ecx - 0xe2c]
xor eax, ecx
mov byte [ebp - 0xe41], al
mov al, byte [ebp - 0xecd]
mov byte [ebp - 0xd19], al
mov al, byte [ebp - 0xe41]
mov byte [ebp - 0xf3d], al
cmp dword [ebp - 0xf10], 0
jle 0x51721c
movsx ax, byte [ebp - 0xf3d]
mov ecx, dword [ebp - 0xf10]
mov word [ebp + ecx*2 - 0x41e], ax
mov eax, dword [ebp - 0xf10]
inc eax
mov dword [ebp - 0xf10], eax
mov eax, dword [ebp - 0xf0c]
inc eax
mov dword [ebp - 0xf0c], eax
mov eax, dword [ebp - 0xf10]
shl eax, 1
mov dword [ebp - 0xe68], eax
mov eax, dword [ebp - 0xd24]
add eax, dword [ebp - 0xe68]
movzx eax, byte [eax]
mov dword [ebp - 0xf4c], eax
mov dword [ebp - 0xeb8], 0xd8
mov eax, dword [ebp - 0xf10]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xee8], eax
mov eax, dword [ebp - 0xd24]
add eax, dword [ebp - 0xee8]
movzx eax, byte [eax]
mov dword [ebp - 0xf84], eax
mov dword [ebp - 0xf48], 0xe4
mov eax, dword [ebp - 0xf4c]
sub eax, dword [ebp - 0xeb8]
mov dword [ebp - 0xf80], eax
mov eax, dword [ebp - 0xf84]
sub eax, dword [ebp - 0xf48]
mov dword [ebp - 0xe80], eax
mov eax, dword [ebp - 0xf80]
shl eax, 4
mov dword [ebp - 0xf7c], eax
fld qword [0x99b838]
fstp qword [ebp - 0xf04]
fld qword [0x99b830]
fstp qword [ebp - 0xecc]
fld qword [0x99b828]
fstp qword [ebp - 0xe94]
fld qword [0x99b820]
fstp qword [ebp - 0xf5c]
fld qword [0x99b818]
fstp qword [ebp - 0xefc]
fld qword [ebp - 0xf5c]
fmul qword [ebp - 0xefc]
fstp qword [ebp - 0xf5c]
fld qword [ebp - 0xf04]
fmul qword [ebp - 0xefc]
fstp qword [ebp - 0xf04]
fld qword [ebp - 0xecc]
fsub qword [ebp - 0xefc]
fstp qword [ebp - 0xecc]
fld qword [ebp - 0xf04]
fmul qword [ebp - 0xefc]
fstp qword [ebp - 0xf04]
fld qword [ebp - 0xf04]
fsub qword [ebp - 0xefc]
fstp qword [ebp - 0xf04]
fld qword [ebp - 0xf04]
fcomp qword [ebp - 0xefc]
fnstsw ax
test ah, 5
jp 0x5174f1
fld qword [ebp - 0xecc]
fadd qword [ebp - 0xf5c]
fstp qword [ebp - 0xecc]
fld qword [ebp - 0xecc]
fadd qword [ebp - 0xf5c]
fstp qword [ebp - 0xecc]
fld qword [ebp - 0xecc]
fadd qword [ebp - 0xf5c]
fstp qword [ebp - 0xecc]
fld qword [ebp - 0xf5c]
fmul qword [ebp - 0xf04]
fstp qword [ebp - 0xf5c]
fld qword [ebp - 0xe94]
fdiv qword [ebp - 0xefc]
fstp qword [ebp - 0xe94]
fld qword [ebp - 0xf5c]
fdiv qword [ebp - 0xefc]
fstp qword [ebp - 0xf5c]
fld qword [ebp - 0xefc]
fdiv qword [ebp - 0xf04]
fstp qword [ebp - 0xefc]
fld qword [ebp - 0xf04]
fdiv qword [ebp - 0xecc]
fstp qword [ebp - 0xf04]
fld qword [ebp - 0xecc]
fdiv qword [ebp - 0xe94]
fstp qword [ebp - 0xecc]
fld qword [ebp - 0xecc]
fadd qword [ebp - 0xe94]
fstp qword [ebp - 0xecc]
fld qword [ebp - 0xecc]
fcomp qword [ebp - 0xefc]
fnstsw ax
test ah, 5
jp 0x517495
fld qword [ebp - 0xf04]
fadd qword [ebp - 0xe94]
fstp qword [ebp - 0xf04]
fld qword [ebp - 0xf5c]
fmul qword [ebp - 0xf04]
fstp qword [ebp - 0xf5c]
fld qword [ebp - 0xecc]
fadd qword [ebp - 0xf5c]
fstp qword [ebp - 0xecc]
fld qword [ebp - 0xe94]
fdiv qword [ebp - 0xefc]
fstp qword [ebp - 0xe94]
fld qword [ebp - 0xf04]
fadd qword [ebp - 0xe94]
fstp qword [ebp - 0xf04]
jmp 0x5174ef
fld qword [ebp - 0xf5c]
fadd qword [ebp - 0xf04]
fstp qword [ebp - 0xf5c]
fld qword [ebp - 0xefc]
fadd qword [ebp - 0xecc]
fstp qword [ebp - 0xefc]
fld qword [ebp - 0xf04]
fadd qword [ebp - 0xe94]
fstp qword [ebp - 0xf04]
fld qword [ebp - 0xf5c]
fmul qword [ebp - 0xf04]
fstp qword [ebp - 0xf5c]
fld qword [ebp - 0xefc]
fsub qword [ebp - 0xecc]
fstp qword [ebp - 0xefc]
jmp 0x517557
fld qword [ebp - 0xe94]
fmul qword [ebp - 0xf5c]
fstp qword [ebp - 0xe94]
fld qword [ebp - 0xecc]
fsub qword [ebp - 0xe94]
fstp qword [ebp - 0xecc]
fld qword [ebp - 0xf04]
fadd qword [ebp - 0xecc]
fstp qword [ebp - 0xf04]
fld qword [ebp - 0xf5c]
fmul qword [ebp - 0xefc]
fstp qword [ebp - 0xf5c]
fld qword [ebp - 0xefc]
fadd qword [ebp - 0xf04]
fstp qword [ebp - 0xefc]
mov eax, dword [ebp - 0xe80]
mov dword [ebp - 0xf44], eax
mov eax, dword [ebp - 0xf7c]
or eax, dword [ebp - 0xf44]
mov dword [ebp - 0xf08], eax
mov al, byte [ebp - 0xf08]
mov byte [ebp - 0xecd], al
movzx eax, byte [ebp - 0xd19]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp - 0xf75], al
movzx eax, byte [ebp - 0xe4f]
movzx eax, byte [ebp + eax - 0xe2c]
movzx ecx, byte [ebp - 0xd29]
add ecx, eax
mov byte [ebp - 0xd29], cl
mov al, byte [ebp - 0xe4f]
add al, 1
mov byte [ebp - 0xe4f], al
movzx eax, byte [ebp - 0xd29]
movzx ecx, byte [ebp - 0xd19]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe41]
movzx ecx, byte [ebp - 0xd29]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe4f]
movzx ecx, byte [ebp - 0xe41]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe4f]
mov cl, byte [ebp - 0xf75]
mov byte [ebp + eax - 0xe2c], cl
movzx eax, byte [ebp - 0xf75]
movzx eax, byte [ebp + eax - 0xe2c]
movzx ecx, byte [ebp - 0xe35]
add ecx, eax
mov byte [ebp - 0xe35], cl
movzx eax, byte [ebp - 0xecd]
movzx ecx, byte [ebp - 0xd29]
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx edx, byte [ebp - 0xe4f]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xe2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xe41]
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx edx, byte [ebp - 0xd19]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
movzx edx, byte [ebp - 0xe35]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx ecx, byte [ebp + ecx - 0xe2c]
xor eax, ecx
mov byte [ebp - 0xe41], al
mov al, byte [ebp - 0xecd]
mov byte [ebp - 0xd19], al
mov al, byte [ebp - 0xe41]
mov byte [ebp - 0xf3d], al
cmp dword [ebp - 0xf10], 0
jle 0x5176f8
movsx ax, byte [ebp - 0xf3d]
mov ecx, dword [ebp - 0xf10]
mov word [ebp + ecx*2 - 0x41e], ax
mov eax, dword [ebp - 0xf10]
inc eax
mov dword [ebp - 0xf10], eax
mov eax, dword [ebp - 0xf0c]
inc eax
mov dword [ebp - 0xf0c], eax
mov eax, dword [ebp - 0xf10]
shl eax, 1
mov dword [ebp - 0xe68], eax
mov eax, dword [ebp - 0xd24]
add eax, dword [ebp - 0xe68]
movzx eax, byte [eax]
mov dword [ebp - 0xf4c], eax
mov dword [ebp - 0xeb8], 0xd8
mov eax, dword [ebp - 0xf10]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xee8], eax
mov eax, dword [ebp - 0xd24]
add eax, dword [ebp - 0xee8]
movzx eax, byte [eax]
mov dword [ebp - 0xf84], eax
mov dword [ebp - 0xf48], 0xe4
mov eax, dword [ebp - 0xf4c]
sub eax, dword [ebp - 0xeb8]
mov dword [ebp - 0xf80], eax
mov eax, dword [ebp - 0xf84]
sub eax, dword [ebp - 0xf48]
mov dword [ebp - 0xe80], eax
mov eax, dword [ebp - 0xf80]
shl eax, 4
mov dword [ebp - 0xf7c], eax
mov eax, dword [ebp - 0xe80]
mov dword [ebp - 0xf44], eax
mov eax, dword [ebp - 0xf7c]
or eax, dword [ebp - 0xf44]
mov dword [ebp - 0xf08], eax
mov al, byte [ebp - 0xf08]
mov byte [ebp - 0xecd], al
movzx eax, byte [ebp - 0xd19]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp - 0xf75], al
movzx eax, byte [ebp - 0xe4f]
movzx eax, byte [ebp + eax - 0xe2c]
movzx ecx, byte [ebp - 0xd29]
add ecx, eax
mov byte [ebp - 0xd29], cl
mov al, byte [ebp - 0xe4f]
add al, 1
mov byte [ebp - 0xe4f], al
movzx eax, byte [ebp - 0xd29]
movzx ecx, byte [ebp - 0xd19]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe41]
movzx ecx, byte [ebp - 0xd29]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe4f]
movzx ecx, byte [ebp - 0xe41]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe4f]
mov cl, byte [ebp - 0xf75]
mov byte [ebp + eax - 0xe2c], cl
movzx eax, byte [ebp - 0xf75]
movzx eax, byte [ebp + eax - 0xe2c]
movzx ecx, byte [ebp - 0xe35]
add ecx, eax
mov byte [ebp - 0xe35], cl
movzx eax, byte [ebp - 0xecd]
movzx ecx, byte [ebp - 0xd29]
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx edx, byte [ebp - 0xe4f]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xe2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xe41]
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx edx, byte [ebp - 0xd19]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
movzx edx, byte [ebp - 0xe35]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx ecx, byte [ebp + ecx - 0xe2c]
xor eax, ecx
mov byte [ebp - 0xe41], al
mov al, byte [ebp - 0xecd]
mov byte [ebp - 0xd19], al
mov al, byte [ebp - 0xe41]
mov byte [ebp - 0xf3d], al
cmp dword [ebp - 0xf10], 0
jle 0x51794e
movsx ax, byte [ebp - 0xf3d]
mov ecx, dword [ebp - 0xf10]
mov word [ebp + ecx*2 - 0x41e], ax
mov eax, dword [ebp - 0xf10]
inc eax
mov dword [ebp - 0xf10], eax
mov eax, dword [ebp - 0xf0c]
inc eax
mov dword [ebp - 0xf0c], eax
mov eax, dword [ebp - 0xf10]
shl eax, 1
mov dword [ebp - 0xe68], eax
mov eax, dword [ebp - 0xd24]
add eax, dword [ebp - 0xe68]
movzx eax, byte [eax]
mov dword [ebp - 0xf4c], eax
mov dword [ebp - 0xeb8], 0xd8
fld qword [0x99b810]
fstp qword [ebp - 0xec4]
fld qword [0x99b808]
fstp qword [ebp - 0xe8c]
fld qword [0x99b800]
fstp qword [ebp - 0xf54]
fld qword [0x99b7f8]
fstp qword [ebp - 0xeb4]
fld qword [0x99b7f0]
fstp qword [ebp - 0xe7c]
fld qword [0x99b7e8]
fstp qword [ebp - 0xf3c]
fld qword [ebp - 0xec4]
fsub qword [ebp - 0xf3c]
fstp qword [ebp - 0xec4]
fld qword [ebp - 0xeb4]
fmul qword [ebp - 0xf3c]
fstp qword [ebp - 0xeb4]
fld qword [ebp - 0xf54]
fmul qword [ebp - 0xf3c]
fstp qword [ebp - 0xf54]
fld qword [ebp - 0xec4]
fmul qword [ebp - 0xf3c]
fstp qword [ebp - 0xec4]
fld qword [ebp - 0xec4]
fmul qword [ebp - 0xf3c]
fstp qword [ebp - 0xec4]
fld qword [ebp - 0xf54]
fmul qword [ebp - 0xf3c]
fstp qword [ebp - 0xf54]
fld qword [ebp - 0xec4]
fcomp qword [ebp - 0xf3c]
fnstsw ax
test ah, 0x41
jne 0x517ada
fld qword [ebp - 0xe8c]
fsub qword [ebp - 0xeb4]
fstp qword [ebp - 0xe8c]
fld qword [ebp - 0xe7c]
fadd qword [ebp - 0xec4]
fstp qword [ebp - 0xe7c]
fld qword [ebp - 0xec4]
fadd qword [ebp - 0xf54]
fstp qword [ebp - 0xec4]
fld qword [ebp - 0xe8c]
fadd qword [ebp - 0xeb4]
fstp qword [ebp - 0xe8c]
fld qword [ebp - 0xeb4]
fmul qword [ebp - 0xf3c]
fstp qword [ebp - 0xeb4]
fld qword [ebp - 0xf54]
fadd qword [ebp - 0xe7c]
fstp qword [ebp - 0xf54]
mov eax, dword [ebp - 0xf10]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xee8], eax
jmp 0x517b46
fld qword [ebp - 0xe8c]
fdiv qword [ebp - 0xf54]
fstp qword [ebp - 0xe8c]
fld qword [ebp - 0xe8c]
fsub qword [ebp - 0xf54]
fstp qword [ebp - 0xe8c]
fld qword [ebp - 0xec4]
fmul qword [ebp - 0xe8c]
fstp qword [ebp - 0xec4]
fld qword [ebp - 0xeb4]
fmul qword [ebp - 0xe7c]
fstp qword [ebp - 0xeb4]
fld qword [ebp - 0xe7c]
fsub qword [ebp - 0xf3c]
fstp qword [ebp - 0xe7c]
fld qword [ebp - 0xf3c]
fdiv qword [ebp - 0xec4]
fstp qword [ebp - 0xf3c]
mov eax, dword [ebp - 0xd24]
add eax, dword [ebp - 0xee8]
movzx eax, byte [eax]
mov dword [ebp - 0xf84], eax
mov dword [ebp - 0xf48], 0xe4
mov eax, dword [ebp - 0xf4c]
sub eax, dword [ebp - 0xeb8]
mov dword [ebp - 0xf80], eax
mov eax, dword [ebp - 0xf84]
sub eax, dword [ebp - 0xf48]
mov dword [ebp - 0xe80], eax
mov eax, dword [ebp - 0xf80]
shl eax, 4
mov dword [ebp - 0xf7c], eax
mov eax, dword [ebp - 0xe80]
mov dword [ebp - 0xf44], eax
mov eax, dword [ebp - 0xf7c]
or eax, dword [ebp - 0xf44]
mov dword [ebp - 0xf08], eax
mov al, byte [ebp - 0xf08]
mov byte [ebp - 0xecd], al
movzx eax, byte [ebp - 0xd19]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp - 0xf75], al
movzx eax, byte [ebp - 0xe4f]
movzx eax, byte [ebp + eax - 0xe2c]
movzx ecx, byte [ebp - 0xd29]
add ecx, eax
mov byte [ebp - 0xd29], cl
mov al, byte [ebp - 0xe4f]
add al, 1
mov byte [ebp - 0xe4f], al
movzx eax, byte [ebp - 0xd29]
movzx ecx, byte [ebp - 0xd19]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe41]
movzx ecx, byte [ebp - 0xd29]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe4f]
movzx ecx, byte [ebp - 0xe41]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe4f]
mov cl, byte [ebp - 0xf75]
mov byte [ebp + eax - 0xe2c], cl
movzx eax, byte [ebp - 0xf75]
movzx eax, byte [ebp + eax - 0xe2c]
movzx ecx, byte [ebp - 0xe35]
add ecx, eax
mov byte [ebp - 0xe35], cl
movzx eax, byte [ebp - 0xecd]
movzx ecx, byte [ebp - 0xd29]
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx edx, byte [ebp - 0xe4f]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xe2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xe41]
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx edx, byte [ebp - 0xd19]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
movzx edx, byte [ebp - 0xe35]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx ecx, byte [ebp + ecx - 0xe2c]
xor eax, ecx
mov byte [ebp - 0xe41], al
mov al, byte [ebp - 0xecd]
mov byte [ebp - 0xd19], al
mov al, byte [ebp - 0xe41]
mov byte [ebp - 0xf3d], al
cmp dword [ebp - 0xf10], 0
jle 0x517d45
movsx ax, byte [ebp - 0xf3d]
mov ecx, dword [ebp - 0xf10]
mov word [ebp + ecx*2 - 0x41e], ax
fld dword [0x99b7e0]
fstp dword [ebp - 0xef0]
fld dword [0x99b7dc]
fstp dword [ebp - 0xeac]
fld dword [0x99b7d8]
fstp dword [ebp - 0xe70]
fld dword [0x99b7d4]
fstp dword [ebp - 0xf30]
fld dword [0x99b7d0]
fstp dword [ebp - 0xeec]
fld dword [0x99b7cc]
fstp dword [ebp - 0xea8]
fld dword [0x99b7c8]
fstp dword [ebp - 0xe6c]
fld dword [ebp - 0xeec]
fsub dword [ebp - 0xe6c]
fstp dword [ebp - 0xeec]
fld dword [ebp - 0xea8]
fmul dword [ebp - 0xe6c]
fstp dword [ebp - 0xea8]
fld dword [ebp - 0xeac]
fmul dword [ebp - 0xe6c]
fstp dword [ebp - 0xeac]
fld dword [ebp - 0xef0]
fsub dword [ebp - 0xe6c]
fstp dword [ebp - 0xef0]
fld dword [ebp - 0xeec]
fmul dword [ebp - 0xe6c]
fstp dword [ebp - 0xeec]
fld dword [ebp - 0xf30]
fmul dword [ebp - 0xe6c]
fstp dword [ebp - 0xf30]
fld dword [ebp - 0xe70]
fmul dword [ebp - 0xe6c]
fstp dword [ebp - 0xe70]
fld dword [ebp - 0xe6c]
fld dword [ebp - 0xeac]
fcompp
fnstsw ax
test ah, 0x41
jne 0x517ec0
fld dword [ebp - 0xea8]
fsub dword [ebp - 0xef0]
fstp dword [ebp - 0xea8]
fld dword [ebp - 0xeac]
fadd dword [ebp - 0xf30]
fstp dword [ebp - 0xeac]
fld dword [ebp - 0xeac]
fmul dword [ebp - 0xf30]
fstp dword [ebp - 0xeac]
fld dword [ebp - 0xe70]
fadd dword [ebp - 0xeec]
fstp dword [ebp - 0xe70]
fld dword [ebp - 0xea8]
fmul dword [ebp - 0xef0]
fstp dword [ebp - 0xea8]
fld dword [ebp - 0xef0]
fsub dword [ebp - 0xe70]
fstp dword [ebp - 0xef0]
fld dword [ebp - 0xf30]
fmul dword [ebp - 0xea8]
fstp dword [ebp - 0xf30]
mov eax, dword [ebp - 0xf10]
inc eax
mov dword [ebp - 0xf10], eax
jmp 0x5180d3
fld dword [ebp - 0xeec]
fsub dword [ebp - 0xea8]
fstp dword [ebp - 0xeec]
fld dword [ebp - 0xea8]
fadd dword [ebp - 0xe6c]
fstp dword [ebp - 0xea8]
fld dword [ebp - 0xe70]
fdiv dword [ebp - 0xf30]
fstp dword [ebp - 0xe70]
fld dword [ebp - 0xef0]
fadd dword [ebp - 0xeac]
fstp dword [ebp - 0xef0]
fld dword [ebp - 0xeec]
fmul dword [ebp - 0xea8]
fstp dword [ebp - 0xeec]
fld dword [ebp - 0xe6c]
fsub dword [ebp - 0xef0]
fstp dword [ebp - 0xe6c]
fld dword [ebp - 0xe6c]
fdiv dword [ebp - 0xef0]
fstp dword [ebp - 0xe6c]
fld dword [ebp - 0xe6c]
fsub dword [ebp - 0xef0]
fstp dword [ebp - 0xe6c]
fld dword [ebp - 0xef0]
fadd dword [ebp - 0xeac]
fstp dword [ebp - 0xef0]
fld dword [ebp - 0xe6c]
fdiv dword [ebp - 0xef0]
fstp dword [ebp - 0xe6c]
fld dword [ebp - 0xef0]
fadd dword [ebp - 0xeac]
fstp dword [ebp - 0xef0]
fld dword [ebp - 0xeec]
fadd dword [ebp - 0xea8]
fstp dword [ebp - 0xeec]
fld dword [ebp - 0xe70]
fsub dword [ebp - 0xf30]
fstp dword [ebp - 0xe70]
fld dword [ebp - 0xeec]
fsub dword [ebp - 0xea8]
fstp dword [ebp - 0xeec]
fld dword [ebp - 0xef0]
fld dword [ebp - 0xe70]
fcompp
fnstsw ax
test ah, 5
jp 0x518055
fld dword [ebp - 0xea8]
fdiv dword [ebp - 0xe6c]
fstp dword [ebp - 0xea8]
fld dword [ebp - 0xe70]
fdiv dword [ebp - 0xf30]
fstp dword [ebp - 0xe70]
fld dword [ebp - 0xe6c]
fmul dword [ebp - 0xef0]
fstp dword [ebp - 0xe6c]
fld dword [ebp - 0xf30]
fsub dword [ebp - 0xeec]
fstp dword [ebp - 0xf30]
fld dword [ebp - 0xeec]
fdiv dword [ebp - 0xea8]
fstp dword [ebp - 0xeec]
fld dword [ebp - 0xea8]
fsub dword [ebp - 0xe6c]
fstp dword [ebp - 0xea8]
fld dword [ebp - 0xf30]
fmul dword [ebp - 0xeec]
fstp dword [ebp - 0xf30]
jmp 0x5180d3
fld dword [ebp - 0xeec]
fdiv dword [ebp - 0xea8]
fstp dword [ebp - 0xeec]
fld dword [ebp - 0xea8]
fdiv dword [ebp - 0xe6c]
fstp dword [ebp - 0xea8]
fld dword [ebp - 0xf30]
fmul dword [ebp - 0xeec]
fstp dword [ebp - 0xf30]
fld dword [ebp - 0xe70]
fdiv dword [ebp - 0xf30]
fstp dword [ebp - 0xe70]
fld dword [ebp - 0xe70]
fdiv dword [ebp - 0xf30]
fstp dword [ebp - 0xe70]
fld dword [ebp - 0xef0]
fsub dword [ebp - 0xeac]
fstp dword [ebp - 0xef0]
fld dword [ebp - 0xeec]
fsub dword [ebp - 0xea8]
fstp dword [ebp - 0xeec]
mov eax, dword [ebp - 0xf0c]
inc eax
mov dword [ebp - 0xf0c], eax
mov eax, dword [ebp - 0xf10]
shl eax, 1
mov dword [ebp - 0xe68], eax
mov eax, dword [ebp - 0xd24]
add eax, dword [ebp - 0xe68]
movzx eax, byte [eax]
mov dword [ebp - 0xf4c], eax
mov dword [ebp - 0xeb8], 0xd8
mov eax, dword [ebp - 0xf10]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xee8], eax
fld qword [0x99b7c0]
fstp qword [ebp - 0xf74]
fld qword [0x99b7b8]
fstp qword [ebp - 0xf24]
fld qword [0x99b7b0]
fstp qword [ebp - 0xedc]
fld qword [0x99b7a8]
fstp qword [ebp - 0xea4]
fld qword [0x99b7a0]
fstp qword [ebp - 0xf6c]
fld qword [0x99b798]
fstp qword [ebp - 0xf1c]
fld qword [ebp - 0xea4]
fmul qword [ebp - 0xf1c]
fstp qword [ebp - 0xea4]
fld qword [ebp - 0xea4]
fmul qword [ebp - 0xf1c]
fstp qword [ebp - 0xea4]
fld qword [ebp - 0xea4]
fsub qword [ebp - 0xf1c]
fstp qword [ebp - 0xea4]
fld qword [ebp - 0xf74]
fsub qword [ebp - 0xf1c]
fstp qword [ebp - 0xf74]
fld qword [ebp - 0xf24]
fsub qword [ebp - 0xf1c]
fstp qword [ebp - 0xf24]
fld qword [ebp - 0xea4]
fadd qword [ebp - 0xf1c]
fstp qword [ebp - 0xea4]
fld qword [ebp - 0xea4]
fcomp qword [ebp - 0xf1c]
fnstsw ax
test ah, 0x41
jne 0x51826e
fld qword [ebp - 0xedc]
fmul qword [ebp - 0xf6c]
fstp qword [ebp - 0xedc]
fld qword [ebp - 0xf24]
fsub qword [ebp - 0xea4]
fstp qword [ebp - 0xf24]
fld qword [ebp - 0xf6c]
fmul qword [ebp - 0xf74]
fstp qword [ebp - 0xf6c]
fld qword [ebp - 0xf24]
fmul qword [ebp - 0xea4]
fstp qword [ebp - 0xf24]
fld qword [ebp - 0xea4]
fsub qword [ebp - 0xf1c]
fstp qword [ebp - 0xea4]
fld qword [ebp - 0xedc]
fsub qword [ebp - 0xf6c]
fstp qword [ebp - 0xedc]
mov eax, dword [ebp - 0xd24]
add eax, dword [ebp - 0xee8]
movzx eax, byte [eax]
mov dword [ebp - 0xf84], eax
jmp 0x518433
fld qword [ebp - 0xedc]
fmul qword [ebp - 0xf6c]
fstp qword [ebp - 0xedc]
fld qword [ebp - 0xea4]
fdiv qword [ebp - 0xf1c]
fstp qword [ebp - 0xea4]
fld qword [ebp - 0xedc]
fadd qword [ebp - 0xf6c]
fstp qword [ebp - 0xedc]
fld qword [ebp - 0xea4]
fsub qword [ebp - 0xf1c]
fstp qword [ebp - 0xea4]
fld qword [ebp - 0xf1c]
fmul qword [ebp - 0xf24]
fstp qword [ebp - 0xf1c]
fld qword [ebp - 0xf24]
fmul qword [ebp - 0xea4]
fstp qword [ebp - 0xf24]
fld qword [ebp - 0xedc]
fmul qword [ebp - 0xf6c]
fstp qword [ebp - 0xedc]
fld qword [ebp - 0xf24]
fdiv qword [ebp - 0xea4]
fstp qword [ebp - 0xf24]
fld qword [ebp - 0xf1c]
fadd qword [ebp - 0xf24]
fstp qword [ebp - 0xf1c]
fld qword [ebp - 0xea4]
fdiv qword [ebp - 0xf1c]
fstp qword [ebp - 0xea4]
fld qword [ebp - 0xf74]
fmul qword [ebp - 0xedc]
fstp qword [ebp - 0xf74]
fld qword [ebp - 0xf24]
fmul qword [ebp - 0xea4]
fstp qword [ebp - 0xf24]
fld qword [ebp - 0xf74]
fcomp qword [ebp - 0xf6c]
fnstsw ax
test ah, 0x41
jne 0x5183c7
fld qword [ebp - 0xedc]
fadd qword [ebp - 0xf6c]
fstp qword [ebp - 0xedc]
fld qword [ebp - 0xf1c]
fmul qword [ebp - 0xf24]
fstp qword [ebp - 0xf1c]
fld qword [ebp - 0xf1c]
fmul qword [ebp - 0xf24]
fstp qword [ebp - 0xf1c]
fld qword [ebp - 0xedc]
fsub qword [ebp - 0xf6c]
fstp qword [ebp - 0xedc]
fld qword [ebp - 0xedc]
fsub qword [ebp - 0xf6c]
fstp qword [ebp - 0xedc]
fld qword [ebp - 0xf74]
fdiv qword [ebp - 0xedc]
fstp qword [ebp - 0xf74]
jmp 0x518433
fld qword [ebp - 0xea4]
fdiv qword [ebp - 0xf1c]
fstp qword [ebp - 0xea4]
fld qword [ebp - 0xedc]
fsub qword [ebp - 0xf6c]
fstp qword [ebp - 0xedc]
fld qword [ebp - 0xf6c]
fsub qword [ebp - 0xf74]
fstp qword [ebp - 0xf6c]
fld qword [ebp - 0xf24]
fadd qword [ebp - 0xea4]
fstp qword [ebp - 0xf24]
fld qword [ebp - 0xf6c]
fadd qword [ebp - 0xf74]
fstp qword [ebp - 0xf6c]
fld qword [ebp - 0xea4]
fadd qword [ebp - 0xf1c]
fstp qword [ebp - 0xea4]
mov dword [ebp - 0xf48], 0xe4
mov eax, dword [ebp - 0xf4c]
sub eax, dword [ebp - 0xeb8]
mov dword [ebp - 0xf80], eax
mov eax, dword [ebp - 0xf84]
sub eax, dword [ebp - 0xf48]
mov dword [ebp - 0xe80], eax
mov eax, dword [ebp - 0xf80]
shl eax, 4
mov dword [ebp - 0xf7c], eax
mov eax, dword [ebp - 0xe80]
mov dword [ebp - 0xf44], eax
mov eax, dword [ebp - 0xf7c]
or eax, dword [ebp - 0xf44]
mov dword [ebp - 0xf08], eax
mov al, byte [ebp - 0xf08]
mov byte [ebp - 0xecd], al
movzx eax, byte [ebp - 0xd19]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp - 0xf75], al
movzx eax, byte [ebp - 0xe4f]
movzx eax, byte [ebp + eax - 0xe2c]
movzx ecx, byte [ebp - 0xd29]
add ecx, eax
mov byte [ebp - 0xd29], cl
mov al, byte [ebp - 0xe4f]
add al, 1
mov byte [ebp - 0xe4f], al
movzx eax, byte [ebp - 0xd29]
movzx ecx, byte [ebp - 0xd19]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe41]
movzx ecx, byte [ebp - 0xd29]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe4f]
movzx ecx, byte [ebp - 0xe41]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe4f]
mov cl, byte [ebp - 0xf75]
mov byte [ebp + eax - 0xe2c], cl
movzx eax, byte [ebp - 0xf75]
movzx eax, byte [ebp + eax - 0xe2c]
movzx ecx, byte [ebp - 0xe35]
add ecx, eax
mov byte [ebp - 0xe35], cl
movzx eax, byte [ebp - 0xecd]
movzx ecx, byte [ebp - 0xd29]
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx edx, byte [ebp - 0xe4f]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xe2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xe41]
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx edx, byte [ebp - 0xd19]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
movzx edx, byte [ebp - 0xe35]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx ecx, byte [ebp + ecx - 0xe2c]
xor eax, ecx
mov byte [ebp - 0xe41], al
mov al, byte [ebp - 0xecd]
mov byte [ebp - 0xd19], al
mov al, byte [ebp - 0xe41]
mov byte [ebp - 0xf3d], al
cmp dword [ebp - 0xf10], 0
jle 0x51861d
movsx ax, byte [ebp - 0xf3d]
mov ecx, dword [ebp - 0xf10]
mov word [ebp + ecx*2 - 0x41e], ax
mov eax, dword [ebp - 0xf10]
inc eax
mov dword [ebp - 0xf10], eax
mov eax, dword [ebp - 0xf0c]
inc eax
mov dword [ebp - 0xf0c], eax
mov eax, dword [ebp - 0xf10]
shl eax, 1
mov dword [ebp - 0xe68], eax
mov eax, dword [ebp - 0xd24]
add eax, dword [ebp - 0xe68]
movzx eax, byte [eax]
mov dword [ebp - 0xf4c], eax
mov dword [ebp - 0xeb8], 0xd8
mov eax, dword [ebp - 0xf10]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xee8], eax
mov eax, dword [ebp - 0xd24]
add eax, dword [ebp - 0xee8]
movzx eax, byte [eax]
mov dword [ebp - 0xf84], eax
mov dword [ebp - 0xf48], 0xe4
mov eax, dword [ebp - 0xf4c]
sub eax, dword [ebp - 0xeb8]
mov dword [ebp - 0xf80], eax
mov eax, dword [ebp - 0xf84]
sub eax, dword [ebp - 0xf48]
mov dword [ebp - 0xe80], eax
mov eax, dword [ebp - 0xf80]
shl eax, 4
mov dword [ebp - 0xf7c], eax
mov eax, dword [ebp - 0xe80]
mov dword [ebp - 0xf44], eax
mov eax, dword [ebp - 0xf7c]
or eax, dword [ebp - 0xf44]
mov dword [ebp - 0xf08], eax
mov al, byte [ebp - 0xf08]
mov byte [ebp - 0xecd], al
movzx eax, byte [ebp - 0xd19]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp - 0xf75], al
movzx eax, byte [ebp - 0xe4f]
movzx eax, byte [ebp + eax - 0xe2c]
movzx ecx, byte [ebp - 0xd29]
add ecx, eax
mov byte [ebp - 0xd29], cl
mov al, byte [ebp - 0xe4f]
add al, 1
mov byte [ebp - 0xe4f], al
movzx eax, byte [ebp - 0xd29]
movzx ecx, byte [ebp - 0xd19]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe41]
movzx ecx, byte [ebp - 0xd29]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe4f]
movzx ecx, byte [ebp - 0xe41]
mov al, byte [ebp + eax - 0xe2c]
mov byte [ebp + ecx - 0xe2c], al
movzx eax, byte [ebp - 0xe4f]
mov cl, byte [ebp - 0xf75]
mov byte [ebp + eax - 0xe2c], cl
movzx eax, byte [ebp - 0xf75]
movzx eax, byte [ebp + eax - 0xe2c]
movzx ecx, byte [ebp - 0xe35]
add ecx, eax
mov byte [ebp - 0xe35], cl
movzx eax, byte [ebp - 0xecd]
movzx ecx, byte [ebp - 0xd29]
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx edx, byte [ebp - 0xe4f]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xe2c]
xor eax, ecx
movzx ecx, byte [ebp - 0xe41]
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx edx, byte [ebp - 0xd19]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
movzx edx, byte [ebp - 0xe35]
movzx edx, byte [ebp + edx - 0xe2c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xe2c]
movzx ecx, byte [ebp + ecx - 0xe2c]
xor eax, ecx
mov byte [ebp - 0xe41], al
mov al, byte [ebp - 0xecd]
mov byte [ebp - 0xd19], al
mov al, byte [ebp - 0xe41]
mov byte [ebp - 0xf3d], al
cmp dword [ebp - 0xf10], 0
jle 0x518873
movsx ax, byte [ebp - 0xf3d]
mov ecx, dword [ebp - 0xf10]
mov word [ebp + ecx*2 - 0x41e], ax
xor eax, eax
mov word [ebp - 0x412], ax
jmp 0x5188af
and dword [ebp - 0xf88], 0
jmp 0x518894
mov eax, dword [ebp - 0xf88]
inc eax
mov dword [ebp - 0xf88], eax
cmp dword [ebp - 0xf88], 6
jge 0x5188af
xor eax, eax
mov ecx, dword [ebp - 0xf88]
mov word [ebp + ecx*2 - 0x41c], ax
jmp 0x518887
push 1
push 0
push dword [ebp + 8]
lea ecx, [ebp - 0x3f0]
call fcn.008e4c78
push eax
lea eax, [ebp - 0x65c]
push eax
lea eax, [ebp - 0x41c]
push eax
push 0
call dword [ebp - 0x3ec]
mov dword [ebp - 0x410], eax
mov dword [ebp - 0xf98], 0x208
lea eax, [ebp - 0x214]
mov dword [ebp - 0xf94], eax
cmp dword [ebp - 0xf98], 0
je 0x518922
mov eax, dword [ebp - 0xf94]
mov byte [eax], 0
mov eax, dword [ebp - 0xf94]
inc eax
mov dword [ebp - 0xf94], eax
mov eax, dword [ebp - 0xf98]
dec eax
mov dword [ebp - 0xf98], eax
jmp 0x5188f4
cmp dword [ebp - 0x410], 0x20
jle 0x51893e
mov byte [ebp - 0x245], 1
mov eax, dword [ebp + 8]
push dword [eax + 8]
call dword [0x9cea30]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3f0]
call fcn.008e7efc
mov al, byte [ebp - 0x245]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret