Function at 0x4c48b0
Capabilities:
Get file size

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x778
push esi
push edi
mov byte [ebp - 0x209], 0
xor eax, eax
mov word [ebp - 0x208], ax
push 0x206
push 0
lea ecx, [ebp - 0x206]
push ecx
call fcn.0096d0c0
add esp, 0xc
mov edx, dword [ebp + 8]
mov dword [ebp - 0x6c8], edx
lea eax, [ebp - 0x208]
mov dword [ebp - 0x6cc], eax
mov ecx, dword [ebp - 0x6cc]
mov dword [ebp - 0x6d0], ecx
mov edx, dword [ebp - 0x6c8]
mov ax, word [edx]
mov word [ebp - 0x6d2], ax
mov ecx, dword [ebp - 0x6cc]
mov dx, word [ebp - 0x6d2]
mov word [ecx], dx
mov eax, dword [ebp - 0x6c8]
add eax, 2
mov dword [ebp - 0x6c8], eax
mov ecx, dword [ebp - 0x6cc]
add ecx, 2
mov dword [ebp - 0x6cc], ecx
cmp word [ebp - 0x6d2], 0
jne 0x4c4902
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x18]
mov dword [ebp - 0x6d8], eax
mov ecx, dword [ebp - 0x6d8]
mov dword [ebp - 0x6dc], ecx
mov edx, dword [ebp - 0x6d8]
mov ax, word [edx]
mov word [ebp - 0x6de], ax
add dword [ebp - 0x6d8], 2
cmp word [ebp - 0x6de], 0
jne 0x4c4962
mov ecx, dword [ebp - 0x6d8]
sub ecx, dword [ebp - 0x6dc]
mov edx, dword [ebp - 0x6dc]
mov dword [ebp - 0x6e4], edx
mov dword [ebp - 0x6e8], ecx
lea eax, [ebp - 0x208]
add eax, 0xfffffffe
mov dword [ebp - 0x6ec], eax
mov ecx, dword [ebp - 0x6ec]
mov dx, word [ecx + 2]
mov word [ebp - 0x6ee], dx
add dword [ebp - 0x6ec], 2
cmp word [ebp - 0x6ee], 0
jne 0x4c49b0
mov edi, dword [ebp - 0x6ec]
mov esi, dword [ebp - 0x6e4]
mov eax, dword [ebp - 0x6e8]
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]
mov dword [ebp - 0x210], 0
jmp 0x4c4a0d
mov ecx, dword [ebp - 0x210]
add ecx, 1
mov dword [ebp - 0x210], ecx
cmp dword [ebp - 0x210], 0x3c
jge 0x4c9498
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x234], 0
fldz
fstp qword [ebp - 0x220]
fldz
fstp qword [ebp - 0x240]
fldz
fstp qword [ebp - 0x240]
jmp 0x4c4a5a
fld qword [ebp - 0x240]
fadd qword [0x9d8650]
fstp qword [ebp - 0x240]
fld qword [0x9db7c8]
fcomp qword [ebp - 0x240]
fnstsw ax
test ah, 0x41
jne 0x4c4ae3
fld qword [0x9db7c0]
fmul qword [ebp - 0x240]
fmul qword [ebp - 0x240]
fld qword [ebp - 0x240]
fmul qword [ebp - 0x240]
fsubp st(1)
fld qword [0x9d9f60]
fmul qword [ebp - 0x240]
fmul qword [ebp - 0x240]
fadd qword [0x9db7b8]
fdivp st(1)
fadd qword [ebp - 0x220]
fstp qword [ebp - 0x220]
fld qword [0x9db7b0]
fcomp qword [ebp - 0x220]
fnstsw ax
test ah, 5
jp 0x4c4ade
fld qword [0x9db7a8]
fmul qword [ebp - 0x240]
fsubr qword [ebp - 0x220]
fstp qword [ebp - 0x220]
jmp 0x4c4a48
fldz
fcomp qword [ebp - 0x220]
fnstsw ax
test ah, 0x41
jne 0x4c4b22
ja 0x4c4b52
push edi
inc ebp
push eax
pop edi
outsb dx, byte [esi]
aas
inc ebx
inc ebp
dec esp
pop ecx
sub dh, byte [edi + 0x4c]
pop ebp
cmp eax, 0x5bed4524
pop eax
neg dword [edx - 0x12]
pop ebp
int1
push esp
cli
push ecx
invalid
mov dword [ebp - 0x218], 0x4c4b05
mov dword [ebp - 0x234], 0x4c4af2
mov edx, dword [ebp - 0x218]
mov dword [ebp - 0x24c], edx
mov eax, dword [ebp - 0x234]
mov dword [ebp - 0x248], eax
mov byte [ebp - 0x369], 0x17
mov dword [ebp - 0x360], 0
jmp 0x4c4b70
invalid
mov ecx, dword [ebp - 0x360]
add ecx, 1
mov dword [ebp - 0x360], ecx
cmp dword [ebp - 0x360], 0x100
jae 0x4c4b91
mov edx, dword [ebp - 0x360]
mov al, byte [ebp - 0x360]
mov byte [ebp + edx - 0x358], al
jmp 0x4c4b61
mov dword [ebp - 0x250], 0
mov byte [ebp - 0x36a], 0
mov dword [ebp - 0x360], 0xff
jmp 0x4c4bbd
mov ecx, dword [ebp - 0x360]
sub ecx, 1
mov dword [ebp - 0x360], ecx
cmp dword [ebp - 0x360], 0
jbe 0x4c4ed1
mov dword [ebp - 0x370], 0
mov dword [ebp - 0x378], 1
mov edx, dword [ebp - 0x378]
cmp edx, dword [ebp - 0x360]
jae 0x4c4bfe
mov eax, dword [ebp - 0x378]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x378], ecx
jmp 0x4c4bde
mov edx, dword [ebp - 0x250]
mov dword [ebp - 0x6f4], edx
cmp dword [ebp - 0x6f4], 3
ja case.default.0x4c4c1d
mov eax, dword [ebp - 0x6f4]
jmp dword [eax*4 + 0x4c94a4]
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
fld qword [ebp - 0x220]
fnstcw word [ebp - 0x6f6]
movzx eax, word [ebp - 0x6f6]
or eax, 0xc00
mov dword [ebp - 0x6fc], eax
fldcw word [ebp - 0x6fc]
fistp qword [ebp - 0x704]
fldcw word [ebp - 0x6f6]
mov eax, dword [ebp - 0x704]
and eax, 0xff
add edx, eax
mov byte [ebp - 0x36a], dl
jmp 0x4c4daa
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
fld qword [ebp - 0x220]
fnstcw word [ebp - 0x706]
movzx eax, word [ebp - 0x706]
or eax, 0xc00
mov dword [ebp - 0x70c], eax
fldcw word [ebp - 0x70c]
fistp qword [ebp - 0x714]
fldcw word [ebp - 0x706]
mov eax, dword [ebp - 0x714]
shr eax, 8
and eax, 0xff
add edx, eax
mov byte [ebp - 0x36a], dl
jmp 0x4c4daa
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
fld qword [ebp - 0x220]
fnstcw word [ebp - 0x716]
movzx eax, word [ebp - 0x716]
or eax, 0xc00
mov dword [ebp - 0x71c], eax
fldcw word [ebp - 0x71c]
fistp qword [ebp - 0x724]
fldcw word [ebp - 0x716]
mov eax, dword [ebp - 0x724]
shr eax, 0x10
and eax, 0xff
add edx, eax
mov byte [ebp - 0x36a], dl
jmp 0x4c4daa
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
fld qword [ebp - 0x220]
fnstcw word [ebp - 0x726]
movzx eax, word [ebp - 0x726]
or eax, 0xc00
mov dword [ebp - 0x72c], eax
fldcw word [ebp - 0x72c]
fistp qword [ebp - 0x734]
fldcw word [ebp - 0x726]
mov eax, dword [ebp - 0x734]
shr eax, 0x18
and eax, 0xff
add edx, eax
mov byte [ebp - 0x36a], dl
jmp 0x4c4daa
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
mov eax, dword [ebp - 0x248]
add eax, dword [ebp - 0x250]
movzx ecx, byte [eax - 4]
add edx, ecx
mov byte [ebp - 0x36a], dl
mov edx, dword [ebp - 0x250]
add edx, 1
mov dword [ebp - 0x250], edx
movzx eax, byte [ebp - 0x369]
cmp dword [ebp - 0x250], eax
jb 0x4c4de8
mov dword [ebp - 0x250], 0
movzx ecx, byte [ebp - 0x369]
movzx edx, byte [ebp - 0x36a]
add edx, ecx
mov byte [ebp - 0x36a], dl
movzx eax, byte [ebp - 0x36a]
and eax, dword [ebp - 0x378]
mov dword [ebp - 0x374], eax
mov ecx, dword [ebp - 0x370]
add ecx, 1
mov dword [ebp - 0x370], ecx
cmp dword [ebp - 0x370], 0xb
jbe 0x4c4e27
mov eax, dword [ebp - 0x374]
xor edx, edx
div dword [ebp - 0x360]
mov dword [ebp - 0x374], edx
mov edx, dword [ebp - 0x374]
cmp edx, dword [ebp - 0x360]
ja 0x4c4bfe
mov eax, dword [ebp - 0x360]
cmp eax, dword [ebp - 0x374]
je 0x4c4ecc
mov ecx, dword [ebp - 0x374]
movzx edx, byte [ebp + ecx - 0x358]
mov eax, dword [ebp - 0x360]
movzx ecx, byte [ebp + eax - 0x358]
xor ecx, edx
mov edx, dword [ebp - 0x360]
mov byte [ebp + edx - 0x358], cl
mov eax, dword [ebp - 0x360]
movzx ecx, byte [ebp + eax - 0x358]
mov edx, dword [ebp - 0x374]
movzx eax, byte [ebp + edx - 0x358]
xor eax, ecx
mov ecx, dword [ebp - 0x374]
mov byte [ebp + ecx - 0x358], al
mov edx, dword [ebp - 0x374]
movzx eax, byte [ebp + edx - 0x358]
mov ecx, dword [ebp - 0x360]
movzx edx, byte [ebp + ecx - 0x358]
xor edx, eax
mov eax, dword [ebp - 0x360]
mov byte [ebp + eax - 0x358], dl
jmp 0x4c4bae
mov cl, byte [ebp - 0x357]
mov byte [ebp - 0x36b], cl
mov dl, byte [ebp - 0x355]
mov byte [ebp - 0x251], dl
mov al, byte [ebp - 0x353]
mov byte [ebp - 0x359], al
mov cl, byte [ebp - 0x351]
mov byte [ebp - 0x361], cl
movzx edx, byte [ebp - 0x36a]
mov al, byte [ebp + edx - 0x358]
mov byte [ebp - 0x241], al
mov dword [ebp - 0x368], 0x18
cmp dword [ebp - 0x368], 2
jle 0x4c7518
mov ecx, dword [ebp - 0x368]
and ecx, 1
jne 0x4c7518
mov dword [ebp - 0x434], 0
mov dword [ebp - 0x430], 0
mov edx, dword [ebp - 0x430]
add edx, 1
mov dword [ebp - 0x430], edx
mov dword [ebp - 0x390], 0
mov eax, dword [ebp - 0x434]
shl eax, 1
mov dword [ebp - 0x390], eax
mov dword [ebp - 0x468], 0
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x390]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x468]
mov dword [ebp - 0x468], edx
mov dword [ebp - 0x3e4], 0
fld dword [0x9db7a0]
fstp dword [ebp - 0x47c]
fld dword [0x9db79c]
fstp dword [ebp - 0x42c]
fld dword [0x9db798]
fstp dword [ebp - 0x3f8]
fld dword [ebp - 0x47c]
fsub dword [ebp - 0x3f8]
fstp dword [ebp - 0x47c]
fld dword [ebp - 0x47c]
fmul dword [ebp - 0x3f8]
fstp dword [ebp - 0x47c]
fld dword [ebp - 0x42c]
fadd dword [ebp - 0x3f8]
fstp dword [ebp - 0x42c]
fld dword [ebp - 0x47c]
fld dword [ebp - 0x3f8]
fcompp
fnstsw ax
test ah, 5
jp 0x4c505d
fld dword [ebp - 0x42c]
fsub dword [ebp - 0x3f8]
fstp dword [ebp - 0x42c]
fld dword [ebp - 0x47c]
fadd dword [ebp - 0x42c]
fstp dword [ebp - 0x47c]
fld dword [ebp - 0x47c]
fmul dword [ebp - 0x42c]
fstp dword [ebp - 0x47c]
mov eax, dword [ebp - 0x3e4]
add eax, 0xeb
mov dword [ebp - 0x3e4], eax
jmp 0x4c5093
fld dword [ebp - 0x42c]
fadd dword [ebp - 0x47c]
fstp dword [ebp - 0x42c]
fld dword [ebp - 0x42c]
fadd dword [ebp - 0x47c]
fstp dword [ebp - 0x42c]
fld dword [ebp - 0x42c]
fsub dword [ebp - 0x47c]
fstp dword [ebp - 0x42c]
mov dword [ebp - 0x40c], 0
mov ecx, dword [ebp - 0x434]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x40c], edx
mov dword [ebp - 0x48c], 0
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x40c]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x48c]
mov dword [ebp - 0x48c], ecx
mov dword [ebp - 0x464], 0
fld dword [0x9db794]
fstp dword [ebp - 0x3bc]
fld dword [0x9db790]
fstp dword [ebp - 0x478]
fld dword [0x9db78c]
fstp dword [ebp - 0x428]
fld dword [0x9db788]
fstp dword [ebp - 0x3f4]
fld dword [ebp - 0x478]
fsub dword [ebp - 0x3f4]
fstp dword [ebp - 0x478]
fld dword [ebp - 0x428]
fadd dword [ebp - 0x3f4]
fstp dword [ebp - 0x428]
fld dword [ebp - 0x428]
fsub dword [ebp - 0x3f4]
fstp dword [ebp - 0x428]
fld dword [ebp - 0x478]
fsub dword [ebp - 0x3f4]
fstp dword [ebp - 0x478]
fld dword [ebp - 0x478]
fld dword [ebp - 0x3bc]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4c51c2
fld dword [ebp - 0x428]
fsub dword [ebp - 0x3f4]
fstp dword [ebp - 0x428]
fld dword [ebp - 0x478]
fmul dword [ebp - 0x428]
fstp dword [ebp - 0x478]
fld dword [ebp - 0x3bc]
fmul dword [ebp - 0x478]
fstp dword [ebp - 0x3bc]
fld dword [ebp - 0x428]
fmul dword [ebp - 0x3f4]
fstp dword [ebp - 0x428]
mov edx, dword [ebp - 0x464]
add edx, 0x50
mov dword [ebp - 0x464], edx
jmp 0x4c520a
fld dword [ebp - 0x3f4]
fdiv dword [ebp - 0x3bc]
fstp dword [ebp - 0x3f4]
fld dword [ebp - 0x428]
fdiv dword [ebp - 0x3f4]
fstp dword [ebp - 0x428]
fld dword [ebp - 0x478]
fdiv dword [ebp - 0x428]
fstp dword [ebp - 0x478]
fld dword [ebp - 0x478]
fdiv dword [ebp - 0x428]
fstp dword [ebp - 0x478]
mov dword [ebp - 0x488], 0
mov eax, dword [ebp - 0x468]
sub eax, dword [ebp - 0x3e4]
add eax, dword [ebp - 0x488]
mov dword [ebp - 0x488], eax
mov dword [ebp - 0x3a8], 0
mov ecx, dword [ebp - 0x48c]
sub ecx, dword [ebp - 0x464]
add ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x3a8], ecx
mov dword [ebp - 0x484], 0
mov edx, dword [ebp - 0x488]
shl edx, 4
mov dword [ebp - 0x484], edx
mov dword [ebp - 0x460], 0
mov eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x460], eax
mov dword [ebp - 0x424], 0
mov ecx, dword [ebp - 0x484]
or ecx, dword [ebp - 0x460]
mov dword [ebp - 0x424], ecx
mov byte [ebp - 0x3ed], 0
mov dl, byte [ebp - 0x424]
mov byte [ebp - 0x3ed], dl
mov byte [ebp - 0x47d], 0
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + eax - 0x358]
mov byte [ebp - 0x47d], cl
movzx edx, byte [ebp - 0x36b]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x251]
add ecx, eax
mov byte [ebp - 0x251], cl
mov dl, byte [ebp - 0x36b]
add dl, 1
mov byte [ebp - 0x36b], dl
movzx eax, byte [ebp - 0x251]
movzx ecx, byte [ebp - 0x241]
mov dl, byte [ebp + eax - 0x358]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x361]
movzx ecx, byte [ebp - 0x251]
mov dl, byte [ebp + eax - 0x358]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x36b]
movzx ecx, byte [ebp - 0x361]
mov dl, byte [ebp + eax - 0x358]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x36b]
mov cl, byte [ebp - 0x47d]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x47d]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x359]
add ecx, eax
mov byte [ebp - 0x359], cl
movzx edx, byte [ebp - 0x3ed]
movzx eax, byte [ebp - 0x251]
movzx ecx, byte [ebp + eax - 0x358]
movzx eax, byte [ebp - 0x36b]
movzx eax, byte [ebp + eax - 0x358]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x358]
xor edx, ecx
movzx eax, byte [ebp - 0x361]
movzx ecx, byte [ebp + eax - 0x358]
movzx eax, byte [ebp - 0x241]
movzx eax, byte [ebp + eax - 0x358]
add ecx, eax
movzx eax, byte [ebp - 0x359]
movzx eax, byte [ebp + eax - 0x358]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp + ecx - 0x358]
xor edx, eax
mov byte [ebp - 0x361], dl
mov cl, byte [ebp - 0x3ed]
mov byte [ebp - 0x241], cl
mov dl, byte [ebp - 0x361]
mov byte [ebp - 0x459], dl
cmp dword [ebp - 0x434], 0
jle 0x4c5434
mov eax, dword [ebp - 0x434]
mov cl, byte [ebp - 0x459]
mov byte [ebp + eax - 0x231], cl
mov edx, dword [ebp - 0x434]
add edx, 1
mov dword [ebp - 0x434], edx
mov eax, dword [ebp - 0x430]
add eax, 1
mov dword [ebp - 0x430], eax
mov ecx, dword [ebp - 0x434]
shl ecx, 1
mov dword [ebp - 0x390], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x390]
movzx eax, byte [edx]
mov dword [ebp - 0x468], eax
mov dword [ebp - 0x3e4], 0xeb
mov ecx, dword [ebp - 0x434]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x40c], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x40c]
movzx ecx, byte [eax]
mov dword [ebp - 0x48c], ecx
mov dword [ebp - 0x464], 0x50
mov edx, dword [ebp - 0x468]
sub edx, dword [ebp - 0x3e4]
mov dword [ebp - 0x488], edx
mov eax, dword [ebp - 0x48c]
sub eax, dword [ebp - 0x464]
mov dword [ebp - 0x3a8], eax
mov ecx, dword [ebp - 0x488]
shl ecx, 4
mov dword [ebp - 0x484], ecx
mov edx, dword [ebp - 0x3a8]
mov dword [ebp - 0x460], edx
mov eax, dword [ebp - 0x484]
or eax, dword [ebp - 0x460]
mov dword [ebp - 0x424], eax
mov cl, byte [ebp - 0x424]
mov byte [ebp - 0x3ed], cl
movzx edx, byte [ebp - 0x241]
mov al, byte [ebp + edx - 0x358]
mov byte [ebp - 0x47d], al
movzx ecx, byte [ebp - 0x36b]
movzx edx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp - 0x251]
add eax, edx
mov byte [ebp - 0x251], al
mov cl, byte [ebp - 0x36b]
add cl, 1
mov byte [ebp - 0x36b], cl
movzx edx, byte [ebp - 0x251]
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + edx - 0x358]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x361]
movzx eax, byte [ebp - 0x251]
mov cl, byte [ebp + edx - 0x358]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x36b]
movzx eax, byte [ebp - 0x361]
mov cl, byte [ebp + edx - 0x358]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x36b]
mov al, byte [ebp - 0x47d]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x47d]
movzx edx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp - 0x359]
add eax, edx
mov byte [ebp - 0x359], al
movzx ecx, byte [ebp - 0x3ed]
movzx edx, byte [ebp - 0x251]
movzx eax, byte [ebp + edx - 0x358]
movzx edx, byte [ebp - 0x36b]
movzx edx, byte [ebp + edx - 0x358]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x358]
xor ecx, eax
movzx edx, byte [ebp - 0x361]
movzx eax, byte [ebp + edx - 0x358]
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x358]
add eax, edx
movzx edx, byte [ebp - 0x359]
movzx edx, byte [ebp + edx - 0x358]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x358]
movzx edx, byte [ebp + eax - 0x358]
xor ecx, edx
mov byte [ebp - 0x361], cl
mov al, byte [ebp - 0x3ed]
mov byte [ebp - 0x241], al
mov cl, byte [ebp - 0x361]
mov byte [ebp - 0x459], cl
cmp dword [ebp - 0x434], 0
jle 0x4c568a
mov edx, dword [ebp - 0x434]
mov al, byte [ebp - 0x459]
mov byte [ebp + edx - 0x231], al
mov ecx, dword [ebp - 0x430]
add ecx, 2
mov dword [ebp - 0x430], ecx
mov edx, dword [ebp - 0x434]
add edx, 1
mov dword [ebp - 0x490], edx
jmp 0x4c56b9
mov eax, dword [ebp - 0x490]
add eax, 1
mov dword [ebp - 0x490], eax
mov ecx, dword [ebp - 0x490]
cmp ecx, dword [ebp - 0x430]
jge 0x4c5918
mov edx, dword [ebp - 0x434]
add edx, 1
mov dword [ebp - 0x434], edx
mov eax, dword [ebp - 0x434]
shl eax, 1
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x390]
movzx edx, byte [ecx]
mov dword [ebp - 0x468], edx
mov dword [ebp - 0x3e4], 0xeb
mov eax, dword [ebp - 0x434]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x40c], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x40c]
movzx eax, byte [edx]
mov dword [ebp - 0x48c], eax
mov dword [ebp - 0x464], 0x50
mov ecx, dword [ebp - 0x468]
sub ecx, dword [ebp - 0x3e4]
mov dword [ebp - 0x488], ecx
mov edx, dword [ebp - 0x48c]
sub edx, dword [ebp - 0x464]
mov dword [ebp - 0x3a8], edx
mov eax, dword [ebp - 0x488]
shl eax, 4
mov dword [ebp - 0x484], eax
mov ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x460], ecx
mov edx, dword [ebp - 0x484]
or edx, dword [ebp - 0x460]
mov dword [ebp - 0x424], edx
mov al, byte [ebp - 0x424]
mov byte [ebp - 0x3ed], al
movzx ecx, byte [ebp - 0x241]
mov dl, byte [ebp + ecx - 0x358]
mov byte [ebp - 0x47d], dl
movzx eax, byte [ebp - 0x36b]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x251]
add edx, ecx
mov byte [ebp - 0x251], dl
mov al, byte [ebp - 0x36b]
add al, 1
mov byte [ebp - 0x36b], al
movzx ecx, byte [ebp - 0x251]
movzx edx, byte [ebp - 0x241]
mov al, byte [ebp + ecx - 0x358]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x361]
movzx edx, byte [ebp - 0x251]
mov al, byte [ebp + ecx - 0x358]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x36b]
movzx edx, byte [ebp - 0x361]
mov al, byte [ebp + ecx - 0x358]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x36b]
mov dl, byte [ebp - 0x47d]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x47d]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x359]
add edx, ecx
mov byte [ebp - 0x359], dl
movzx eax, byte [ebp - 0x3ed]
movzx ecx, byte [ebp - 0x251]
movzx edx, byte [ebp + ecx - 0x358]
movzx ecx, byte [ebp - 0x36b]
movzx ecx, byte [ebp + ecx - 0x358]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x358]
xor eax, edx
movzx ecx, byte [ebp - 0x361]
movzx edx, byte [ebp + ecx - 0x358]
movzx ecx, byte [ebp - 0x241]
movzx ecx, byte [ebp + ecx - 0x358]
add edx, ecx
movzx ecx, byte [ebp - 0x359]
movzx ecx, byte [ebp + ecx - 0x358]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp + edx - 0x358]
xor eax, ecx
mov byte [ebp - 0x361], al
mov dl, byte [ebp - 0x3ed]
mov byte [ebp - 0x241], dl
mov al, byte [ebp - 0x361]
mov byte [ebp - 0x459], al
cmp dword [ebp - 0x434], 0
jle 0x4c5913
mov ecx, dword [ebp - 0x434]
mov dl, byte [ebp - 0x459]
mov byte [ebp + ecx - 0x231], dl
jmp 0x4c56aa
mov eax, dword [ebp - 0x430]
add eax, 1
mov dword [ebp - 0x430], eax
mov ecx, dword [ebp - 0x434]
add ecx, 1
mov dword [ebp - 0x434], ecx
mov edx, dword [ebp - 0x430]
add edx, 1
mov dword [ebp - 0x430], edx
mov eax, dword [ebp - 0x434]
shl eax, 1
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x390]
movzx edx, byte [ecx]
mov dword [ebp - 0x468], edx
mov dword [ebp - 0x3e4], 0xeb
mov eax, dword [ebp - 0x434]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x40c], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x40c]
movzx eax, byte [edx]
mov dword [ebp - 0x48c], eax
mov dword [ebp - 0x464], 0x50
mov ecx, dword [ebp - 0x468]
sub ecx, dword [ebp - 0x3e4]
mov dword [ebp - 0x488], ecx
mov edx, dword [ebp - 0x48c]
sub edx, dword [ebp - 0x464]
mov dword [ebp - 0x3a8], edx
mov eax, dword [ebp - 0x488]
shl eax, 4
mov dword [ebp - 0x484], eax
mov ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x460], ecx
mov edx, dword [ebp - 0x484]
or edx, dword [ebp - 0x460]
mov dword [ebp - 0x424], edx
mov al, byte [ebp - 0x424]
mov byte [ebp - 0x3ed], al
movzx ecx, byte [ebp - 0x241]
mov dl, byte [ebp + ecx - 0x358]
mov byte [ebp - 0x47d], dl
movzx eax, byte [ebp - 0x36b]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x251]
add edx, ecx
mov byte [ebp - 0x251], dl
mov al, byte [ebp - 0x36b]
add al, 1
mov byte [ebp - 0x36b], al
movzx ecx, byte [ebp - 0x251]
movzx edx, byte [ebp - 0x241]
mov al, byte [ebp + ecx - 0x358]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x361]
movzx edx, byte [ebp - 0x251]
mov al, byte [ebp + ecx - 0x358]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x36b]
movzx edx, byte [ebp - 0x361]
mov al, byte [ebp + ecx - 0x358]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x36b]
mov dl, byte [ebp - 0x47d]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x47d]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x359]
add edx, ecx
mov byte [ebp - 0x359], dl
movzx eax, byte [ebp - 0x3ed]
movzx ecx, byte [ebp - 0x251]
movzx edx, byte [ebp + ecx - 0x358]
movzx ecx, byte [ebp - 0x36b]
movzx ecx, byte [ebp + ecx - 0x358]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x358]
xor eax, edx
movzx ecx, byte [ebp - 0x361]
movzx edx, byte [ebp + ecx - 0x358]
movzx ecx, byte [ebp - 0x241]
movzx ecx, byte [ebp + ecx - 0x358]
add edx, ecx
movzx ecx, byte [ebp - 0x359]
movzx ecx, byte [ebp + ecx - 0x358]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp + edx - 0x358]
xor eax, ecx
mov byte [ebp - 0x361], al
mov dl, byte [ebp - 0x3ed]
mov byte [ebp - 0x241], dl
mov al, byte [ebp - 0x361]
mov byte [ebp - 0x459], al
cmp dword [ebp - 0x434], 0
jle 0x4c5b7e
mov ecx, dword [ebp - 0x434]
mov dl, byte [ebp - 0x459]
mov byte [ebp + ecx - 0x231], dl
mov eax, dword [ebp - 0x434]
add eax, 1
mov dword [ebp - 0x434], eax
mov ecx, dword [ebp - 0x430]
add ecx, 1
mov dword [ebp - 0x430], ecx
mov edx, dword [ebp - 0x434]
shl edx, 1
mov dword [ebp - 0x390], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x390]
movzx ecx, byte [eax]
mov dword [ebp - 0x468], ecx
mov dword [ebp - 0x3e4], 0xeb
mov edx, dword [ebp - 0x434]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x40c], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x40c]
movzx edx, byte [ecx]
mov dword [ebp - 0x48c], edx
mov dword [ebp - 0x464], 0x50
mov eax, dword [ebp - 0x468]
sub eax, dword [ebp - 0x3e4]
mov dword [ebp - 0x488], eax
mov ecx, dword [ebp - 0x48c]
sub ecx, dword [ebp - 0x464]
mov dword [ebp - 0x3a8], ecx
mov edx, dword [ebp - 0x488]
shl edx, 4
mov dword [ebp - 0x484], edx
mov eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x460], eax
mov ecx, dword [ebp - 0x484]
or ecx, dword [ebp - 0x460]
mov dword [ebp - 0x424], ecx
mov dl, byte [ebp - 0x424]
mov byte [ebp - 0x3ed], dl
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + eax - 0x358]
mov byte [ebp - 0x47d], cl
movzx edx, byte [ebp - 0x36b]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x251]
add ecx, eax
mov byte [ebp - 0x251], cl
mov dl, byte [ebp - 0x36b]
add dl, 1
mov byte [ebp - 0x36b], dl
movzx eax, byte [ebp - 0x251]
movzx ecx, byte [ebp - 0x241]
mov dl, byte [ebp + eax - 0x358]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x361]
movzx ecx, byte [ebp - 0x251]
mov dl, byte [ebp + eax - 0x358]
mov byte [ebp + ecx - 0x358], dl
fld dword [0x9db784]
fstp dword [ebp - 0x3b8]
fld dword [0x9db780]
fstp dword [ebp - 0x474]
fld dword [0x9db77c]
fstp dword [ebp - 0x3b4]
fld dword [0x9db778]
fstp dword [ebp - 0x3ec]
fld dword [0x9db774]
fstp dword [ebp - 0x420]
fld dword [ebp - 0x3b8]
fsub dword [ebp - 0x420]
fstp dword [ebp - 0x3b8]
fld dword [ebp - 0x3b4]
fmul dword [ebp - 0x420]
fstp dword [ebp - 0x3b4]
fld dword [ebp - 0x3b4]
fadd dword [ebp - 0x420]
fstp dword [ebp - 0x3b4]
fld dword [ebp - 0x3ec]
fsub dword [ebp - 0x420]
fstp dword [ebp - 0x3ec]
fld dword [ebp - 0x474]
fmul dword [ebp - 0x420]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x474]
fld dword [ebp - 0x3ec]
fcompp
fnstsw ax
test ah, 5
jp 0x4c5df1
fld dword [ebp - 0x3b4]
fmul dword [ebp - 0x3ec]
fstp dword [ebp - 0x3b4]
fld dword [ebp - 0x3ec]
fmul dword [ebp - 0x420]
fstp dword [ebp - 0x3ec]
fld dword [ebp - 0x474]
fsub dword [ebp - 0x3b4]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x420]
fmul dword [ebp - 0x3b8]
fstp dword [ebp - 0x420]
fld dword [ebp - 0x3b4]
fadd dword [ebp - 0x3ec]
fstp dword [ebp - 0x3b4]
movzx eax, byte [ebp - 0x36b]
movzx ecx, byte [ebp - 0x361]
mov dl, byte [ebp + eax - 0x358]
mov byte [ebp + ecx - 0x358], dl
jmp 0x4c5e4b
fld dword [ebp - 0x474]
fadd dword [ebp - 0x3b4]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x3b8]
fadd dword [ebp - 0x474]
fstp dword [ebp - 0x3b8]
fld dword [ebp - 0x3b8]
fmul dword [ebp - 0x474]
fstp dword [ebp - 0x3b8]
fld dword [ebp - 0x420]
fmul dword [ebp - 0x3b8]
fstp dword [ebp - 0x420]
fld dword [ebp - 0x3ec]
fdiv dword [ebp - 0x420]
fstp dword [ebp - 0x3ec]
movzx eax, byte [ebp - 0x36b]
mov cl, byte [ebp - 0x47d]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x47d]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x359]
add ecx, eax
mov byte [ebp - 0x359], cl
movzx edx, byte [ebp - 0x3ed]
movzx eax, byte [ebp - 0x251]
movzx ecx, byte [ebp + eax - 0x358]
movzx eax, byte [ebp - 0x36b]
movzx eax, byte [ebp + eax - 0x358]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x358]
xor edx, ecx
movzx eax, byte [ebp - 0x361]
movzx ecx, byte [ebp + eax - 0x358]
movzx eax, byte [ebp - 0x241]
movzx eax, byte [ebp + eax - 0x358]
add ecx, eax
movzx eax, byte [ebp - 0x359]
movzx eax, byte [ebp + eax - 0x358]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp + ecx - 0x358]
xor edx, eax
mov byte [ebp - 0x361], dl
mov cl, byte [ebp - 0x3ed]
mov byte [ebp - 0x241], cl
mov dl, byte [ebp - 0x361]
mov byte [ebp - 0x459], dl
cmp dword [ebp - 0x434], 0
jle 0x4c5f37
mov eax, dword [ebp - 0x434]
mov cl, byte [ebp - 0x459]
mov byte [ebp + eax - 0x231], cl
mov edx, dword [ebp - 0x434]
add edx, 1
mov dword [ebp - 0x434], edx
mov eax, dword [ebp - 0x430]
add eax, 1
mov dword [ebp - 0x430], eax
mov ecx, dword [ebp - 0x434]
shl ecx, 1
mov dword [ebp - 0x390], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x390]
movzx eax, byte [edx]
mov dword [ebp - 0x468], eax
mov dword [ebp - 0x3e4], 0xeb
mov ecx, dword [ebp - 0x434]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x40c], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x40c]
movzx ecx, byte [eax]
mov dword [ebp - 0x48c], ecx
mov dword [ebp - 0x464], 0x50
mov edx, dword [ebp - 0x468]
sub edx, dword [ebp - 0x3e4]
mov dword [ebp - 0x488], edx
mov eax, dword [ebp - 0x48c]
sub eax, dword [ebp - 0x464]
mov dword [ebp - 0x3a8], eax
mov ecx, dword [ebp - 0x488]
shl ecx, 4
mov dword [ebp - 0x484], ecx
mov edx, dword [ebp - 0x3a8]
mov dword [ebp - 0x460], edx
mov eax, dword [ebp - 0x484]
or eax, dword [ebp - 0x460]
mov dword [ebp - 0x424], eax
mov cl, byte [ebp - 0x424]
mov byte [ebp - 0x3ed], cl
movzx edx, byte [ebp - 0x241]
mov al, byte [ebp + edx - 0x358]
mov byte [ebp - 0x47d], al
movzx ecx, byte [ebp - 0x36b]
movzx edx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp - 0x251]
add eax, edx
mov byte [ebp - 0x251], al
mov cl, byte [ebp - 0x36b]
add cl, 1
mov byte [ebp - 0x36b], cl
movzx edx, byte [ebp - 0x251]
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + edx - 0x358]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x361]
movzx eax, byte [ebp - 0x251]
mov cl, byte [ebp + edx - 0x358]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x36b]
movzx eax, byte [ebp - 0x361]
mov cl, byte [ebp + edx - 0x358]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x36b]
mov al, byte [ebp - 0x47d]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x47d]
movzx edx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp - 0x359]
add eax, edx
mov byte [ebp - 0x359], al
movzx ecx, byte [ebp - 0x3ed]
movzx edx, byte [ebp - 0x251]
movzx eax, byte [ebp + edx - 0x358]
movzx edx, byte [ebp - 0x36b]
movzx edx, byte [ebp + edx - 0x358]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x358]
xor ecx, eax
movzx edx, byte [ebp - 0x361]
movzx eax, byte [ebp + edx - 0x358]
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x358]
add eax, edx
movzx edx, byte [ebp - 0x359]
movzx edx, byte [ebp + edx - 0x358]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x358]
movzx edx, byte [ebp + eax - 0x358]
xor ecx, edx
mov byte [ebp - 0x361], cl
mov al, byte [ebp - 0x3ed]
mov byte [ebp - 0x241], al
mov cl, byte [ebp - 0x361]
mov byte [ebp - 0x459], cl
cmp dword [ebp - 0x434], 0
jle 0x4c618d
mov edx, dword [ebp - 0x434]
mov al, byte [ebp - 0x459]
mov byte [ebp + edx - 0x231], al
mov ecx, dword [ebp - 0x430]
add ecx, 2
mov dword [ebp - 0x430], ecx
mov edx, dword [ebp - 0x434]
add edx, 1
mov dword [ebp - 0x494], edx
jmp 0x4c61bc
mov eax, dword [ebp - 0x494]
add eax, 1
mov dword [ebp - 0x494], eax
mov ecx, dword [ebp - 0x494]
cmp ecx, dword [ebp - 0x430]
jge 0x4c641b
mov edx, dword [ebp - 0x434]
add edx, 1
mov dword [ebp - 0x434], edx
mov eax, dword [ebp - 0x434]
shl eax, 1
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x390]
movzx edx, byte [ecx]
mov dword [ebp - 0x468], edx
mov dword [ebp - 0x3e4], 0xeb
mov eax, dword [ebp - 0x434]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x40c], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x40c]
movzx eax, byte [edx]
mov dword [ebp - 0x48c], eax
mov dword [ebp - 0x464], 0x50
mov ecx, dword [ebp - 0x468]
sub ecx, dword [ebp - 0x3e4]
mov dword [ebp - 0x488], ecx
mov edx, dword [ebp - 0x48c]
sub edx, dword [ebp - 0x464]
mov dword [ebp - 0x3a8], edx
mov eax, dword [ebp - 0x488]
shl eax, 4
mov dword [ebp - 0x484], eax
mov ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x460], ecx
mov edx, dword [ebp - 0x484]
or edx, dword [ebp - 0x460]
mov dword [ebp - 0x424], edx
mov al, byte [ebp - 0x424]
mov byte [ebp - 0x3ed], al
movzx ecx, byte [ebp - 0x241]
mov dl, byte [ebp + ecx - 0x358]
mov byte [ebp - 0x47d], dl
movzx eax, byte [ebp - 0x36b]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x251]
add edx, ecx
mov byte [ebp - 0x251], dl
mov al, byte [ebp - 0x36b]
add al, 1
mov byte [ebp - 0x36b], al
movzx ecx, byte [ebp - 0x251]
movzx edx, byte [ebp - 0x241]
mov al, byte [ebp + ecx - 0x358]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x361]
movzx edx, byte [ebp - 0x251]
mov al, byte [ebp + ecx - 0x358]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x36b]
movzx edx, byte [ebp - 0x361]
mov al, byte [ebp + ecx - 0x358]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x36b]
mov dl, byte [ebp - 0x47d]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x47d]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x359]
add edx, ecx
mov byte [ebp - 0x359], dl
movzx eax, byte [ebp - 0x3ed]
movzx ecx, byte [ebp - 0x251]
movzx edx, byte [ebp + ecx - 0x358]
movzx ecx, byte [ebp - 0x36b]
movzx ecx, byte [ebp + ecx - 0x358]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x358]
xor eax, edx
movzx ecx, byte [ebp - 0x361]
movzx edx, byte [ebp + ecx - 0x358]
movzx ecx, byte [ebp - 0x241]
movzx ecx, byte [ebp + ecx - 0x358]
add edx, ecx
movzx ecx, byte [ebp - 0x359]
movzx ecx, byte [ebp + ecx - 0x358]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp + edx - 0x358]
xor eax, ecx
mov byte [ebp - 0x361], al
mov dl, byte [ebp - 0x3ed]
mov byte [ebp - 0x241], dl
mov al, byte [ebp - 0x361]
mov byte [ebp - 0x459], al
cmp dword [ebp - 0x434], 0
jle 0x4c6416
mov ecx, dword [ebp - 0x434]
mov dl, byte [ebp - 0x459]
mov byte [ebp + ecx - 0x231], dl
jmp 0x4c61ad
mov eax, dword [ebp - 0x430]
add eax, 1
mov dword [ebp - 0x430], eax
mov ecx, dword [ebp - 0x434]
add ecx, 1
mov dword [ebp - 0x434], ecx
mov edx, dword [ebp - 0x430]
add edx, 1
mov dword [ebp - 0x430], edx
mov eax, dword [ebp - 0x434]
shl eax, 1
mov dword [ebp - 0x390], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x390]
movzx edx, byte [ecx]
mov dword [ebp - 0x468], edx
mov dword [ebp - 0x3e4], 0xeb
mov eax, dword [ebp - 0x434]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x40c], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x40c]
movzx eax, byte [edx]
mov dword [ebp - 0x48c], eax
mov dword [ebp - 0x464], 0x50
mov ecx, dword [ebp - 0x468]
sub ecx, dword [ebp - 0x3e4]
mov dword [ebp - 0x488], ecx
mov edx, dword [ebp - 0x48c]
sub edx, dword [ebp - 0x464]
mov dword [ebp - 0x3a8], edx
fld dword [0x9db770]
fstp dword [ebp - 0x470]
fld dword [0x9db76c]
fstp dword [ebp - 0x3b0]
fld dword [0x9db768]
fstp dword [ebp - 0x3e8]
fld dword [ebp - 0x3b0]
fadd dword [ebp - 0x3e8]
fstp dword [ebp - 0x3b0]
fld dword [ebp - 0x3b0]
fsub dword [ebp - 0x3e8]
fstp dword [ebp - 0x3b0]
fld dword [ebp - 0x470]
fsub dword [ebp - 0x3e8]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x3b0]
fld dword [ebp - 0x3e8]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4c656f
fld dword [ebp - 0x3e8]
fsub dword [ebp - 0x470]
fstp dword [ebp - 0x3e8]
fld dword [ebp - 0x470]
fmul dword [ebp - 0x3b0]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x3b0]
fsub dword [ebp - 0x3e8]
fstp dword [ebp - 0x3b0]
jmp 0x4c65b4
fld dword [ebp - 0x3b0]
fsub dword [ebp - 0x470]
fstp dword [ebp - 0x3b0]
fld dword [ebp - 0x470]
fadd dword [ebp - 0x3e8]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x3e8]
fsub dword [ebp - 0x3b0]
fstp dword [ebp - 0x3e8]
mov eax, dword [ebp - 0x488]
shl eax, 4
mov dword [ebp - 0x484], eax
mov ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x460], ecx
mov edx, dword [ebp - 0x484]
or edx, dword [ebp - 0x460]
mov dword [ebp - 0x424], edx
mov al, byte [ebp - 0x424]
mov byte [ebp - 0x3ed], al
movzx ecx, byte [ebp - 0x241]
mov dl, byte [ebp + ecx - 0x358]
mov byte [ebp - 0x47d], dl
movzx eax, byte [ebp - 0x36b]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x251]
add edx, ecx
mov byte [ebp - 0x251], dl
mov al, byte [ebp - 0x36b]
add al, 1
mov byte [ebp - 0x36b], al
movzx ecx, byte [ebp - 0x251]
movzx edx, byte [ebp - 0x241]
mov al, byte [ebp + ecx - 0x358]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x361]
movzx edx, byte [ebp - 0x251]
mov al, byte [ebp + ecx - 0x358]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x36b]
movzx edx, byte [ebp - 0x361]
mov al, byte [ebp + ecx - 0x358]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x36b]
mov dl, byte [ebp - 0x47d]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x47d]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x359]
add edx, ecx
mov byte [ebp - 0x359], dl
fld dword [0x9db764]
fstp dword [ebp - 0x41c]
fld dword [0x9db760]
fstp dword [ebp - 0x46c]
fld dword [0x9db75c]
fstp dword [ebp - 0x3ac]
fld dword [0x9db758]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x41c]
fadd dword [ebp - 0x3a4]
fstp dword [ebp - 0x41c]
fld dword [ebp - 0x41c]
fsub dword [ebp - 0x3a4]
fstp dword [ebp - 0x41c]
fld dword [ebp - 0x46c]
fadd dword [ebp - 0x3a4]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x46c]
fadd dword [ebp - 0x3a4]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x46c]
fld dword [ebp - 0x3a4]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4c677e
fld dword [ebp - 0x46c]
fsub dword [ebp - 0x3ac]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x46c]
fmul dword [ebp - 0x3ac]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x41c]
fsub dword [ebp - 0x46c]
fstp dword [ebp - 0x41c]
fld dword [ebp - 0x46c]
fdiv dword [ebp - 0x3ac]
fstp dword [ebp - 0x46c]
jmp 0x4c684c
fld dword [ebp - 0x41c]
fsub dword [ebp - 0x3ac]
fstp dword [ebp - 0x41c]
fld dword [ebp - 0x3a4]
fmul dword [ebp - 0x46c]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x46c]
fsub dword [ebp - 0x3a4]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x3a4]
fsub dword [ebp - 0x46c]
fstp dword [ebp - 0x3a4]
movzx eax, byte [ebp - 0x3ed]
movzx ecx, byte [ebp - 0x251]
movzx edx, byte [ebp + ecx - 0x358]
movzx ecx, byte [ebp - 0x36b]
movzx ecx, byte [ebp + ecx - 0x358]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x358]
xor eax, edx
movzx ecx, byte [ebp - 0x361]
movzx edx, byte [ebp + ecx - 0x358]
movzx ecx, byte [ebp - 0x241]
movzx ecx, byte [ebp + ecx - 0x358]
add edx, ecx
movzx ecx, byte [ebp - 0x359]
movzx ecx, byte [ebp + ecx - 0x358]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp + edx - 0x358]
xor eax, ecx
mov byte [ebp - 0x361], al
mov dl, byte [ebp - 0x3ed]
mov byte [ebp - 0x241], dl
mov al, byte [ebp - 0x361]
mov byte [ebp - 0x459], al
cmp dword [ebp - 0x434], 0
jle 0x4c6880
mov ecx, dword [ebp - 0x434]
mov dl, byte [ebp - 0x459]
mov byte [ebp + ecx - 0x231], dl
mov eax, dword [ebp - 0x434]
add eax, 1
mov dword [ebp - 0x434], eax
mov ecx, dword [ebp - 0x430]
add ecx, 1
mov dword [ebp - 0x430], ecx
mov edx, dword [ebp - 0x434]
shl edx, 1
mov dword [ebp - 0x390], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x390]
movzx ecx, byte [eax]
mov dword [ebp - 0x468], ecx
mov dword [ebp - 0x3e4], 0xeb
fld qword [0x9db750]
fstp qword [ebp - 0x3e0]
fld qword [0x9db748]
fstp qword [ebp - 0x418]
fld qword [0x9db740]
fstp qword [ebp - 0x458]
fld qword [0x9db738]
fstp qword [ebp - 0x3a0]
fld qword [0x9db730]
fstp qword [ebp - 0x3d8]
fld qword [ebp - 0x3a0]
fmul qword [ebp - 0x3d8]
fstp qword [ebp - 0x3a0]
fld qword [ebp - 0x418]
fmul qword [ebp - 0x3d8]
fstp qword [ebp - 0x418]
fld qword [ebp - 0x458]
fmul qword [ebp - 0x3d8]
fstp qword [ebp - 0x458]
fld qword [ebp - 0x3e0]
fmul qword [ebp - 0x3d8]
fstp qword [ebp - 0x3e0]
fld qword [ebp - 0x458]
fsub qword [ebp - 0x3d8]
fstp qword [ebp - 0x458]
fld qword [ebp - 0x3d8]
fcomp qword [ebp - 0x3e0]
fnstsw ax
test ah, 0x41
jne 0x4c69d0
fld qword [ebp - 0x3d8]
fsub qword [ebp - 0x3e0]
fstp qword [ebp - 0x3d8]
fld qword [ebp - 0x458]
fmul qword [ebp - 0x3a0]
fstp qword [ebp - 0x458]
fld qword [ebp - 0x418]
fdiv qword [ebp - 0x458]
fstp qword [ebp - 0x418]
fld qword [ebp - 0x458]
fdiv qword [ebp - 0x3a0]
fstp qword [ebp - 0x458]
fld qword [ebp - 0x418]
fsub qword [ebp - 0x458]
fstp qword [ebp - 0x418]
jmp 0x4c6a3a
fld qword [ebp - 0x3d8]
fmul qword [ebp - 0x3e0]
fstp qword [ebp - 0x3d8]
fld qword [ebp - 0x418]
fsub qword [ebp - 0x458]
fstp qword [ebp - 0x418]
fld qword [ebp - 0x3d8]
fadd qword [ebp - 0x3e0]
fstp qword [ebp - 0x3d8]
fld qword [ebp - 0x458]
fmul qword [ebp - 0x3a0]
fstp qword [ebp - 0x458]
fld qword [ebp - 0x3d8]
fmul qword [ebp - 0x3e0]
fstp qword [ebp - 0x3d8]
mov edx, dword [ebp - 0x434]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x40c], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x40c]
movzx edx, byte [ecx]
mov dword [ebp - 0x48c], edx
mov dword [ebp - 0x464], 0x50
mov eax, dword [ebp - 0x468]
sub eax, dword [ebp - 0x3e4]
mov dword [ebp - 0x488], eax
mov ecx, dword [ebp - 0x48c]
sub ecx, dword [ebp - 0x464]
mov dword [ebp - 0x3a8], ecx
mov edx, dword [ebp - 0x488]
shl edx, 4
mov dword [ebp - 0x484], edx
mov eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x460], eax
mov ecx, dword [ebp - 0x484]
or ecx, dword [ebp - 0x460]
mov dword [ebp - 0x424], ecx
mov dl, byte [ebp - 0x424]
mov byte [ebp - 0x3ed], dl
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + eax - 0x358]
mov byte [ebp - 0x47d], cl
fld dword [0x9db72c]
fstp dword [ebp - 0x410]
fld dword [0x9db728]
fstp dword [ebp - 0x44c]
fld dword [0x9db724]
fstp dword [ebp - 0x394]
fld dword [0x9db720]
fstp dword [ebp - 0x3d0]
fld dword [0x9db71c]
fstp dword [ebp - 0x38c]
fld dword [0x9db718]
fstp dword [ebp - 0x3cc]
fld dword [ebp - 0x44c]
fmul dword [ebp - 0x3cc]
fstp dword [ebp - 0x44c]
fld dword [ebp - 0x38c]
fsub dword [ebp - 0x3cc]
fstp dword [ebp - 0x38c]
fld dword [ebp - 0x38c]
fadd dword [ebp - 0x3cc]
fstp dword [ebp - 0x38c]
fld dword [ebp - 0x44c]
fadd dword [ebp - 0x3cc]
fstp dword [ebp - 0x44c]
fld dword [ebp - 0x3d0]
fmul dword [ebp - 0x3cc]
fstp dword [ebp - 0x3d0]
fld dword [ebp - 0x394]
fadd dword [ebp - 0x3cc]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x44c]
fld dword [ebp - 0x3cc]
fcompp
fnstsw ax
test ah, 5
jp 0x4c6c35
fld dword [ebp - 0x394]
fmul dword [ebp - 0x38c]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x394]
fsub dword [ebp - 0x38c]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x394]
fsub dword [ebp - 0x38c]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x3d0]
fadd dword [ebp - 0x3cc]
fstp dword [ebp - 0x3d0]
fld dword [ebp - 0x3cc]
fmul dword [ebp - 0x44c]
fstp dword [ebp - 0x3cc]
fld dword [ebp - 0x44c]
fmul dword [ebp - 0x3d0]
fstp dword [ebp - 0x44c]
movzx edx, byte [ebp - 0x36b]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x251]
add ecx, eax
mov byte [ebp - 0x251], cl
mov dl, byte [ebp - 0x36b]
add dl, 1
mov byte [ebp - 0x36b], dl
jmp 0x4c6dfc
fld dword [ebp - 0x394]
fmul dword [ebp - 0x38c]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x44c]
fdiv dword [ebp - 0x3d0]
fstp dword [ebp - 0x44c]
fld dword [ebp - 0x38c]
fadd dword [ebp - 0x410]
fstp dword [ebp - 0x38c]
fld dword [ebp - 0x3cc]
fsub dword [ebp - 0x44c]
fstp dword [ebp - 0x3cc]
fld dword [ebp - 0x44c]
fdiv dword [ebp - 0x3d0]
fstp dword [ebp - 0x44c]
fld dword [ebp - 0x410]
fmul dword [ebp - 0x394]
fstp dword [ebp - 0x410]
fld dword [ebp - 0x394]
fmul dword [ebp - 0x38c]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x394]
fsub dword [ebp - 0x38c]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x394]
fadd dword [ebp - 0x38c]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x410]
fmul dword [ebp - 0x394]
fstp dword [ebp - 0x410]
fld dword [ebp - 0x44c]
fmul dword [ebp - 0x3d0]
fstp dword [ebp - 0x44c]
fld dword [ebp - 0x3cc]
fadd dword [ebp - 0x44c]
fstp dword [ebp - 0x3cc]
fld dword [ebp - 0x394]
fld dword [ebp - 0x38c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4c6d90
fld dword [ebp - 0x3d0]
fsub dword [ebp - 0x38c]
fstp dword [ebp - 0x3d0]
fld dword [ebp - 0x410]
fmul dword [ebp - 0x44c]
fstp dword [ebp - 0x410]
fld dword [ebp - 0x394]
fdiv dword [ebp - 0x3d0]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x3cc]
fsub dword [ebp - 0x410]
fstp dword [ebp - 0x3cc]
fld dword [ebp - 0x3cc]
fadd dword [ebp - 0x410]
fstp dword [ebp - 0x3cc]
fld dword [ebp - 0x394]
fdiv dword [ebp - 0x3d0]
fstp dword [ebp - 0x394]
jmp 0x4c6dfc
fld dword [ebp - 0x3d0]
fsub dword [ebp - 0x3cc]
fstp dword [ebp - 0x3d0]
fld dword [ebp - 0x3cc]
fmul dword [ebp - 0x44c]
fstp dword [ebp - 0x3cc]
fld dword [ebp - 0x410]
fdiv dword [ebp - 0x394]
fstp dword [ebp - 0x410]
fld dword [ebp - 0x38c]
fsub dword [ebp - 0x410]
fstp dword [ebp - 0x38c]
fld dword [ebp - 0x3cc]
fsub dword [ebp - 0x44c]
fstp dword [ebp - 0x3cc]
fld dword [ebp - 0x38c]
fdiv dword [ebp - 0x410]
fstp dword [ebp - 0x38c]
movzx eax, byte [ebp - 0x251]
movzx ecx, byte [ebp - 0x241]
mov dl, byte [ebp + eax - 0x358]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x361]
movzx ecx, byte [ebp - 0x251]
mov dl, byte [ebp + eax - 0x358]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x36b]
movzx ecx, byte [ebp - 0x361]
mov dl, byte [ebp + eax - 0x358]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x36b]
mov cl, byte [ebp - 0x47d]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x47d]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x359]
add ecx, eax
mov byte [ebp - 0x359], cl
movzx edx, byte [ebp - 0x3ed]
movzx eax, byte [ebp - 0x251]
movzx ecx, byte [ebp + eax - 0x358]
movzx eax, byte [ebp - 0x36b]
movzx eax, byte [ebp + eax - 0x358]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x358]
xor edx, ecx
movzx eax, byte [ebp - 0x361]
movzx ecx, byte [ebp + eax - 0x358]
movzx eax, byte [ebp - 0x241]
movzx eax, byte [ebp + eax - 0x358]
add ecx, eax
movzx eax, byte [ebp - 0x359]
movzx eax, byte [ebp + eax - 0x358]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp + ecx - 0x358]
xor edx, eax
mov byte [ebp - 0x361], dl
mov cl, byte [ebp - 0x3ed]
mov byte [ebp - 0x241], cl
mov dl, byte [ebp - 0x361]
mov byte [ebp - 0x459], dl
cmp dword [ebp - 0x434], 0
jle 0x4c6f3c
mov eax, dword [ebp - 0x434]
mov cl, byte [ebp - 0x459]
mov byte [ebp + eax - 0x231], cl
mov edx, dword [ebp - 0x434]
add edx, 1
mov dword [ebp - 0x434], edx
mov eax, dword [ebp - 0x430]
add eax, 1
mov dword [ebp - 0x430], eax
mov ecx, dword [ebp - 0x434]
shl ecx, 1
mov dword [ebp - 0x390], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x390]
movzx eax, byte [edx]
mov dword [ebp - 0x468], eax
mov dword [ebp - 0x3e4], 0xeb
mov ecx, dword [ebp - 0x434]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x40c], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x40c]
movzx ecx, byte [eax]
mov dword [ebp - 0x48c], ecx
mov dword [ebp - 0x464], 0x50
mov edx, dword [ebp - 0x468]
sub edx, dword [ebp - 0x3e4]
mov dword [ebp - 0x488], edx
mov eax, dword [ebp - 0x48c]
sub eax, dword [ebp - 0x464]
mov dword [ebp - 0x3a8], eax
fld qword [0x9db710]
fstp qword [ebp - 0x408]
fld qword [0x9db708]
fstp qword [ebp - 0x448]
fld qword [0x9db700]
fstp qword [ebp - 0x388]
fld qword [0x9db6f8]
fstp qword [ebp - 0x3c8]
fld qword [0x9db6f0]
fstp qword [ebp - 0x400]
fld qword [0x9db6e8]
fstp qword [ebp - 0x440]
fld qword [0x9db6e0]
fstp qword [ebp - 0x380]
fld qword [ebp - 0x388]
fmul qword [ebp - 0x380]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x448]
fsub qword [ebp - 0x380]
fstp qword [ebp - 0x448]
fld qword [ebp - 0x440]
fsub qword [ebp - 0x380]
fstp qword [ebp - 0x440]
fld qword [ebp - 0x440]
fadd qword [ebp - 0x380]
fstp qword [ebp - 0x440]
fld qword [ebp - 0x400]
fsub qword [ebp - 0x380]
fstp qword [ebp - 0x400]
fld qword [ebp - 0x440]
fmul qword [ebp - 0x380]
fstp qword [ebp - 0x440]
fld qword [ebp - 0x448]
fadd qword [ebp - 0x380]
fstp qword [ebp - 0x448]
fld qword [ebp - 0x388]
fcomp qword [ebp - 0x380]
fnstsw ax
test ah, 5
jp 0x4c72d9
fld qword [ebp - 0x3c8]
fadd qword [ebp - 0x400]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x408]
fadd qword [ebp - 0x448]
fstp qword [ebp - 0x408]
fld qword [ebp - 0x408]
fsub qword [ebp - 0x448]
fstp qword [ebp - 0x408]
fld qword [ebp - 0x440]
fmul qword [ebp - 0x380]
fstp qword [ebp - 0x440]
fld qword [ebp - 0x3c8]
fdiv qword [ebp - 0x400]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x3c8]
fmul qword [ebp - 0x400]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x408]
fdiv qword [ebp - 0x448]
fstp qword [ebp - 0x408]
fld qword [ebp - 0x448]
fsub qword [ebp - 0x3c8]
fstp qword [ebp - 0x448]
fld qword [ebp - 0x388]
fadd qword [ebp - 0x400]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x388]
fadd qword [ebp - 0x400]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x380]
fadd qword [ebp - 0x448]
fstp qword [ebp - 0x380]
fld qword [ebp - 0x380]
fadd qword [ebp - 0x448]
fstp qword [ebp - 0x380]
fld qword [ebp - 0x408]
fadd qword [ebp - 0x388]
fstp qword [ebp - 0x408]
fld qword [ebp - 0x3c8]
fadd qword [ebp - 0x440]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x400]
fcomp qword [ebp - 0x388]
fnstsw ax
test ah, 5
jp 0x4c7256
fld qword [ebp - 0x408]
fsub qword [ebp - 0x388]
fstp qword [ebp - 0x408]
fld qword [ebp - 0x388]
fmul qword [ebp - 0x400]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x380]
fsub qword [ebp - 0x448]
fstp qword [ebp - 0x380]
fld qword [ebp - 0x388]
fsub qword [ebp - 0x400]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x3c8]
fadd qword [ebp - 0x440]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x408]
fadd qword [ebp - 0x388]
fstp qword [ebp - 0x408]
fld qword [ebp - 0x380]
fdiv qword [ebp - 0x448]
fstp qword [ebp - 0x380]
jmp 0x4c72d4
fld qword [ebp - 0x440]
fdiv qword [ebp - 0x380]
fstp qword [ebp - 0x440]
fld qword [ebp - 0x380]
fdiv qword [ebp - 0x408]
fstp qword [ebp - 0x380]
fld qword [ebp - 0x448]
fmul qword [ebp - 0x388]
fstp qword [ebp - 0x448]
fld qword [ebp - 0x400]
fdiv qword [ebp - 0x440]
fstp qword [ebp - 0x400]
fld qword [ebp - 0x440]
fdiv qword [ebp - 0x380]
fstp qword [ebp - 0x440]
fld qword [ebp - 0x380]
fsub qword [ebp - 0x408]
fstp qword [ebp - 0x380]
fld qword [ebp - 0x440]
fmul qword [ebp - 0x380]
fstp qword [ebp - 0x440]
jmp 0x4c7366
fld qword [ebp - 0x380]
fmul qword [ebp - 0x448]
fstp qword [ebp - 0x380]
fld qword [ebp - 0x3c8]
fmul qword [ebp - 0x440]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x3c8]
fsub qword [ebp - 0x440]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x380]
fmul qword [ebp - 0x448]
fstp qword [ebp - 0x380]
fld qword [ebp - 0x408]
fadd qword [ebp - 0x388]
fstp qword [ebp - 0x408]
fld qword [ebp - 0x380]
fadd qword [ebp - 0x448]
fstp qword [ebp - 0x380]
fld qword [ebp - 0x408]
fmul qword [ebp - 0x388]
fstp qword [ebp - 0x408]
mov ecx, dword [ebp - 0x488]
shl ecx, 4
mov dword [ebp - 0x484], ecx
mov edx, dword [ebp - 0x3a8]
mov dword [ebp - 0x460], edx
mov eax, dword [ebp - 0x484]
or eax, dword [ebp - 0x460]
mov dword [ebp - 0x424], eax
mov cl, byte [ebp - 0x424]
mov byte [ebp - 0x3ed], cl
movzx edx, byte [ebp - 0x241]
mov al, byte [ebp + edx - 0x358]
mov byte [ebp - 0x47d], al
movzx ecx, byte [ebp - 0x36b]
movzx edx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp - 0x251]
add eax, edx
mov byte [ebp - 0x251], al
mov cl, byte [ebp - 0x36b]
add cl, 1
mov byte [ebp - 0x36b], cl
movzx edx, byte [ebp - 0x251]
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + edx - 0x358]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x361]
movzx eax, byte [ebp - 0x251]
mov cl, byte [ebp + edx - 0x358]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x36b]
movzx eax, byte [ebp - 0x361]
mov cl, byte [ebp + edx - 0x358]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x36b]
mov al, byte [ebp - 0x47d]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x47d]
movzx edx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp - 0x359]
add eax, edx
mov byte [ebp - 0x359], al
movzx ecx, byte [ebp - 0x3ed]
movzx edx, byte [ebp - 0x251]
movzx eax, byte [ebp + edx - 0x358]
movzx edx, byte [ebp - 0x36b]
movzx edx, byte [ebp + edx - 0x358]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x358]
xor ecx, eax
movzx edx, byte [ebp - 0x361]
movzx eax, byte [ebp + edx - 0x358]
movzx edx, byte [ebp - 0x241]
movzx edx, byte [ebp + edx - 0x358]
add eax, edx
movzx edx, byte [ebp - 0x359]
movzx edx, byte [ebp + edx - 0x358]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x358]
movzx edx, byte [ebp + eax - 0x358]
xor ecx, edx
mov byte [ebp - 0x361], cl
mov al, byte [ebp - 0x3ed]
mov byte [ebp - 0x241], al
mov cl, byte [ebp - 0x361]
mov byte [ebp - 0x459], cl
cmp dword [ebp - 0x434], 0
jle 0x4c750f
mov edx, dword [ebp - 0x434]
mov al, byte [ebp - 0x459]
mov byte [ebp + edx - 0x231], al
mov byte [ebp - 0x225], 0
jmp 0x4c754c
mov dword [ebp - 0x498], 0
jmp 0x4c7533
mov ecx, dword [ebp - 0x498]
add ecx, 1
mov dword [ebp - 0x498], ecx
cmp dword [ebp - 0x498], 0xc
jge 0x4c754c
mov edx, dword [ebp - 0x498]
mov byte [ebp + edx - 0x230], 0
jmp 0x4c7524
lea eax, [ebp - 0x230]
push eax
mov ecx, dword [0xa10a1c]
call fcn.00450e00
mov dword [ebp - 0x214], eax
push 0
push 0x80
push 3
push 0
push 1
push 0xa0000000
lea ecx, [ebp - 0x208]
push ecx
call dword [ebp - 0x214]
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0xffffffff
je 0x4c9488
push 0
mov edx, dword [ebp - 0x224]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x4b8], eax
mov dword [ebp - 0x4d4], 0
mov eax, dword [ebp - 0x4b8]
push eax
call fcn.0096d417
add esp, 4
mov dword [ebp - 0x6b8], eax
mov ecx, dword [ebp - 0x6b8]
mov dword [ebp - 0x4b4], ecx
mov dword [ebp - 0x49c], 0
mov dword [ebp - 0x4b0], 0
fldz
fstp qword [ebp - 0x4d0]
fldz
fstp qword [ebp - 0x4a8]
fldz
fstp qword [ebp - 0x4a8]
jmp 0x4c7616
fld qword [ebp - 0x4a8]
fadd qword [0x9d8650]
fstp qword [ebp - 0x4a8]
fld qword [0x9db6d8]
fcomp qword [ebp - 0x4a8]
fnstsw ax
test ah, 0x41
jne 0x4c769f
fld qword [0x9db6d0]
fmul qword [ebp - 0x4a8]
fmul qword [ebp - 0x4a8]
fld qword [ebp - 0x4a8]
fmul qword [ebp - 0x4a8]
fsubp st(1)
fld qword [0x9d9688]
fmul qword [ebp - 0x4a8]
fmul qword [ebp - 0x4a8]
fadd qword [0x9db6c8]
fdivp st(1)
fadd qword [ebp - 0x4d0]
fstp qword [ebp - 0x4d0]
fld qword [0x9db6c0]
fcomp qword [ebp - 0x4d0]
fnstsw ax
test ah, 5
jp 0x4c769a
fld qword [0x9db6b8]
fmul qword [ebp - 0x4a8]
fsubr qword [ebp - 0x4d0]
fstp qword [ebp - 0x4d0]
jmp 0x4c7604
fldz
fcomp qword [ebp - 0x4d0]
fnstsw ax
test ah, 0x41
jne 0x4c76dd
outsb dx, byte [esi]
sub byte cs:[esi + edi + 0x33], al
jns 0x4c76f3
pop ecx
dec eax
je 0x4c76e1
dec edi
sub eax, 0x39575570
push ebp
dec edx
inc ebx
sub al, 0x7e
jo 0x4c76ae
insb byte es:[edi], dx
out 0x65, al
loope 0x4c7732
call 0xe2b86544
jecxz 0x4c773c
call 0xe036653e
sbb eax, dword [eax]
add bh, al
test dword [ebx + edi*8 - 1], esp
inc esi
jbe 0x4c7732
mov dword [ebp - 0x49c], 0x4c76c6
mov dword [ebp - 0x4b0], 0x4c76ae
mov edx, dword [ebp - 0x49c]
mov dword [ebp - 0x4e0], edx
mov eax, dword [ebp - 0x4b0]
mov dword [ebp - 0x4dc], eax
mov byte [ebp - 0x5f9], 0x1c
mov dword [ebp - 0x5f0], 0
jmp 0x4c772b
invalid
add bh, al
test dword [eax - 5], edx
invalid
sti
invalid
mov ecx, dword [ebp - 0x5f0]
add ecx, 1
mov dword [ebp - 0x5f0], ecx
cmp dword [ebp - 0x5f0], 0x100
jae 0x4c774c
add dword [eax], eax
add byte [ebx + 0x15], dh
mov edx, dword [ebp - 0x5f0]
mov al, byte [ebp - 0x5f0]
mov byte [ebp + edx - 0x5e8], al
jmp 0x4c771c
dec dword [edx - 0x5ef7b]
dec dword [eax - 0x5e7ea7c]
invalid
mov dword [ebp - 0x4e4], 0
mov byte [ebp - 0x5fa], 0
mov dword [ebp - 0x5f0], 0xff
jmp 0x4c7778
mov ecx, dword [ebp - 0x5f0]
sub ecx, 1
mov dword [ebp - 0x5f0], ecx
cmp dword [ebp - 0x5f0], 0
jbe 0x4c7a8c
mov dword [ebp - 0x600], 0
mov dword [ebp - 0x608], 1
mov edx, dword [ebp - 0x608]
cmp edx, dword [ebp - 0x5f0]
jae 0x4c77b9
mov eax, dword [ebp - 0x608]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x608], ecx
jmp 0x4c7799
mov edx, dword [ebp - 0x4e4]
mov dword [ebp - 0x738], edx
cmp dword [ebp - 0x738], 3
ja case.default.0x4c77d8
mov eax, dword [ebp - 0x738]
jmp dword [eax*4 + 0x4c94b4]
movzx ecx, byte [ebp - 0x5fa]
movzx edx, byte [ebp + ecx - 0x5e8]
fld qword [ebp - 0x4d0]
fnstcw word [ebp - 0x73a]
movzx eax, word [ebp - 0x73a]
or eax, 0xc00
mov dword [ebp - 0x740], eax
fldcw word [ebp - 0x740]
fistp qword [ebp - 0x748]
fldcw word [ebp - 0x73a]
mov eax, dword [ebp - 0x748]
and eax, 0xff
add edx, eax
mov byte [ebp - 0x5fa], dl
jmp 0x4c7965
movzx ecx, byte [ebp - 0x5fa]
movzx edx, byte [ebp + ecx - 0x5e8]
fld qword [ebp - 0x4d0]
fnstcw word [ebp - 0x74a]
movzx eax, word [ebp - 0x74a]
or eax, 0xc00
mov dword [ebp - 0x750], eax
fldcw word [ebp - 0x750]
fistp qword [ebp - 0x758]
fldcw word [ebp - 0x74a]
mov eax, dword [ebp - 0x758]
shr eax, 8
and eax, 0xff
add edx, eax
mov byte [ebp - 0x5fa], dl
jmp 0x4c7965
movzx ecx, byte [ebp - 0x5fa]
movzx edx, byte [ebp + ecx - 0x5e8]
fld qword [ebp - 0x4d0]
fnstcw word [ebp - 0x75a]
movzx eax, word [ebp - 0x75a]
or eax, 0xc00
mov dword [ebp - 0x760], eax
fldcw word [ebp - 0x760]
fistp qword [ebp - 0x768]
fldcw word [ebp - 0x75a]
mov eax, dword [ebp - 0x768]
shr eax, 0x10
and eax, 0xff
add edx, eax
mov byte [ebp - 0x5fa], dl
jmp 0x4c7965
movzx ecx, byte [ebp - 0x5fa]
movzx edx, byte [ebp + ecx - 0x5e8]
fld qword [ebp - 0x4d0]
fnstcw word [ebp - 0x76a]
movzx eax, word [ebp - 0x76a]
or eax, 0xc00
mov dword [ebp - 0x770], eax
fldcw word [ebp - 0x770]
fistp qword [ebp - 0x778]
fldcw word [ebp - 0x76a]
mov eax, dword [ebp - 0x778]
shr eax, 0x18
and eax, 0xff
add edx, eax
mov byte [ebp - 0x5fa], dl
jmp 0x4c7965
movzx ecx, byte [ebp - 0x5fa]
movzx edx, byte [ebp + ecx - 0x5e8]
mov eax, dword [ebp - 0x4dc]
add eax, dword [ebp - 0x4e4]
movzx ecx, byte [eax - 4]
add edx, ecx
mov byte [ebp - 0x5fa], dl
mov edx, dword [ebp - 0x4e4]
add edx, 1
mov dword [ebp - 0x4e4], edx
movzx eax, byte [ebp - 0x5f9]
cmp dword [ebp - 0x4e4], eax
jb 0x4c79a3
mov dword [ebp - 0x4e4], 0
movzx ecx, byte [ebp - 0x5f9]
movzx edx, byte [ebp - 0x5fa]
add edx, ecx
mov byte [ebp - 0x5fa], dl
movzx eax, byte [ebp - 0x5fa]
and eax, dword [ebp - 0x608]
mov dword [ebp - 0x604], eax
mov ecx, dword [ebp - 0x600]
add ecx, 1
mov dword [ebp - 0x600], ecx
cmp dword [ebp - 0x600], 0xb
jbe 0x4c79e2
mov eax, dword [ebp - 0x604]
xor edx, edx
div dword [ebp - 0x5f0]
mov dword [ebp - 0x604], edx
mov edx, dword [ebp - 0x604]
cmp edx, dword [ebp - 0x5f0]
ja 0x4c77b9
mov eax, dword [ebp - 0x5f0]
cmp eax, dword [ebp - 0x604]
je 0x4c7a87
mov ecx, dword [ebp - 0x604]
movzx edx, byte [ebp + ecx - 0x5e8]
mov eax, dword [ebp - 0x5f0]
movzx ecx, byte [ebp + eax - 0x5e8]
xor ecx, edx
mov edx, dword [ebp - 0x5f0]
mov byte [ebp + edx - 0x5e8], cl
mov eax, dword [ebp - 0x5f0]
movzx ecx, byte [ebp + eax - 0x5e8]
mov edx, dword [ebp - 0x604]
movzx eax, byte [ebp + edx - 0x5e8]
xor eax, ecx
mov ecx, dword [ebp - 0x604]
mov byte [ebp + ecx - 0x5e8], al
mov edx, dword [ebp - 0x604]
movzx eax, byte [ebp + edx - 0x5e8]
mov ecx, dword [ebp - 0x5f0]
movzx edx, byte [ebp + ecx - 0x5e8]
xor edx, eax
mov eax, dword [ebp - 0x5f0]
mov byte [ebp + eax - 0x5e8], dl
jmp 0x4c7769
mov cl, byte [ebp - 0x5e7]
mov byte [ebp - 0x5fb], cl
mov dl, byte [ebp - 0x5e5]
mov byte [ebp - 0x4e5], dl
mov al, byte [ebp - 0x5e3]
mov byte [ebp - 0x5e9], al
mov cl, byte [ebp - 0x5e1]
mov byte [ebp - 0x5f1], cl
movzx edx, byte [ebp - 0x5fa]
mov al, byte [ebp + edx - 0x5e8]
mov byte [ebp - 0x4d5], al
mov dword [ebp - 0x5f8], 0x12
cmp dword [ebp - 0x5f8], 2
jle 0x4c9288
mov ecx, dword [ebp - 0x5f8]
and ecx, 1
jne 0x4c9288
mov dword [ebp - 0x65c], 0
mov dword [ebp - 0x658], 0
mov edx, dword [ebp - 0x658]
add edx, 1
mov dword [ebp - 0x658], edx
mov dword [ebp - 0x60c], 0
mov eax, dword [ebp - 0x65c]
shl eax, 1
mov dword [ebp - 0x60c], eax
mov dword [ebp - 0x67c], 0
mov ecx, dword [ebp - 0x4e0]
add ecx, dword [ebp - 0x60c]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x67c]
mov dword [ebp - 0x67c], edx
mov dword [ebp - 0x634], 0
mov eax, dword [ebp - 0x634]
add eax, 0x63
mov dword [ebp - 0x634], eax
mov dword [ebp - 0x640], 0
mov ecx, dword [ebp - 0x65c]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x640], edx
mov dword [ebp - 0x690], 0
mov eax, dword [ebp - 0x4e0]
add eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x690]
mov dword [ebp - 0x690], ecx
mov dword [ebp - 0x678], 0
mov edx, dword [ebp - 0x678]
add edx, 0xe0
mov dword [ebp - 0x678], edx
mov dword [ebp - 0x68c], 0
mov eax, dword [ebp - 0x67c]
sub eax, dword [ebp - 0x634]
add eax, dword [ebp - 0x68c]
mov dword [ebp - 0x68c], eax
mov dword [ebp - 0x624], 0
mov ecx, dword [ebp - 0x690]
sub ecx, dword [ebp - 0x678]
add ecx, dword [ebp - 0x624]
mov dword [ebp - 0x624], ecx
mov dword [ebp - 0x688], 0
mov edx, dword [ebp - 0x68c]
shl edx, 4
mov dword [ebp - 0x688], edx
mov dword [ebp - 0x674], 0
mov eax, dword [ebp - 0x624]
mov dword [ebp - 0x674], eax
mov dword [ebp - 0x654], 0
mov ecx, dword [ebp - 0x688]
or ecx, dword [ebp - 0x674]
mov dword [ebp - 0x654], ecx
mov byte [ebp - 0x639], 0
mov dl, byte [ebp - 0x654]
mov byte [ebp - 0x639], dl
mov byte [ebp - 0x681], 0
movzx eax, byte [ebp - 0x4d5]
mov cl, byte [ebp + eax - 0x5e8]
mov byte [ebp - 0x681], cl
movzx edx, byte [ebp - 0x5fb]
movzx eax, byte [ebp + edx - 0x5e8]
movzx ecx, byte [ebp - 0x4e5]
add ecx, eax
mov byte [ebp - 0x4e5], cl
mov dl, byte [ebp - 0x5fb]
add dl, 1
mov byte [ebp - 0x5fb], dl
movzx eax, byte [ebp - 0x4e5]
movzx ecx, byte [ebp - 0x4d5]
mov dl, byte [ebp + eax - 0x5e8]
mov byte [ebp + ecx - 0x5e8], dl
fld qword [0x9db6b0]
fstp qword [ebp - 0x620]
fld qword [0x9db6a8]
fstp qword [ebp - 0x670]
fld qword [0x9db6a0]
fstp qword [ebp - 0x650]
fld qword [ebp - 0x620]
fadd qword [ebp - 0x650]
fstp qword [ebp - 0x620]
fld qword [ebp - 0x670]
fadd qword [ebp - 0x650]
fstp qword [ebp - 0x670]
fld qword [ebp - 0x670]
fmul qword [ebp - 0x650]
fstp qword [ebp - 0x670]
fld qword [ebp - 0x670]
fcomp qword [ebp - 0x650]
fnstsw ax
test ah, 5
jp 0x4c7e30
fld qword [ebp - 0x650]
fsub qword [ebp - 0x620]
fstp qword [ebp - 0x650]
fld qword [ebp - 0x650]
fadd qword [ebp - 0x620]
fstp qword [ebp - 0x650]
fld qword [ebp - 0x620]
fsub qword [ebp - 0x670]
fstp qword [ebp - 0x620]
fld qword [ebp - 0x620]
fadd qword [ebp - 0x670]
fstp qword [ebp - 0x620]
fld qword [ebp - 0x650]
fadd qword [ebp - 0x620]
fstp qword [ebp - 0x650]
fld qword [ebp - 0x620]
fadd qword [ebp - 0x670]
fstp qword [ebp - 0x620]
fld qword [ebp - 0x620]
fcomp qword [ebp - 0x670]
fnstsw ax
test ah, 0x41
jne 0x4c7df8
fld qword [ebp - 0x620]
fsub qword [ebp - 0x670]
fstp qword [ebp - 0x620]
fld qword [ebp - 0x670]
fmul qword [ebp - 0x650]
fstp qword [ebp - 0x670]
fld qword [ebp - 0x620]
fdiv qword [ebp - 0x670]
fstp qword [ebp - 0x620]
jmp 0x4c7e2e
fld qword [ebp - 0x670]
fadd qword [ebp - 0x650]
fstp qword [ebp - 0x670]
fld qword [ebp - 0x650]
fmul qword [ebp - 0x620]
fstp qword [ebp - 0x650]
fld qword [ebp - 0x670]
fsub qword [ebp - 0x650]
fstp qword [ebp - 0x670]
jmp 0x4c7e82
fld qword [ebp - 0x670]
fsub qword [ebp - 0x620]
fstp qword [ebp - 0x670]
fld qword [ebp - 0x620]
fmul qword [ebp - 0x650]
fstp qword [ebp - 0x620]
fld qword [ebp - 0x670]
fadd qword [ebp - 0x620]
fstp qword [ebp - 0x670]
movzx eax, byte [ebp - 0x5f1]
movzx ecx, byte [ebp - 0x4e5]
mov dl, byte [ebp + eax - 0x5e8]
mov byte [ebp + ecx - 0x5e8], dl
movzx eax, byte [ebp - 0x5fb]
movzx ecx, byte [ebp - 0x5f1]
mov dl, byte [ebp + eax - 0x5e8]
mov byte [ebp + ecx - 0x5e8], dl
movzx eax, byte [ebp - 0x5fb]
mov cl, byte [ebp - 0x681]
mov byte [ebp + eax - 0x5e8], cl
movzx edx, byte [ebp - 0x681]
movzx eax, byte [ebp + edx - 0x5e8]
movzx ecx, byte [ebp - 0x5e9]
add ecx, eax
mov byte [ebp - 0x5e9], cl
movzx edx, byte [ebp - 0x639]
movzx eax, byte [ebp - 0x4e5]
movzx ecx, byte [ebp + eax - 0x5e8]
movzx eax, byte [ebp - 0x5fb]
movzx eax, byte [ebp + eax - 0x5e8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5e8]
xor edx, ecx
movzx eax, byte [ebp - 0x5f1]
movzx ecx, byte [ebp + eax - 0x5e8]
movzx eax, byte [ebp - 0x4d5]
movzx eax, byte [ebp + eax - 0x5e8]
add ecx, eax
movzx eax, byte [ebp - 0x5e9]
movzx eax, byte [ebp + eax - 0x5e8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5e8]
movzx eax, byte [ebp + ecx - 0x5e8]
xor edx, eax
mov byte [ebp - 0x5f1], dl
mov cl, byte [ebp - 0x639]
mov byte [ebp - 0x4d5], cl
mov dl, byte [ebp - 0x5f1]
mov byte [ebp - 0x665], dl
cmp dword [ebp - 0x65c], 0
jle 0x4c7f8a
mov eax, dword [ebp - 0x65c]
mov cl, byte [ebp - 0x665]
mov byte [ebp + eax - 0x4c5], cl
mov edx, dword [ebp - 0x65c]
add edx, 1
mov dword [ebp - 0x65c], edx
fld dword [0x9db698]
fstp dword [ebp - 0x630]
fld dword [0x9db694]
fstp dword [ebp - 0x614]
fld dword [0x9db690]
fstp dword [ebp - 0x664]
fld dword [ebp - 0x630]
fmul dword [ebp - 0x664]
fstp dword [ebp - 0x630]
fld dword [ebp - 0x630]
fsub dword [ebp - 0x664]
fstp dword [ebp - 0x630]
fld dword [ebp - 0x614]
fsub dword [ebp - 0x664]
fstp dword [ebp - 0x614]
fld dword [ebp - 0x614]
fld dword [ebp - 0x630]
fcompp
fnstsw ax
test ah, 5
jp 0x4c8040
fld dword [ebp - 0x614]
fmul dword [ebp - 0x664]
fstp dword [ebp - 0x614]
fld dword [ebp - 0x630]
fdiv dword [ebp - 0x614]
fstp dword [ebp - 0x630]
fld dword [ebp - 0x614]
fdiv dword [ebp - 0x664]
fstp dword [ebp - 0x614]
jmp 0x4c8085
fld dword [ebp - 0x664]
fmul dword [ebp - 0x630]
fstp dword [ebp - 0x664]
fld dword [ebp - 0x614]
fsub dword [ebp - 0x664]
fstp dword [ebp - 0x614]
fld dword [ebp - 0x664]
fsub dword [ebp - 0x630]
fstp dword [ebp - 0x664]
mov eax, dword [ebp - 0x658]
add eax, 1
mov dword [ebp - 0x658], eax
mov ecx, dword [ebp - 0x65c]
shl ecx, 1
mov dword [ebp - 0x60c], ecx
mov edx, dword [ebp - 0x4e0]
add edx, dword [ebp - 0x60c]
movzx eax, byte [edx]
mov dword [ebp - 0x67c], eax
mov dword [ebp - 0x634], 0x63
mov ecx, dword [ebp - 0x65c]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x640], edx
mov eax, dword [ebp - 0x4e0]
add eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
mov dword [ebp - 0x690], ecx
mov dword [ebp - 0x678], 0xe0
mov edx, dword [ebp - 0x67c]
sub edx, dword [ebp - 0x634]
mov dword [ebp - 0x68c], edx
mov eax, dword [ebp - 0x690]
sub eax, dword [ebp - 0x678]
mov dword [ebp - 0x624], eax
mov ecx, dword [ebp - 0x68c]
shl ecx, 4
mov dword [ebp - 0x688], ecx
mov edx, dword [ebp - 0x624]
mov dword [ebp - 0x674], edx
mov eax, dword [ebp - 0x688]
or eax, dword [ebp - 0x674]
mov dword [ebp - 0x654], eax
mov cl, byte [ebp - 0x654]
mov byte [ebp - 0x639], cl
movzx edx, byte [ebp - 0x4d5]
mov al, byte [ebp + edx - 0x5e8]
mov byte [ebp - 0x681], al
movzx ecx, byte [ebp - 0x5fb]
movzx edx, byte [ebp + ecx - 0x5e8]
movzx eax, byte [ebp - 0x4e5]
add eax, edx
mov byte [ebp - 0x4e5], al
mov cl, byte [ebp - 0x5fb]
add cl, 1
mov byte [ebp - 0x5fb], cl
movzx edx, byte [ebp - 0x4e5]
movzx eax, byte [ebp - 0x4d5]
mov cl, byte [ebp + edx - 0x5e8]
mov byte [ebp + eax - 0x5e8], cl
movzx edx, byte [ebp - 0x5f1]
movzx eax, byte [ebp - 0x4e5]
mov cl, byte [ebp + edx - 0x5e8]
mov byte [ebp + eax - 0x5e8], cl
movzx edx, byte [ebp - 0x5fb]
movzx eax, byte [ebp - 0x5f1]
mov cl, byte [ebp + edx - 0x5e8]
mov byte [ebp + eax - 0x5e8], cl
movzx edx, byte [ebp - 0x5fb]
mov al, byte [ebp - 0x681]
mov byte [ebp + edx - 0x5e8], al
movzx ecx, byte [ebp - 0x681]
movzx edx, byte [ebp + ecx - 0x5e8]
movzx eax, byte [ebp - 0x5e9]
add eax, edx
mov byte [ebp - 0x5e9], al
movzx ecx, byte [ebp - 0x639]
movzx edx, byte [ebp - 0x4e5]
movzx eax, byte [ebp + edx - 0x5e8]
movzx edx, byte [ebp - 0x5fb]
movzx edx, byte [ebp + edx - 0x5e8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5e8]
xor ecx, eax
movzx edx, byte [ebp - 0x5f1]
movzx eax, byte [ebp + edx - 0x5e8]
movzx edx, byte [ebp - 0x4d5]
movzx edx, byte [ebp + edx - 0x5e8]
add eax, edx
movzx edx, byte [ebp - 0x5e9]
movzx edx, byte [ebp + edx - 0x5e8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5e8]
movzx edx, byte [ebp + eax - 0x5e8]
xor ecx, edx
mov byte [ebp - 0x5f1], cl
mov al, byte [ebp - 0x639]
mov byte [ebp - 0x4d5], al
mov cl, byte [ebp - 0x5f1]
mov byte [ebp - 0x665], cl
cmp dword [ebp - 0x65c], 0
jle 0x4c82bd
mov edx, dword [ebp - 0x65c]
mov al, byte [ebp - 0x665]
mov byte [ebp + edx - 0x4c5], al
mov ecx, dword [ebp - 0x65c]
add ecx, 1
mov dword [ebp - 0x65c], ecx
mov edx, dword [ebp - 0x658]
add edx, 1
mov dword [ebp - 0x658], edx
mov eax, dword [ebp - 0x65c]
shl eax, 1
mov dword [ebp - 0x60c], eax
mov ecx, dword [ebp - 0x4e0]
add ecx, dword [ebp - 0x60c]
movzx edx, byte [ecx]
mov dword [ebp - 0x67c], edx
fld dword [0x9db68c]
fstp dword [ebp - 0x644]
fld dword [0x9db688]
fstp dword [ebp - 0x62c]
fld dword [0x9db684]
fstp dword [ebp - 0x610]
fld dword [0x9db680]
fstp dword [ebp - 0x660]
fld dword [0x9db67c]
fstp dword [ebp - 0x638]
fld dword [0x9db678]
fstp dword [ebp - 0x628]
fld dword [0x9db674]
fstp dword [ebp - 0x680]
fld dword [ebp - 0x62c]
fsub dword [ebp - 0x680]
fstp dword [ebp - 0x62c]
fld dword [ebp - 0x660]
fadd dword [ebp - 0x680]
fstp dword [ebp - 0x660]
fld dword [ebp - 0x638]
fadd dword [ebp - 0x680]
fstp dword [ebp - 0x638]
fld dword [ebp - 0x638]
fadd dword [ebp - 0x680]
fstp dword [ebp - 0x638]
fld dword [ebp - 0x644]
fsub dword [ebp - 0x680]
fstp dword [ebp - 0x644]
fld dword [ebp - 0x660]
fadd dword [ebp - 0x680]
fstp dword [ebp - 0x660]
fld dword [ebp - 0x62c]
fmul dword [ebp - 0x680]
fstp dword [ebp - 0x62c]
fld dword [ebp - 0x680]
fld dword [ebp - 0x62c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4c8473
fld dword [ebp - 0x644]
fmul dword [ebp - 0x610]
fstp dword [ebp - 0x644]
fld dword [ebp - 0x610]
fmul dword [ebp - 0x638]
fstp dword [ebp - 0x610]
fld dword [ebp - 0x638]
fsub dword [ebp - 0x680]
fstp dword [ebp - 0x638]
fld dword [ebp - 0x660]
fmul dword [ebp - 0x628]
fstp dword [ebp - 0x660]
fld dword [ebp - 0x62c]
fsub dword [ebp - 0x660]
fstp dword [ebp - 0x62c]
fld dword [ebp - 0x680]
fadd dword [ebp - 0x62c]
fstp dword [ebp - 0x680]
fld dword [ebp - 0x680]
fmul dword [ebp - 0x62c]
fstp dword [ebp - 0x680]
mov dword [ebp - 0x634], 0x63
jmp 0x4c84f1
fld dword [ebp - 0x660]
fsub dword [ebp - 0x638]
fstp dword [ebp - 0x660]
fld dword [ebp - 0x644]
fmul dword [ebp - 0x62c]
fstp dword [ebp - 0x644]
fld dword [ebp - 0x660]
fdiv dword [ebp - 0x638]
fstp dword [ebp - 0x660]
fld dword [ebp - 0x680]
fsub dword [ebp - 0x644]
fstp dword [ebp - 0x680]
fld dword [ebp - 0x62c]
fdiv dword [ebp - 0x610]
fstp dword [ebp - 0x62c]
fld dword [ebp - 0x610]
fdiv dword [ebp - 0x660]
fstp dword [ebp - 0x610]
fld dword [ebp - 0x610]
fmul dword [ebp - 0x660]
fstp dword [ebp - 0x610]
mov eax, dword [ebp - 0x65c]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x640], ecx
mov edx, dword [ebp - 0x4e0]
add edx, dword [ebp - 0x640]
movzx eax, byte [edx]
mov dword [ebp - 0x690], eax
mov dword [ebp - 0x678], 0xe0
mov ecx, dword [ebp - 0x67c]
sub ecx, dword [ebp - 0x634]
mov dword [ebp - 0x68c], ecx
mov edx, dword [ebp - 0x690]
sub edx, dword [ebp - 0x678]
mov dword [ebp - 0x624], edx
mov eax, dword [ebp - 0x68c]
shl eax, 4
mov dword [ebp - 0x688], eax
mov ecx, dword [ebp - 0x624]
mov dword [ebp - 0x674], ecx
mov edx, dword [ebp - 0x688]
or edx, dword [ebp - 0x674]
mov dword [ebp - 0x654], edx
mov al, byte [ebp - 0x654]
mov byte [ebp - 0x639], al
movzx ecx, byte [ebp - 0x4d5]
mov dl, byte [ebp + ecx - 0x5e8]
mov byte [ebp - 0x681], dl
movzx eax, byte [ebp - 0x5fb]
movzx ecx, byte [ebp + eax - 0x5e8]
movzx edx, byte [ebp - 0x4e5]
add edx, ecx
mov byte [ebp - 0x4e5], dl
mov al, byte [ebp - 0x5fb]
add al, 1
mov byte [ebp - 0x5fb], al
movzx ecx, byte [ebp - 0x4e5]
movzx edx, byte [ebp - 0x4d5]
mov al, byte [ebp + ecx - 0x5e8]
mov byte [ebp + edx - 0x5e8], al
movzx ecx, byte [ebp - 0x5f1]
movzx edx, byte [ebp - 0x4e5]
mov al, byte [ebp + ecx - 0x5e8]
mov byte [ebp + edx - 0x5e8], al
movzx ecx, byte [ebp - 0x5fb]
movzx edx, byte [ebp - 0x5f1]
mov al, byte [ebp + ecx - 0x5e8]
mov byte [ebp + edx - 0x5e8], al
movzx ecx, byte [ebp - 0x5fb]
mov dl, byte [ebp - 0x681]
mov byte [ebp + ecx - 0x5e8], dl
movzx eax, byte [ebp - 0x681]
movzx ecx, byte [ebp + eax - 0x5e8]
movzx edx, byte [ebp - 0x5e9]
add edx, ecx
mov byte [ebp - 0x5e9], dl
movzx eax, byte [ebp - 0x639]
movzx ecx, byte [ebp - 0x4e5]
movzx edx, byte [ebp + ecx - 0x5e8]
movzx ecx, byte [ebp - 0x5fb]
movzx ecx, byte [ebp + ecx - 0x5e8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5e8]
xor eax, edx
movzx ecx, byte [ebp - 0x5f1]
movzx edx, byte [ebp + ecx - 0x5e8]
movzx ecx, byte [ebp - 0x4d5]
movzx ecx, byte [ebp + ecx - 0x5e8]
add edx, ecx
movzx ecx, byte [ebp - 0x5e9]
movzx ecx, byte [ebp + ecx - 0x5e8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5e8]
movzx ecx, byte [ebp + edx - 0x5e8]
xor eax, ecx
mov byte [ebp - 0x5f1], al
mov dl, byte [ebp - 0x639]
mov byte [ebp - 0x4d5], dl
mov al, byte [ebp - 0x5f1]
mov byte [ebp - 0x665], al
cmp dword [ebp - 0x65c], 0
jle 0x4c86fd
mov ecx, dword [ebp - 0x65c]
mov dl, byte [ebp - 0x665]
mov byte [ebp + ecx - 0x4c5], dl
mov eax, dword [ebp - 0x658]
add eax, 2
mov dword [ebp - 0x658], eax
mov ecx, dword [ebp - 0x65c]
add ecx, 1
mov dword [ebp - 0x694], ecx
jmp 0x4c872c
mov edx, dword [ebp - 0x694]
add edx, 1
mov dword [ebp - 0x694], edx
mov eax, dword [ebp - 0x694]
cmp eax, dword [ebp - 0x658]
jge 0x4c898c
mov ecx, dword [ebp - 0x65c]
add ecx, 1
mov dword [ebp - 0x65c], ecx
mov edx, dword [ebp - 0x65c]
shl edx, 1
mov dword [ebp - 0x60c], edx
mov eax, dword [ebp - 0x4e0]
add eax, dword [ebp - 0x60c]
movzx ecx, byte [eax]
mov dword [ebp - 0x67c], ecx
mov dword [ebp - 0x634], 0x63
mov edx, dword [ebp - 0x65c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x640], eax
mov ecx, dword [ebp - 0x4e0]
add ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
mov dword [ebp - 0x690], edx
mov dword [ebp - 0x678], 0xe0
mov eax, dword [ebp - 0x67c]
sub eax, dword [ebp - 0x634]
mov dword [ebp - 0x68c], eax
mov ecx, dword [ebp - 0x690]
sub ecx, dword [ebp - 0x678]
mov dword [ebp - 0x624], ecx
mov edx, dword [ebp - 0x68c]
shl edx, 4
mov dword [ebp - 0x688], edx
mov eax, dword [ebp - 0x624]
mov dword [ebp - 0x674], eax
mov ecx, dword [ebp - 0x688]
or ecx, dword [ebp - 0x674]
mov dword [ebp - 0x654], ecx
mov dl, byte [ebp - 0x654]
mov byte [ebp - 0x639], dl
movzx eax, byte [ebp - 0x4d5]
mov cl, byte [ebp + eax - 0x5e8]
mov byte [ebp - 0x681], cl
movzx edx, byte [ebp - 0x5fb]
movzx eax, byte [ebp + edx - 0x5e8]
movzx ecx, byte [ebp - 0x4e5]
add ecx, eax
mov byte [ebp - 0x4e5], cl
mov dl, byte [ebp - 0x5fb]
add dl, 1
mov byte [ebp - 0x5fb], dl
movzx eax, byte [ebp - 0x4e5]
movzx ecx, byte [ebp - 0x4d5]
mov dl, byte [ebp + eax - 0x5e8]
mov byte [ebp + ecx - 0x5e8], dl
movzx eax, byte [ebp - 0x5f1]
movzx ecx, byte [ebp - 0x4e5]
mov dl, byte [ebp + eax - 0x5e8]
mov byte [ebp + ecx - 0x5e8], dl
movzx eax, byte [ebp - 0x5fb]
movzx ecx, byte [ebp - 0x5f1]
mov dl, byte [ebp + eax - 0x5e8]
mov byte [ebp + ecx - 0x5e8], dl
movzx eax, byte [ebp - 0x5fb]
mov cl, byte [ebp - 0x681]
mov byte [ebp + eax - 0x5e8], cl
movzx edx, byte [ebp - 0x681]
movzx eax, byte [ebp + edx - 0x5e8]
movzx ecx, byte [ebp - 0x5e9]
add ecx, eax
mov byte [ebp - 0x5e9], cl
movzx edx, byte [ebp - 0x639]
movzx eax, byte [ebp - 0x4e5]
movzx ecx, byte [ebp + eax - 0x5e8]
movzx eax, byte [ebp - 0x5fb]
movzx eax, byte [ebp + eax - 0x5e8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5e8]
xor edx, ecx
movzx eax, byte [ebp - 0x5f1]
movzx ecx, byte [ebp + eax - 0x5e8]
movzx eax, byte [ebp - 0x4d5]
movzx eax, byte [ebp + eax - 0x5e8]
add ecx, eax
movzx eax, byte [ebp - 0x5e9]
movzx eax, byte [ebp + eax - 0x5e8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5e8]
movzx eax, byte [ebp + ecx - 0x5e8]
xor edx, eax
mov byte [ebp - 0x5f1], dl
mov cl, byte [ebp - 0x639]
mov byte [ebp - 0x4d5], cl
mov dl, byte [ebp - 0x5f1]
mov byte [ebp - 0x665], dl
cmp dword [ebp - 0x65c], 0
jle 0x4c8987
mov eax, dword [ebp - 0x65c]
mov cl, byte [ebp - 0x665]
mov byte [ebp + eax - 0x4c5], cl
jmp 0x4c871d
mov edx, dword [ebp - 0x658]
add edx, 1
mov dword [ebp - 0x658], edx
mov eax, dword [ebp - 0x65c]
add eax, 1
mov dword [ebp - 0x65c], eax
mov ecx, dword [ebp - 0x658]
add ecx, 1
mov dword [ebp - 0x658], ecx
mov edx, dword [ebp - 0x65c]
shl edx, 1
mov dword [ebp - 0x60c], edx
mov eax, dword [ebp - 0x4e0]
add eax, dword [ebp - 0x60c]
movzx ecx, byte [eax]
mov dword [ebp - 0x67c], ecx
mov dword [ebp - 0x634], 0x63
mov edx, dword [ebp - 0x65c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x640], eax
mov ecx, dword [ebp - 0x4e0]
add ecx, dword [ebp - 0x640]
movzx edx, byte [ecx]
mov dword [ebp - 0x690], edx
mov dword [ebp - 0x678], 0xe0
mov eax, dword [ebp - 0x67c]
sub eax, dword [ebp - 0x634]
mov dword [ebp - 0x68c], eax
mov ecx, dword [ebp - 0x690]
sub ecx, dword [ebp - 0x678]
mov dword [ebp - 0x624], ecx
mov edx, dword [ebp - 0x68c]
shl edx, 4
mov dword [ebp - 0x688], edx
mov eax, dword [ebp - 0x624]
mov dword [ebp - 0x674], eax
mov ecx, dword [ebp - 0x688]
or ecx, dword [ebp - 0x674]
mov dword [ebp - 0x654], ecx
mov dl, byte [ebp - 0x654]
mov byte [ebp - 0x639], dl
movzx eax, byte [ebp - 0x4d5]
mov cl, byte [ebp + eax - 0x5e8]
mov byte [ebp - 0x681], cl
movzx edx, byte [ebp - 0x5fb]
movzx eax, byte [ebp + edx - 0x5e8]
movzx ecx, byte [ebp - 0x4e5]
add ecx, eax
mov byte [ebp - 0x4e5], cl
mov dl, byte [ebp - 0x5fb]
add dl, 1
mov byte [ebp - 0x5fb], dl
movzx eax, byte [ebp - 0x4e5]
movzx ecx, byte [ebp - 0x4d5]
mov dl, byte [ebp + eax - 0x5e8]
mov byte [ebp + ecx - 0x5e8], dl
movzx eax, byte [ebp - 0x5f1]
movzx ecx, byte [ebp - 0x4e5]
mov dl, byte [ebp + eax - 0x5e8]
mov byte [ebp + ecx - 0x5e8], dl
movzx eax, byte [ebp - 0x5fb]
movzx ecx, byte [ebp - 0x5f1]
mov dl, byte [ebp + eax - 0x5e8]
mov byte [ebp + ecx - 0x5e8], dl
movzx eax, byte [ebp - 0x5fb]
mov cl, byte [ebp - 0x681]
mov byte [ebp + eax - 0x5e8], cl
movzx edx, byte [ebp - 0x681]
movzx eax, byte [ebp + edx - 0x5e8]
movzx ecx, byte [ebp - 0x5e9]
add ecx, eax
mov byte [ebp - 0x5e9], cl
movzx edx, byte [ebp - 0x639]
movzx eax, byte [ebp - 0x4e5]
movzx ecx, byte [ebp + eax - 0x5e8]
movzx eax, byte [ebp - 0x5fb]
movzx eax, byte [ebp + eax - 0x5e8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5e8]
xor edx, ecx
movzx eax, byte [ebp - 0x5f1]
movzx ecx, byte [ebp + eax - 0x5e8]
movzx eax, byte [ebp - 0x4d5]
movzx eax, byte [ebp + eax - 0x5e8]
add ecx, eax
movzx eax, byte [ebp - 0x5e9]
movzx eax, byte [ebp + eax - 0x5e8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5e8]
movzx eax, byte [ebp + ecx - 0x5e8]
xor edx, eax
mov byte [ebp - 0x5f1], dl
mov cl, byte [ebp - 0x639]
mov byte [ebp - 0x4d5], cl
mov dl, byte [ebp - 0x5f1]
mov byte [ebp - 0x665], dl
cmp dword [ebp - 0x65c], 0
jle 0x4c8bf3
mov eax, dword [ebp - 0x65c]
mov cl, byte [ebp - 0x665]
mov byte [ebp + eax - 0x4c5], cl
mov edx, dword [ebp - 0x658]
add edx, 2
mov dword [ebp - 0x658], edx
mov eax, dword [ebp - 0x65c]
add eax, 1
mov dword [ebp - 0x698], eax
jmp 0x4c8c22
mov ecx, dword [ebp - 0x698]
add ecx, 1
mov dword [ebp - 0x698], ecx
mov edx, dword [ebp - 0x698]
cmp edx, dword [ebp - 0x658]
jge 0x4c901a
mov eax, dword [ebp - 0x65c]
add eax, 1
mov dword [ebp - 0x65c], eax
mov ecx, dword [ebp - 0x65c]
shl ecx, 1
mov dword [ebp - 0x60c], ecx
mov edx, dword [ebp - 0x4e0]
add edx, dword [ebp - 0x60c]
movzx eax, byte [edx]
mov dword [ebp - 0x67c], eax
mov dword [ebp - 0x634], 0x63
mov ecx, dword [ebp - 0x65c]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x640], edx
mov eax, dword [ebp - 0x4e0]
add eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
mov dword [ebp - 0x690], ecx
mov dword [ebp - 0x678], 0xe0
mov edx, dword [ebp - 0x67c]
sub edx, dword [ebp - 0x634]
mov dword [ebp - 0x68c], edx
mov eax, dword [ebp - 0x690]
sub eax, dword [ebp - 0x678]
mov dword [ebp - 0x624], eax
mov ecx, dword [ebp - 0x68c]
shl ecx, 4
mov dword [ebp - 0x688], ecx
mov edx, dword [ebp - 0x624]
mov dword [ebp - 0x674], edx
mov eax, dword [ebp - 0x688]
or eax, dword [ebp - 0x674]
mov dword [ebp - 0x654], eax
mov cl, byte [ebp - 0x654]
mov byte [ebp - 0x639], cl
movzx edx, byte [ebp - 0x4d5]
mov al, byte [ebp + edx - 0x5e8]
mov byte [ebp - 0x681], al
movzx ecx, byte [ebp - 0x5fb]
movzx edx, byte [ebp + ecx - 0x5e8]
movzx eax, byte [ebp - 0x4e5]
add eax, edx
mov byte [ebp - 0x4e5], al
mov cl, byte [ebp - 0x5fb]
add cl, 1
mov byte [ebp - 0x5fb], cl
movzx edx, byte [ebp - 0x4e5]
movzx eax, byte [ebp - 0x4d5]
mov cl, byte [ebp + edx - 0x5e8]
mov byte [ebp + eax - 0x5e8], cl
movzx edx, byte [ebp - 0x5f1]
movzx eax, byte [ebp - 0x4e5]
mov cl, byte [ebp + edx - 0x5e8]
mov byte [ebp + eax - 0x5e8], cl
movzx edx, byte [ebp - 0x5fb]
movzx eax, byte [ebp - 0x5f1]
mov cl, byte [ebp + edx - 0x5e8]
mov byte [ebp + eax - 0x5e8], cl
movzx edx, byte [ebp - 0x5fb]
mov al, byte [ebp - 0x681]
mov byte [ebp + edx - 0x5e8], al
fld dword [0x9db670]
fstp dword [ebp - 0x6a4]
fld dword [0x9db66c]
fstp dword [ebp - 0x6a0]
fld dword [0x9db668]
fstp dword [ebp - 0x69c]
fld dword [ebp - 0x6a0]
fadd dword [ebp - 0x69c]
fstp dword [ebp - 0x6a0]
fld dword [ebp - 0x6a0]
fsub dword [ebp - 0x69c]
fstp dword [ebp - 0x6a0]
fld dword [ebp - 0x6a4]
fsub dword [ebp - 0x69c]
fstp dword [ebp - 0x6a4]
fld dword [ebp - 0x69c]
fld dword [ebp - 0x6a0]
fcompp
fnstsw ax
test ah, 5
jp 0x4c8f09
fld dword [ebp - 0x6a0]
fadd dword [ebp - 0x6a4]
fstp dword [ebp - 0x6a0]
fld dword [ebp - 0x6a0]
fmul dword [ebp - 0x6a4]
fstp dword [ebp - 0x6a0]
fld dword [ebp - 0x6a4]
fsub dword [ebp - 0x69c]
fstp dword [ebp - 0x6a4]
fld dword [ebp - 0x6a4]
fsub dword [ebp - 0x69c]
fstp dword [ebp - 0x6a4]
fld dword [ebp - 0x69c]
fadd dword [ebp - 0x6a0]
fstp dword [ebp - 0x69c]
fld dword [ebp - 0x6a0]
fdiv dword [ebp - 0x6a4]
fstp dword [ebp - 0x6a0]
fld dword [ebp - 0x6a4]
fld dword [ebp - 0x69c]
fcompp
fnstsw ax
test ah, 5
jp 0x4c8ed1
fld dword [ebp - 0x69c]
fmul dword [ebp - 0x6a0]
fstp dword [ebp - 0x69c]
fld dword [ebp - 0x69c]
fdiv dword [ebp - 0x6a0]
fstp dword [ebp - 0x69c]
fld dword [ebp - 0x6a0]
fadd dword [ebp - 0x6a4]
fstp dword [ebp - 0x6a0]
jmp 0x4c8f07
fld dword [ebp - 0x6a4]
fadd dword [ebp - 0x69c]
fstp dword [ebp - 0x6a4]
fld dword [ebp - 0x69c]
fmul dword [ebp - 0x6a0]
fstp dword [ebp - 0x69c]
fld dword [ebp - 0x69c]
fadd dword [ebp - 0x6a0]
fstp dword [ebp - 0x69c]
jmp 0x4c8f5d
fld dword [ebp - 0x6a4]
fadd dword [ebp - 0x69c]
fstp dword [ebp - 0x6a4]
fld dword [ebp - 0x6a4]
fadd dword [ebp - 0x69c]
fstp dword [ebp - 0x6a4]
fld dword [ebp - 0x69c]
fmul dword [ebp - 0x6a0]
fstp dword [ebp - 0x69c]
movzx ecx, byte [ebp - 0x681]
movzx edx, byte [ebp + ecx - 0x5e8]
movzx eax, byte [ebp - 0x5e9]
add eax, edx
mov byte [ebp - 0x5e9], al
movzx ecx, byte [ebp - 0x639]
movzx edx, byte [ebp - 0x4e5]
movzx eax, byte [ebp + edx - 0x5e8]
movzx edx, byte [ebp - 0x5fb]
movzx edx, byte [ebp + edx - 0x5e8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5e8]
xor ecx, eax
movzx edx, byte [ebp - 0x5f1]
movzx eax, byte [ebp + edx - 0x5e8]
movzx edx, byte [ebp - 0x4d5]
movzx edx, byte [ebp + edx - 0x5e8]
add eax, edx
movzx edx, byte [ebp - 0x5e9]
movzx edx, byte [ebp + edx - 0x5e8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5e8]
movzx edx, byte [ebp + eax - 0x5e8]
xor ecx, edx
mov byte [ebp - 0x5f1], cl
mov al, byte [ebp - 0x639]
mov byte [ebp - 0x4d5], al
mov cl, byte [ebp - 0x5f1]
mov byte [ebp - 0x665], cl
cmp dword [ebp - 0x65c], 0
jle 0x4c9015
mov edx, dword [ebp - 0x65c]
mov al, byte [ebp - 0x665]
mov byte [ebp + edx - 0x4c5], al
jmp 0x4c8c13
mov ecx, dword [ebp - 0x658]
add ecx, 1
mov dword [ebp - 0x658], ecx
mov edx, dword [ebp - 0x65c]
add edx, 1
mov dword [ebp - 0x65c], edx
mov eax, dword [ebp - 0x658]
add eax, 1
mov dword [ebp - 0x658], eax
mov ecx, dword [ebp - 0x65c]
shl ecx, 1
mov dword [ebp - 0x60c], ecx
mov edx, dword [ebp - 0x4e0]
add edx, dword [ebp - 0x60c]
movzx eax, byte [edx]
mov dword [ebp - 0x67c], eax
mov dword [ebp - 0x634], 0x63
mov ecx, dword [ebp - 0x65c]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x640], edx
mov eax, dword [ebp - 0x4e0]
add eax, dword [ebp - 0x640]
movzx ecx, byte [eax]
mov dword [ebp - 0x690], ecx
mov dword [ebp - 0x678], 0xe0
mov edx, dword [ebp - 0x67c]
sub edx, dword [ebp - 0x634]
mov dword [ebp - 0x68c], edx
mov eax, dword [ebp - 0x690]
sub eax, dword [ebp - 0x678]
mov dword [ebp - 0x624], eax
mov ecx, dword [ebp - 0x68c]
shl ecx, 4
mov dword [ebp - 0x688], ecx
mov edx, dword [ebp - 0x624]
mov dword [ebp - 0x674], edx
mov eax, dword [ebp - 0x688]
or eax, dword [ebp - 0x674]
mov dword [ebp - 0x654], eax
mov cl, byte [ebp - 0x654]
mov byte [ebp - 0x639], cl
movzx edx, byte [ebp - 0x4d5]
mov al, byte [ebp + edx - 0x5e8]
mov byte [ebp - 0x681], al
movzx ecx, byte [ebp - 0x5fb]
movzx edx, byte [ebp + ecx - 0x5e8]
movzx eax, byte [ebp - 0x4e5]
add eax, edx
mov byte [ebp - 0x4e5], al
mov cl, byte [ebp - 0x5fb]
add cl, 1
mov byte [ebp - 0x5fb], cl
movzx edx, byte [ebp - 0x4e5]
movzx eax, byte [ebp - 0x4d5]
mov cl, byte [ebp + edx - 0x5e8]
mov byte [ebp + eax - 0x5e8], cl
movzx edx, byte [ebp - 0x5f1]
movzx eax, byte [ebp - 0x4e5]
mov cl, byte [ebp + edx - 0x5e8]
mov byte [ebp + eax - 0x5e8], cl
movzx edx, byte [ebp - 0x5fb]
movzx eax, byte [ebp - 0x5f1]
mov cl, byte [ebp + edx - 0x5e8]
mov byte [ebp + eax - 0x5e8], cl
movzx edx, byte [ebp - 0x5fb]
mov al, byte [ebp - 0x681]
mov byte [ebp + edx - 0x5e8], al
movzx ecx, byte [ebp - 0x681]
movzx edx, byte [ebp + ecx - 0x5e8]
movzx eax, byte [ebp - 0x5e9]
add eax, edx
mov byte [ebp - 0x5e9], al
movzx ecx, byte [ebp - 0x639]
movzx edx, byte [ebp - 0x4e5]
movzx eax, byte [ebp + edx - 0x5e8]
movzx edx, byte [ebp - 0x5fb]
movzx edx, byte [ebp + edx - 0x5e8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5e8]
xor ecx, eax
movzx edx, byte [ebp - 0x5f1]
movzx eax, byte [ebp + edx - 0x5e8]
movzx edx, byte [ebp - 0x4d5]
movzx edx, byte [ebp + edx - 0x5e8]
add eax, edx
movzx edx, byte [ebp - 0x5e9]
movzx edx, byte [ebp + edx - 0x5e8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5e8]
movzx edx, byte [ebp + eax - 0x5e8]
xor ecx, edx
mov byte [ebp - 0x5f1], cl
mov al, byte [ebp - 0x639]
mov byte [ebp - 0x4d5], al
mov cl, byte [ebp - 0x5f1]
mov byte [ebp - 0x665], cl
cmp dword [ebp - 0x65c], 0
jle 0x4c927f
mov edx, dword [ebp - 0x65c]
mov al, byte [ebp - 0x665]
mov byte [ebp + edx - 0x4c5], al
mov byte [ebp - 0x4bc], 0
jmp 0x4c92bc
mov dword [ebp - 0x6a8], 0
jmp 0x4c92a3
mov ecx, dword [ebp - 0x6a8]
add ecx, 1
mov dword [ebp - 0x6a8], ecx
cmp dword [ebp - 0x6a8], 9
jge 0x4c92bc
mov edx, dword [ebp - 0x6a8]
mov byte [ebp + edx - 0x4c4], 0
jmp 0x4c9294
lea eax, [ebp - 0x4c4]
push eax
mov ecx, dword [0xa10a1c]
call fcn.00450e00
mov dword [ebp - 0x4ac], eax
push 0
lea ecx, [ebp - 0x4d4]
push ecx
mov edx, dword [ebp - 0x4b8]
push edx
mov eax, dword [ebp - 0x4b4]
push eax
mov ecx, dword [ebp - 0x224]
push ecx
call dword [ebp - 0x4ac]
test eax, eax
je 0x4c9414
mov dword [ebp - 0x6ac], 0xffffffff
mov byte [ebp - 0x6ae], 0
mov byte [ebp - 0x6ad], 0
cmp dword [ebp - 0x4d4], 0x100
jbe 0x4c93ee
mov edx, dword [ebp - 0x4b4]
movzx eax, byte [edx]
cmp eax, 0x4d
jne 0x4c9356
mov ecx, dword [ebp - 0x4b4]
movzx edx, byte [ecx + 1]
cmp edx, 0x5a
jne 0x4c9356
mov byte [ebp - 0x6ad], 1
mov dword [ebp - 0x6ac], 0
mov eax, dword [ebp - 0x4b4]
movzx ecx, byte [eax]
cmp ecx, 0xd0
jne 0x4c93aa
mov edx, dword [ebp - 0x4b4]
movzx eax, byte [edx + 1]
cmp eax, 0xcf
jne 0x4c93aa
mov ecx, dword [ebp - 0x4b4]
movzx edx, byte [ecx + 2]
cmp edx, 0x11
jne 0x4c93aa
mov eax, dword [ebp - 0x4b4]
movzx ecx, byte [eax + 3]
cmp ecx, 0xe0
jne 0x4c93aa
mov byte [ebp - 0x6ad], 1
mov dword [ebp - 0x6ac], 1
mov dword [ebp - 0x6b4], 0
cmp dword [ebp - 0x6ac], 0
jne 0x4c93ee
mov edx, dword [ebp - 0x4d4]
push edx
mov eax, dword [ebp - 0x4b4]
push eax
call fcn.004c4880
add esp, 8
mov dword [ebp - 0x6b4], eax
xor ecx, ecx
cmp dword [ebp - 0x6b4], 0x1000
sete cl
mov byte [ebp - 0x6ae], cl
movzx edx, byte [ebp - 0x6ad]
test edx, edx
je 0x4c9414
movzx eax, byte [ebp - 0x6ae]
test eax, eax
je 0x4c9414
cmp dword [ebp - 0x6ac], 0
jne 0x4c9414
mov byte [ebp - 0x209], 1
mov ecx, dword [ebp - 0x4b8]
mov dword [ebp - 0x6c4], ecx
mov edx, dword [ebp - 0x4b4]
mov dword [ebp - 0x6c0], edx
cmp dword [ebp - 0x6c4], 0
je 0x4c945e
mov eax, dword [ebp - 0x6c0]
mov byte [eax], 0
mov ecx, dword [ebp - 0x6c0]
add ecx, 1
mov dword [ebp - 0x6c0], ecx
mov edx, dword [ebp - 0x6c4]
sub edx, 1
mov dword [ebp - 0x6c4], edx
jmp 0x4c942c
mov eax, dword [ebp - 0x4b4]
mov dword [ebp - 0x6bc], eax
mov ecx, dword [ebp - 0x6bc]
push ecx
call fcn.0096d401
add esp, 4
mov edx, dword [ebp - 0x224]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x4c9498
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x4c49fe
mov al, byte [ebp - 0x209]
pop edi
pop esi
mov esp, ebp
pop ebp
ret