Function at 0x4c7ba2
Capabilities:
Get file size

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7c0
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.00964670
add esp, 0xc
mov edx, dword [ebp + 8]
mov dword [ebp - 0x710], edx
lea eax, [ebp - 0x208]
mov dword [ebp - 0x714], eax
mov ecx, dword [ebp - 0x714]
mov dword [ebp - 0x718], ecx
mov edx, dword [ebp - 0x710]
mov ax, word [edx]
mov word [ebp - 0x71a], ax
mov ecx, dword [ebp - 0x714]
mov dx, word [ebp - 0x71a]
mov word [ecx], dx
mov eax, dword [ebp - 0x710]
add eax, 2
mov dword [ebp - 0x710], eax
mov ecx, dword [ebp - 0x714]
add ecx, 2
mov dword [ebp - 0x714], ecx
cmp word [ebp - 0x71a], 0
jne 0x4c79b2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x18]
mov dword [ebp - 0x720], eax
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x724], ecx
mov edx, dword [ebp - 0x720]
mov ax, word [edx]
mov word [ebp - 0x726], ax
add dword [ebp - 0x720], 2
cmp word [ebp - 0x726], 0
jne 0x4c7a12
mov ecx, dword [ebp - 0x720]
sub ecx, dword [ebp - 0x724]
mov edx, dword [ebp - 0x724]
mov dword [ebp - 0x72c], edx
mov dword [ebp - 0x730], ecx
lea eax, [ebp - 0x208]
add eax, 0xfffffffe
mov dword [ebp - 0x734], eax
mov ecx, dword [ebp - 0x734]
mov dx, word [ecx + 2]
mov word [ebp - 0x736], dx
add dword [ebp - 0x734], 2
cmp word [ebp - 0x736], 0
jne 0x4c7a60
mov edi, dword [ebp - 0x734]
mov esi, dword [ebp - 0x72c]
mov eax, dword [ebp - 0x730]
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 0x4c7abd
mov ecx, dword [ebp - 0x210]
add ecx, 1
mov dword [ebp - 0x210], ecx
cmp dword [ebp - 0x210], 0x3c
jge 0x4cc486
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 0x4c7b0a
fld qword [ebp - 0x240]
fadd qword [0x9cf460]
fstp qword [ebp - 0x240]
fld qword [0x9d2508]
fcomp qword [ebp - 0x240]
fnstsw ax
test ah, 0x41
jne 0x4c7b93
fld qword [0x9d2500]
fmul qword [ebp - 0x240]
fmul qword [ebp - 0x240]
fld qword [ebp - 0x240]
fmul qword [ebp - 0x240]
fsubp st(1)
fld qword [0x9d24f8]
fmul qword [ebp - 0x240]
fmul qword [ebp - 0x240]
fadd qword [0x9d24f0]
fdivp st(1)
fadd qword [ebp - 0x220]
fstp qword [ebp - 0x220]
fld qword [0x9d24e8]
fcomp qword [ebp - 0x220]
fnstsw ax
test ah, 5
jp 0x4c7b8e
fld qword [0x9d24e0]
fmul qword [ebp - 0x240]
fsubr qword [ebp - 0x220]
fstp qword [ebp - 0x220]
jmp 0x4c7af8
fldz
fcomp qword [ebp - 0x220]
fnstsw ax
test ah, 0x41
jne 0x4c7bd1
xor ah, byte [ecx]
push eax
pop edi
dec ebp
jne 0x4c7bd1
xor al, byte [ebx + 0x55]
dec ebp
inc ecx
and al, 0x5f
push 0x5c
xor al, 0x24
retf
mov dword [ebp - 0x218], 0x4c7bb4
mov dword [ebp - 0x234], 0x4c7ba2
mov edx, dword [ebp - 0x218]
mov dword [ebp - 0x24c], edx
mov eax, dword [ebp - 0x234]
mov dword [ebp - 0x248], eax
mov byte [ebp - 0x369], 0x16
mov dword [ebp - 0x360], 0
jmp 0x4c7c1f
mov ecx, dword [ebp - 0x360]
add ecx, 1
mov dword [ebp - 0x360], ecx
cmp dword [ebp - 0x360], 0x100
jae 0x4c7c40
mov edx, dword [ebp - 0x360]
mov al, byte [ebp - 0x360]
mov byte [ebp + edx - 0x358], al
jmp 0x4c7c10
mov dword [ebp - 0x250], 0
mov byte [ebp - 0x36a], 0
mov dword [ebp - 0x360], 0xff
jmp 0x4c7c6c
mov ecx, dword [ebp - 0x360]
sub ecx, 1
mov dword [ebp - 0x360], ecx
cmp dword [ebp - 0x360], 0
jbe 0x4c7f80
mov dword [ebp - 0x370], 0
mov dword [ebp - 0x378], 1
mov edx, dword [ebp - 0x378]
cmp edx, dword [ebp - 0x360]
jae 0x4c7cad
mov eax, dword [ebp - 0x378]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x378], ecx
jmp 0x4c7c8d
mov edx, dword [ebp - 0x250]
mov dword [ebp - 0x73c], edx
cmp dword [ebp - 0x73c], 3
ja case.default.0x4c7ccc
mov eax, dword [ebp - 0x73c]
jmp dword [eax*4 + 0x4cc494]
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
fld qword [ebp - 0x220]
fnstcw word [ebp - 0x73e]
movzx eax, word [ebp - 0x73e]
or eax, 0xc00
mov dword [ebp - 0x744], eax
fldcw word [ebp - 0x744]
fistp qword [ebp - 0x74c]
fldcw word [ebp - 0x73e]
mov eax, dword [ebp - 0x74c]
and eax, 0xff
add edx, eax
mov byte [ebp - 0x36a], dl
jmp 0x4c7e59
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
fld qword [ebp - 0x220]
fnstcw word [ebp - 0x74e]
movzx eax, word [ebp - 0x74e]
or eax, 0xc00
mov dword [ebp - 0x754], eax
fldcw word [ebp - 0x754]
fistp qword [ebp - 0x75c]
fldcw word [ebp - 0x74e]
mov eax, dword [ebp - 0x75c]
shr eax, 8
and eax, 0xff
add edx, eax
mov byte [ebp - 0x36a], dl
jmp 0x4c7e59
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
fld qword [ebp - 0x220]
fnstcw word [ebp - 0x75e]
movzx eax, word [ebp - 0x75e]
or eax, 0xc00
mov dword [ebp - 0x764], eax
fldcw word [ebp - 0x764]
fistp qword [ebp - 0x76c]
fldcw word [ebp - 0x75e]
mov eax, dword [ebp - 0x76c]
shr eax, 0x10
and eax, 0xff
add edx, eax
mov byte [ebp - 0x36a], dl
jmp 0x4c7e59
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
fld qword [ebp - 0x220]
fnstcw word [ebp - 0x76e]
movzx eax, word [ebp - 0x76e]
or eax, 0xc00
mov dword [ebp - 0x774], eax
fldcw word [ebp - 0x774]
fistp qword [ebp - 0x77c]
fldcw word [ebp - 0x76e]
mov eax, dword [ebp - 0x77c]
shr eax, 0x18
and eax, 0xff
add edx, eax
mov byte [ebp - 0x36a], dl
jmp 0x4c7e59
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 0x4c7e97
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 0x4c7ed6
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 0x4c7cad
mov eax, dword [ebp - 0x360]
cmp eax, dword [ebp - 0x374]
je 0x4c7f7b
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 0x4c7c5d
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 0x4c9ffc
mov ecx, dword [ebp - 0x368]
and ecx, 1
jne 0x4c9ffc
mov dword [ebp - 0x3e4], 0
mov dword [ebp - 0x3e0], 0
mov edx, dword [ebp - 0x3e0]
add edx, 1
mov dword [ebp - 0x3e0], edx
mov dword [ebp - 0x37c], 0
mov eax, dword [ebp - 0x3e4]
shl eax, 1
mov dword [ebp - 0x37c], eax
mov dword [ebp - 0x41c], 0
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x37c]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x41c]
mov dword [ebp - 0x41c], edx
mov dword [ebp - 0x3a8], 0
mov eax, dword [ebp - 0x3a8]
add eax, 0xc9
mov dword [ebp - 0x3a8], eax
mov dword [ebp - 0x3d8], 0
mov ecx, dword [ebp - 0x3e4]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x3d8], edx
mov dword [ebp - 0x44c], 0
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x3d8]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x44c]
mov dword [ebp - 0x44c], ecx
mov dword [ebp - 0x418], 0
mov edx, dword [ebp - 0x418]
add edx, 0x3c
mov dword [ebp - 0x418], edx
mov dword [ebp - 0x448], 0
mov eax, dword [ebp - 0x41c]
sub eax, dword [ebp - 0x3a8]
add eax, dword [ebp - 0x448]
mov dword [ebp - 0x448], eax
mov dword [ebp - 0x380], 0
mov ecx, dword [ebp - 0x44c]
sub ecx, dword [ebp - 0x418]
add ecx, dword [ebp - 0x380]
mov dword [ebp - 0x380], ecx
mov dword [ebp - 0x444], 0
mov edx, dword [ebp - 0x448]
shl edx, 4
mov dword [ebp - 0x444], edx
mov dword [ebp - 0x414], 0
mov eax, dword [ebp - 0x380]
mov dword [ebp - 0x414], eax
mov dword [ebp - 0x3dc], 0
mov ecx, dword [ebp - 0x444]
or ecx, dword [ebp - 0x414]
mov dword [ebp - 0x3dc], ecx
mov byte [ebp - 0x3a9], 0
mov dl, byte [ebp - 0x3dc]
mov byte [ebp - 0x3a9], dl
mov byte [ebp - 0x43d], 0
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + eax - 0x358]
mov byte [ebp - 0x43d], 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 - 0x43d]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x43d]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x359]
add ecx, eax
mov byte [ebp - 0x359], cl
movzx edx, byte [ebp - 0x3a9]
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 - 0x3a9]
mov byte [ebp - 0x241], cl
mov dl, byte [ebp - 0x361]
mov byte [ebp - 0x40d], dl
cmp dword [ebp - 0x3e4], 0
jle 0x4c82e7
mov eax, dword [ebp - 0x3e4]
mov cl, byte [ebp - 0x40d]
mov byte [ebp + eax - 0x231], cl
mov edx, dword [ebp - 0x3e4]
add edx, 1
mov dword [ebp - 0x3e4], edx
mov eax, dword [ebp - 0x3e0]
add eax, 1
mov dword [ebp - 0x3e0], eax
mov ecx, dword [ebp - 0x3e4]
shl ecx, 1
mov dword [ebp - 0x37c], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x37c]
movzx eax, byte [edx]
mov dword [ebp - 0x41c], eax
mov dword [ebp - 0x3a8], 0xc9
mov ecx, dword [ebp - 0x3e4]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x3d8], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x3d8]
movzx ecx, byte [eax]
mov dword [ebp - 0x44c], ecx
mov dword [ebp - 0x418], 0x3c
mov edx, dword [ebp - 0x41c]
sub edx, dword [ebp - 0x3a8]
mov dword [ebp - 0x448], edx
mov eax, dword [ebp - 0x44c]
sub eax, dword [ebp - 0x418]
mov dword [ebp - 0x380], eax
mov ecx, dword [ebp - 0x448]
shl ecx, 4
mov dword [ebp - 0x444], ecx
mov edx, dword [ebp - 0x380]
mov dword [ebp - 0x414], edx
mov eax, dword [ebp - 0x444]
or eax, dword [ebp - 0x414]
mov dword [ebp - 0x3dc], eax
mov cl, byte [ebp - 0x3dc]
mov byte [ebp - 0x3a9], cl
movzx edx, byte [ebp - 0x241]
mov al, byte [ebp + edx - 0x358]
mov byte [ebp - 0x43d], 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 - 0x43d]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x43d]
movzx edx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp - 0x359]
add eax, edx
mov byte [ebp - 0x359], al
movzx ecx, byte [ebp - 0x3a9]
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 - 0x3a9]
mov byte [ebp - 0x241], al
mov cl, byte [ebp - 0x361]
mov byte [ebp - 0x40d], cl
cmp dword [ebp - 0x3e4], 0
jle 0x4c853d
mov edx, dword [ebp - 0x3e4]
mov al, byte [ebp - 0x40d]
mov byte [ebp + edx - 0x231], al
mov ecx, dword [ebp - 0x3e0]
add ecx, 2
mov dword [ebp - 0x3e0], ecx
mov edx, dword [ebp - 0x3e4]
add edx, 1
mov dword [ebp - 0x450], edx
jmp 0x4c856c
mov eax, dword [ebp - 0x450]
add eax, 1
mov dword [ebp - 0x450], eax
mov ecx, dword [ebp - 0x450]
cmp ecx, dword [ebp - 0x3e0]
jge 0x4c87cb
mov edx, dword [ebp - 0x3e4]
add edx, 1
mov dword [ebp - 0x3e4], edx
mov eax, dword [ebp - 0x3e4]
shl eax, 1
mov dword [ebp - 0x37c], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x37c]
movzx edx, byte [ecx]
mov dword [ebp - 0x41c], edx
mov dword [ebp - 0x3a8], 0xc9
mov eax, dword [ebp - 0x3e4]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x3d8], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x3d8]
movzx eax, byte [edx]
mov dword [ebp - 0x44c], eax
mov dword [ebp - 0x418], 0x3c
mov ecx, dword [ebp - 0x41c]
sub ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x448], ecx
mov edx, dword [ebp - 0x44c]
sub edx, dword [ebp - 0x418]
mov dword [ebp - 0x380], edx
mov eax, dword [ebp - 0x448]
shl eax, 4
mov dword [ebp - 0x444], eax
mov ecx, dword [ebp - 0x380]
mov dword [ebp - 0x414], ecx
mov edx, dword [ebp - 0x444]
or edx, dword [ebp - 0x414]
mov dword [ebp - 0x3dc], edx
mov al, byte [ebp - 0x3dc]
mov byte [ebp - 0x3a9], al
movzx ecx, byte [ebp - 0x241]
mov dl, byte [ebp + ecx - 0x358]
mov byte [ebp - 0x43d], 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 - 0x43d]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x43d]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x359]
add edx, ecx
mov byte [ebp - 0x359], dl
movzx eax, byte [ebp - 0x3a9]
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 - 0x3a9]
mov byte [ebp - 0x241], dl
mov al, byte [ebp - 0x361]
mov byte [ebp - 0x40d], al
cmp dword [ebp - 0x3e4], 0
jle 0x4c87c6
mov ecx, dword [ebp - 0x3e4]
mov dl, byte [ebp - 0x40d]
mov byte [ebp + ecx - 0x231], dl
jmp 0x4c855d
mov eax, dword [ebp - 0x3e0]
add eax, 1
mov dword [ebp - 0x3e0], eax
fld dword [0x9d24d8]
fstp dword [ebp - 0x40c]
fld dword [0x9d24d4]
fstp dword [ebp - 0x408]
fld dword [0x9d24d0]
fstp dword [ebp - 0x3d4]
fld dword [0x9d24cc]
fstp dword [ebp - 0x3a4]
fld dword [0x9d24c8]
fstp dword [ebp - 0x43c]
fld dword [0x9d24c4]
fstp dword [ebp - 0x404]
fld dword [ebp - 0x40c]
fmul dword [ebp - 0x404]
fstp dword [ebp - 0x40c]
fld dword [ebp - 0x3d4]
fsub dword [ebp - 0x404]
fstp dword [ebp - 0x3d4]
fld dword [ebp - 0x3a4]
fmul dword [ebp - 0x404]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x3a4]
fmul dword [ebp - 0x404]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x40c]
fsub dword [ebp - 0x404]
fstp dword [ebp - 0x40c]
fld dword [ebp - 0x43c]
fsub dword [ebp - 0x404]
fstp dword [ebp - 0x43c]
fld dword [ebp - 0x3a4]
fld dword [ebp - 0x43c]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4c8a70
fld dword [ebp - 0x3d4]
fmul dword [ebp - 0x43c]
fstp dword [ebp - 0x3d4]
fld dword [ebp - 0x408]
fsub dword [ebp - 0x3a4]
fstp dword [ebp - 0x408]
fld dword [ebp - 0x408]
fadd dword [ebp - 0x3a4]
fstp dword [ebp - 0x408]
fld dword [ebp - 0x408]
fmul dword [ebp - 0x3a4]
fstp dword [ebp - 0x408]
fld dword [ebp - 0x408]
fdiv dword [ebp - 0x3a4]
fstp dword [ebp - 0x408]
fld dword [ebp - 0x43c]
fadd dword [ebp - 0x40c]
fstp dword [ebp - 0x43c]
fld dword [ebp - 0x3d4]
fadd dword [ebp - 0x43c]
fstp dword [ebp - 0x3d4]
fld dword [ebp - 0x3d4]
fadd dword [ebp - 0x43c]
fstp dword [ebp - 0x3d4]
fld dword [ebp - 0x408]
fmul dword [ebp - 0x3a4]
fstp dword [ebp - 0x408]
fld dword [ebp - 0x408]
fadd dword [ebp - 0x3a4]
fstp dword [ebp - 0x408]
fld dword [ebp - 0x3a4]
fmul dword [ebp - 0x404]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x404]
fsub dword [ebp - 0x408]
fstp dword [ebp - 0x404]
fld dword [ebp - 0x3a4]
fld dword [ebp - 0x404]
fcompp
fnstsw ax
test ah, 5
jp 0x4c8a02
fld dword [ebp - 0x408]
fsub dword [ebp - 0x3a4]
fstp dword [ebp - 0x408]
fld dword [ebp - 0x43c]
fmul dword [ebp - 0x40c]
fstp dword [ebp - 0x43c]
fld dword [ebp - 0x404]
fadd dword [ebp - 0x408]
fstp dword [ebp - 0x404]
fld dword [ebp - 0x43c]
fdiv dword [ebp - 0x40c]
fstp dword [ebp - 0x43c]
fld dword [ebp - 0x3d4]
fsub dword [ebp - 0x43c]
fstp dword [ebp - 0x3d4]
fld dword [ebp - 0x43c]
fmul dword [ebp - 0x40c]
fstp dword [ebp - 0x43c]
jmp 0x4c8a6e
fld dword [ebp - 0x404]
fsub dword [ebp - 0x408]
fstp dword [ebp - 0x404]
fld dword [ebp - 0x3d4]
fadd dword [ebp - 0x43c]
fstp dword [ebp - 0x3d4]
fld dword [ebp - 0x43c]
fsub dword [ebp - 0x40c]
fstp dword [ebp - 0x43c]
fld dword [ebp - 0x43c]
fadd dword [ebp - 0x40c]
fstp dword [ebp - 0x43c]
fld dword [ebp - 0x404]
fsub dword [ebp - 0x408]
fstp dword [ebp - 0x404]
fld dword [ebp - 0x43c]
fmul dword [ebp - 0x40c]
fstp dword [ebp - 0x43c]
jmp 0x4c8aeb
fld dword [ebp - 0x408]
fsub dword [ebp - 0x3d4]
fstp dword [ebp - 0x408]
fld dword [ebp - 0x43c]
fadd dword [ebp - 0x404]
fstp dword [ebp - 0x43c]
fld dword [ebp - 0x3a4]
fsub dword [ebp - 0x43c]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x3d4]
fadd dword [ebp - 0x3a4]
fstp dword [ebp - 0x3d4]
fld dword [ebp - 0x404]
fadd dword [ebp - 0x40c]
fstp dword [ebp - 0x404]
fld dword [ebp - 0x408]
fmul dword [ebp - 0x3d4]
fstp dword [ebp - 0x408]
mov ecx, dword [ebp - 0x3e4]
add ecx, 1
mov dword [ebp - 0x3e4], ecx
mov edx, dword [ebp - 0x3e0]
add edx, 1
mov dword [ebp - 0x3e0], edx
mov eax, dword [ebp - 0x3e4]
shl eax, 1
mov dword [ebp - 0x37c], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x37c]
movzx edx, byte [ecx]
mov dword [ebp - 0x41c], edx
mov dword [ebp - 0x3a8], 0xc9
mov eax, dword [ebp - 0x3e4]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x3d8], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x3d8]
movzx eax, byte [edx]
mov dword [ebp - 0x44c], eax
mov dword [ebp - 0x418], 0x3c
mov ecx, dword [ebp - 0x41c]
sub ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x448], ecx
mov edx, dword [ebp - 0x44c]
sub edx, dword [ebp - 0x418]
mov dword [ebp - 0x380], edx
mov eax, dword [ebp - 0x448]
shl eax, 4
mov dword [ebp - 0x444], eax
mov ecx, dword [ebp - 0x380]
mov dword [ebp - 0x414], ecx
mov edx, dword [ebp - 0x444]
or edx, dword [ebp - 0x414]
mov dword [ebp - 0x3dc], edx
mov al, byte [ebp - 0x3dc]
mov byte [ebp - 0x3a9], al
movzx ecx, byte [ebp - 0x241]
mov dl, byte [ebp + ecx - 0x358]
mov byte [ebp - 0x43d], 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 - 0x43d]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x43d]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x359]
add edx, ecx
mov byte [ebp - 0x359], dl
movzx eax, byte [ebp - 0x3a9]
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 - 0x3a9]
mov byte [ebp - 0x241], dl
mov al, byte [ebp - 0x361]
mov byte [ebp - 0x40d], al
cmp dword [ebp - 0x3e4], 0
jle 0x4c8d33
mov ecx, dword [ebp - 0x3e4]
mov dl, byte [ebp - 0x40d]
mov byte [ebp + ecx - 0x231], dl
mov eax, dword [ebp - 0x3e0]
add eax, 3
mov dword [ebp - 0x3e0], eax
mov ecx, dword [ebp - 0x3e4]
add ecx, 1
mov dword [ebp - 0x454], ecx
jmp 0x4c8d62
mov edx, dword [ebp - 0x454]
add edx, 1
mov dword [ebp - 0x454], edx
mov eax, dword [ebp - 0x454]
cmp eax, dword [ebp - 0x3e0]
jge 0x4c9123
mov ecx, dword [ebp - 0x3e4]
add ecx, 1
mov dword [ebp - 0x3e4], ecx
mov edx, dword [ebp - 0x3e4]
shl edx, 1
mov dword [ebp - 0x37c], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x37c]
movzx ecx, byte [eax]
mov dword [ebp - 0x41c], ecx
mov dword [ebp - 0x3a8], 0xc9
mov edx, dword [ebp - 0x3e4]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x3d8], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x3d8]
movzx edx, byte [ecx]
mov dword [ebp - 0x44c], edx
mov dword [ebp - 0x418], 0x3c
mov eax, dword [ebp - 0x41c]
sub eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x448], eax
mov ecx, dword [ebp - 0x44c]
sub ecx, dword [ebp - 0x418]
mov dword [ebp - 0x380], ecx
mov edx, dword [ebp - 0x448]
shl edx, 4
mov dword [ebp - 0x444], edx
mov eax, dword [ebp - 0x380]
mov dword [ebp - 0x414], eax
mov ecx, dword [ebp - 0x444]
or ecx, dword [ebp - 0x414]
mov dword [ebp - 0x3dc], ecx
mov dl, byte [ebp - 0x3dc]
mov byte [ebp - 0x3a9], dl
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + eax - 0x358]
mov byte [ebp - 0x43d], 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 [0x9d24c0]
fstp dword [ebp - 0x460]
fld dword [0x9d24bc]
fstp dword [ebp - 0x458]
fld dword [0x9d24b8]
fstp dword [ebp - 0x468]
fld dword [0x9d24b4]
fstp dword [ebp - 0x464]
fld dword [0x9d24b0]
fstp dword [ebp - 0x45c]
fld dword [ebp - 0x468]
fmul dword [ebp - 0x45c]
fstp dword [ebp - 0x468]
fld dword [ebp - 0x464]
fsub dword [ebp - 0x45c]
fstp dword [ebp - 0x464]
fld dword [ebp - 0x460]
fsub dword [ebp - 0x45c]
fstp dword [ebp - 0x460]
fld dword [ebp - 0x460]
fadd dword [ebp - 0x45c]
fstp dword [ebp - 0x460]
fld dword [ebp - 0x460]
fsub dword [ebp - 0x45c]
fstp dword [ebp - 0x460]
fld dword [ebp - 0x464]
fld dword [ebp - 0x468]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4c8fd8
fld dword [ebp - 0x458]
fmul dword [ebp - 0x464]
fstp dword [ebp - 0x458]
fld dword [ebp - 0x468]
fmul dword [ebp - 0x45c]
fstp dword [ebp - 0x468]
fld dword [ebp - 0x458]
fadd dword [ebp - 0x464]
fstp dword [ebp - 0x458]
fld dword [ebp - 0x45c]
fsub dword [ebp - 0x458]
fstp dword [ebp - 0x45c]
fld dword [ebp - 0x468]
fmul dword [ebp - 0x45c]
fstp dword [ebp - 0x468]
movzx eax, byte [ebp - 0x36b]
movzx ecx, byte [ebp - 0x361]
mov dl, byte [ebp + eax - 0x358]
mov byte [ebp + ecx - 0x358], dl
jmp 0x4c9032
fld dword [ebp - 0x464]
fdiv dword [ebp - 0x45c]
fstp dword [ebp - 0x464]
fld dword [ebp - 0x460]
fdiv dword [ebp - 0x458]
fstp dword [ebp - 0x460]
fld dword [ebp - 0x458]
fmul dword [ebp - 0x468]
fstp dword [ebp - 0x458]
fld dword [ebp - 0x458]
fsub dword [ebp - 0x468]
fstp dword [ebp - 0x458]
fld dword [ebp - 0x464]
fadd dword [ebp - 0x45c]
fstp dword [ebp - 0x464]
movzx eax, byte [ebp - 0x36b]
mov cl, byte [ebp - 0x43d]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x43d]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x359]
add ecx, eax
mov byte [ebp - 0x359], cl
movzx edx, byte [ebp - 0x3a9]
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 - 0x3a9]
mov byte [ebp - 0x241], cl
mov dl, byte [ebp - 0x361]
mov byte [ebp - 0x40d], dl
cmp dword [ebp - 0x3e4], 0
jle 0x4c911e
mov eax, dword [ebp - 0x3e4]
mov cl, byte [ebp - 0x40d]
mov byte [ebp + eax - 0x231], cl
jmp 0x4c8d53
mov edx, dword [ebp - 0x3e0]
add edx, 1
mov dword [ebp - 0x3e0], edx
fld qword [0x9d24a8]
fstp qword [ebp - 0x3a0]
fld qword [0x9d24a0]
fstp qword [ebp - 0x3d0]
fld qword [0x9d2498]
fstp qword [ebp - 0x400]
fld qword [0x9d2490]
fstp qword [ebp - 0x438]
fld qword [0x9d2488]
fstp qword [ebp - 0x398]
fld qword [0x9d2480]
fstp qword [ebp - 0x3c8]
fld qword [0x9d2478]
fstp qword [ebp - 0x3f8]
fld qword [ebp - 0x400]
fmul qword [ebp - 0x3f8]
fstp qword [ebp - 0x400]
fld qword [ebp - 0x398]
fsub qword [ebp - 0x3f8]
fstp qword [ebp - 0x398]
fld qword [ebp - 0x3c8]
fsub qword [ebp - 0x3f8]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x398]
fmul qword [ebp - 0x3f8]
fstp qword [ebp - 0x398]
fld qword [ebp - 0x400]
fmul qword [ebp - 0x3f8]
fstp qword [ebp - 0x400]
fld qword [ebp - 0x3a0]
fmul qword [ebp - 0x3f8]
fstp qword [ebp - 0x3a0]
fld qword [ebp - 0x3c8]
fmul qword [ebp - 0x3f8]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x400]
fcomp qword [ebp - 0x3f8]
fnstsw ax
test ah, 0x41
jne 0x4c92aa
fld qword [ebp - 0x438]
fsub qword [ebp - 0x3c8]
fstp qword [ebp - 0x438]
fld qword [ebp - 0x438]
fmul qword [ebp - 0x3c8]
fstp qword [ebp - 0x438]
fld qword [ebp - 0x3c8]
fadd qword [ebp - 0x3a0]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x438]
fsub qword [ebp - 0x3c8]
fstp qword [ebp - 0x438]
fld qword [ebp - 0x3c8]
fadd qword [ebp - 0x3a0]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x398]
fsub qword [ebp - 0x3f8]
fstp qword [ebp - 0x398]
fld qword [ebp - 0x398]
fsub qword [ebp - 0x3f8]
fstp qword [ebp - 0x398]
mov eax, dword [ebp - 0x3e4]
add eax, 1
mov dword [ebp - 0x3e4], eax
jmp 0x4c9328
fld qword [ebp - 0x3f8]
fmul qword [ebp - 0x3a0]
fstp qword [ebp - 0x3f8]
fld qword [ebp - 0x3d0]
fdiv qword [ebp - 0x400]
fstp qword [ebp - 0x3d0]
fld qword [ebp - 0x400]
fdiv qword [ebp - 0x438]
fstp qword [ebp - 0x400]
fld qword [ebp - 0x398]
fsub qword [ebp - 0x3c8]
fstp qword [ebp - 0x398]
fld qword [ebp - 0x438]
fsub qword [ebp - 0x398]
fstp qword [ebp - 0x438]
fld qword [ebp - 0x3f8]
fdiv qword [ebp - 0x3a0]
fstp qword [ebp - 0x3f8]
fld qword [ebp - 0x3c8]
fadd qword [ebp - 0x3f8]
fstp qword [ebp - 0x3c8]
mov ecx, dword [ebp - 0x3e0]
add ecx, 1
mov dword [ebp - 0x3e0], ecx
mov edx, dword [ebp - 0x3e4]
shl edx, 1
mov dword [ebp - 0x37c], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x37c]
movzx ecx, byte [eax]
mov dword [ebp - 0x41c], ecx
mov dword [ebp - 0x3a8], 0xc9
mov edx, dword [ebp - 0x3e4]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x3d8], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x3d8]
movzx edx, byte [ecx]
mov dword [ebp - 0x44c], edx
mov dword [ebp - 0x418], 0x3c
mov eax, dword [ebp - 0x41c]
sub eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x448], eax
mov ecx, dword [ebp - 0x44c]
sub ecx, dword [ebp - 0x418]
mov dword [ebp - 0x380], ecx
mov edx, dword [ebp - 0x448]
shl edx, 4
mov dword [ebp - 0x444], edx
mov eax, dword [ebp - 0x380]
mov dword [ebp - 0x414], eax
mov ecx, dword [ebp - 0x444]
or ecx, dword [ebp - 0x414]
mov dword [ebp - 0x3dc], ecx
mov dl, byte [ebp - 0x3dc]
mov byte [ebp - 0x3a9], dl
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + eax - 0x358]
mov byte [ebp - 0x43d], 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 - 0x43d]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x43d]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x359]
add ecx, eax
mov byte [ebp - 0x359], cl
movzx edx, byte [ebp - 0x3a9]
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 - 0x3a9]
mov byte [ebp - 0x241], cl
mov dl, byte [ebp - 0x361]
mov byte [ebp - 0x40d], dl
cmp dword [ebp - 0x3e4], 0
jle 0x4c9571
mov eax, dword [ebp - 0x3e4]
mov cl, byte [ebp - 0x40d]
mov byte [ebp + eax - 0x231], cl
mov edx, dword [ebp - 0x3e4]
add edx, 1
mov dword [ebp - 0x3e4], edx
mov eax, dword [ebp - 0x3e0]
add eax, 1
mov dword [ebp - 0x3e0], eax
mov ecx, dword [ebp - 0x3e4]
shl ecx, 1
mov dword [ebp - 0x37c], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x37c]
movzx eax, byte [edx]
mov dword [ebp - 0x41c], eax
mov dword [ebp - 0x3a8], 0xc9
mov ecx, dword [ebp - 0x3e4]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x3d8], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x3d8]
movzx ecx, byte [eax]
mov dword [ebp - 0x44c], ecx
mov dword [ebp - 0x418], 0x3c
mov edx, dword [ebp - 0x41c]
sub edx, dword [ebp - 0x3a8]
mov dword [ebp - 0x448], edx
mov eax, dword [ebp - 0x44c]
sub eax, dword [ebp - 0x418]
mov dword [ebp - 0x380], eax
mov ecx, dword [ebp - 0x448]
shl ecx, 4
mov dword [ebp - 0x444], ecx
mov edx, dword [ebp - 0x380]
mov dword [ebp - 0x414], edx
mov eax, dword [ebp - 0x444]
or eax, dword [ebp - 0x414]
mov dword [ebp - 0x3dc], eax
mov cl, byte [ebp - 0x3dc]
mov byte [ebp - 0x3a9], cl
movzx edx, byte [ebp - 0x241]
mov al, byte [ebp + edx - 0x358]
mov byte [ebp - 0x43d], 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
fld qword [0x9d2470]
fstp qword [ebp - 0x430]
fld qword [0x9d2468]
fstp qword [ebp - 0x390]
fld qword [0x9d2460]
fstp qword [ebp - 0x3c0]
fld qword [0x9d2458]
fstp qword [ebp - 0x3b8]
fld qword [0x9d2450]
fstp qword [ebp - 0x3f0]
fld qword [0x9d2448]
fstp qword [ebp - 0x428]
fld qword [0x9d2440]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x430]
fadd qword [ebp - 0x388]
fstp qword [ebp - 0x430]
fld qword [ebp - 0x3c0]
fadd qword [ebp - 0x388]
fstp qword [ebp - 0x3c0]
fld qword [ebp - 0x430]
fmul qword [ebp - 0x388]
fstp qword [ebp - 0x430]
fld qword [ebp - 0x390]
fadd qword [ebp - 0x388]
fstp qword [ebp - 0x390]
fld qword [ebp - 0x3c0]
fsub qword [ebp - 0x388]
fstp qword [ebp - 0x3c0]
fld qword [ebp - 0x428]
fsub qword [ebp - 0x388]
fstp qword [ebp - 0x428]
fld qword [ebp - 0x430]
fadd qword [ebp - 0x388]
fstp qword [ebp - 0x430]
fld qword [ebp - 0x428]
fcomp qword [ebp - 0x430]
fnstsw ax
test ah, 5
jp 0x4c9849
fld qword [ebp - 0x428]
fmul qword [ebp - 0x388]
fstp qword [ebp - 0x428]
fld qword [ebp - 0x428]
fsub qword [ebp - 0x388]
fstp qword [ebp - 0x428]
fld qword [ebp - 0x3f0]
fadd qword [ebp - 0x428]
fstp qword [ebp - 0x3f0]
fld qword [ebp - 0x430]
fmul qword [ebp - 0x390]
fstp qword [ebp - 0x430]
fld qword [ebp - 0x3b8]
fadd qword [ebp - 0x3f0]
fstp qword [ebp - 0x3b8]
fld qword [ebp - 0x3b8]
fadd qword [ebp - 0x3f0]
fstp qword [ebp - 0x3b8]
fld qword [ebp - 0x388]
fadd qword [ebp - 0x430]
fstp qword [ebp - 0x388]
movzx edx, byte [ebp - 0x36b]
movzx eax, byte [ebp - 0x361]
mov cl, byte [ebp + edx - 0x358]
mov byte [ebp + eax - 0x358], cl
jmp 0x4c9a5a
fld qword [ebp - 0x388]
fadd qword [ebp - 0x390]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x428]
fmul qword [ebp - 0x430]
fstp qword [ebp - 0x428]
fld qword [ebp - 0x3b8]
fadd qword [ebp - 0x428]
fstp qword [ebp - 0x3b8]
fld qword [ebp - 0x3c0]
fsub qword [ebp - 0x3f0]
fstp qword [ebp - 0x3c0]
fld qword [ebp - 0x428]
fmul qword [ebp - 0x430]
fstp qword [ebp - 0x428]
fld qword [ebp - 0x388]
fmul qword [ebp - 0x390]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x3c0]
fmul qword [ebp - 0x3f0]
fstp qword [ebp - 0x3c0]
fld qword [ebp - 0x3b8]
fsub qword [ebp - 0x428]
fstp qword [ebp - 0x3b8]
fld qword [ebp - 0x388]
fmul qword [ebp - 0x390]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x3c0]
fadd qword [ebp - 0x3f0]
fstp qword [ebp - 0x3c0]
fld qword [ebp - 0x3c0]
fsub qword [ebp - 0x3f0]
fstp qword [ebp - 0x3c0]
fld qword [ebp - 0x388]
fadd qword [ebp - 0x390]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x388]
fmul qword [ebp - 0x390]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x3c0]
fmul qword [ebp - 0x3f0]
fstp qword [ebp - 0x3c0]
fld qword [ebp - 0x3f0]
fcomp qword [ebp - 0x3c0]
fnstsw ax
test ah, 5
jp 0x4c99dc
fld qword [ebp - 0x3c0]
fadd qword [ebp - 0x3b8]
fstp qword [ebp - 0x3c0]
fld qword [ebp - 0x428]
fadd qword [ebp - 0x388]
fstp qword [ebp - 0x428]
fld qword [ebp - 0x3c0]
fsub qword [ebp - 0x3b8]
fstp qword [ebp - 0x3c0]
fld qword [ebp - 0x388]
fmul qword [ebp - 0x430]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x428]
fsub qword [ebp - 0x388]
fstp qword [ebp - 0x428]
fld qword [ebp - 0x430]
fmul qword [ebp - 0x390]
fstp qword [ebp - 0x430]
fld qword [ebp - 0x3b8]
fmul qword [ebp - 0x3f0]
fstp qword [ebp - 0x3b8]
jmp 0x4c9a5a
fld qword [ebp - 0x3f0]
fadd qword [ebp - 0x428]
fstp qword [ebp - 0x3f0]
fld qword [ebp - 0x428]
fmul qword [ebp - 0x388]
fstp qword [ebp - 0x428]
fld qword [ebp - 0x3f0]
fmul qword [ebp - 0x428]
fstp qword [ebp - 0x3f0]
fld qword [ebp - 0x3b8]
fsub qword [ebp - 0x3f0]
fstp qword [ebp - 0x3b8]
fld qword [ebp - 0x3f0]
fdiv qword [ebp - 0x428]
fstp qword [ebp - 0x3f0]
fld qword [ebp - 0x428]
fdiv qword [ebp - 0x388]
fstp qword [ebp - 0x428]
fld qword [ebp - 0x3f0]
fadd qword [ebp - 0x428]
fstp qword [ebp - 0x3f0]
movzx edx, byte [ebp - 0x36b]
mov al, byte [ebp - 0x43d]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x43d]
movzx edx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp - 0x359]
add eax, edx
mov byte [ebp - 0x359], al
movzx ecx, byte [ebp - 0x3a9]
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 - 0x3a9]
mov byte [ebp - 0x241], al
mov cl, byte [ebp - 0x361]
mov byte [ebp - 0x40d], cl
cmp dword [ebp - 0x3e4], 0
jle 0x4c9b44
mov edx, dword [ebp - 0x3e4]
mov al, byte [ebp - 0x40d]
mov byte [ebp + edx - 0x231], al
mov ecx, dword [ebp - 0x3e4]
add ecx, 1
mov dword [ebp - 0x3e4], ecx
mov edx, dword [ebp - 0x3e0]
add edx, 1
mov dword [ebp - 0x3e0], edx
mov eax, dword [ebp - 0x3e4]
shl eax, 1
mov dword [ebp - 0x37c], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x37c]
movzx edx, byte [ecx]
mov dword [ebp - 0x41c], edx
mov dword [ebp - 0x3a8], 0xc9
mov eax, dword [ebp - 0x3e4]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x3d8], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x3d8]
movzx eax, byte [edx]
mov dword [ebp - 0x44c], eax
mov dword [ebp - 0x418], 0x3c
mov ecx, dword [ebp - 0x41c]
sub ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x448], ecx
mov edx, dword [ebp - 0x44c]
sub edx, dword [ebp - 0x418]
mov dword [ebp - 0x380], edx
mov eax, dword [ebp - 0x448]
shl eax, 4
mov dword [ebp - 0x444], eax
mov ecx, dword [ebp - 0x380]
mov dword [ebp - 0x414], ecx
mov edx, dword [ebp - 0x444]
or edx, dword [ebp - 0x414]
mov dword [ebp - 0x3dc], edx
mov al, byte [ebp - 0x3dc]
mov byte [ebp - 0x3a9], al
movzx ecx, byte [ebp - 0x241]
mov dl, byte [ebp + ecx - 0x358]
mov byte [ebp - 0x43d], 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 - 0x43d]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x43d]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x359]
add edx, ecx
mov byte [ebp - 0x359], dl
movzx eax, byte [ebp - 0x3a9]
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 - 0x3a9]
mov byte [ebp - 0x241], dl
mov al, byte [ebp - 0x361]
mov byte [ebp - 0x40d], al
cmp dword [ebp - 0x3e4], 0
jle 0x4c9d9b
mov ecx, dword [ebp - 0x3e4]
mov dl, byte [ebp - 0x40d]
mov byte [ebp + ecx - 0x231], dl
mov eax, dword [ebp - 0x3e4]
add eax, 1
mov dword [ebp - 0x3e4], eax
mov ecx, dword [ebp - 0x3e0]
add ecx, 1
mov dword [ebp - 0x3e0], ecx
mov edx, dword [ebp - 0x3e4]
shl edx, 1
mov dword [ebp - 0x37c], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x37c]
movzx ecx, byte [eax]
mov dword [ebp - 0x41c], ecx
mov dword [ebp - 0x3a8], 0xc9
mov edx, dword [ebp - 0x3e4]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x3d8], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x3d8]
movzx edx, byte [ecx]
mov dword [ebp - 0x44c], edx
mov dword [ebp - 0x418], 0x3c
mov eax, dword [ebp - 0x41c]
sub eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x448], eax
mov ecx, dword [ebp - 0x44c]
sub ecx, dword [ebp - 0x418]
mov dword [ebp - 0x380], ecx
mov edx, dword [ebp - 0x448]
shl edx, 4
mov dword [ebp - 0x444], edx
mov eax, dword [ebp - 0x380]
mov dword [ebp - 0x414], eax
mov ecx, dword [ebp - 0x444]
or ecx, dword [ebp - 0x414]
mov dword [ebp - 0x3dc], ecx
mov dl, byte [ebp - 0x3dc]
mov byte [ebp - 0x3a9], dl
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + eax - 0x358]
mov byte [ebp - 0x43d], 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 - 0x43d]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x43d]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x359]
add ecx, eax
mov byte [ebp - 0x359], cl
movzx edx, byte [ebp - 0x3a9]
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 - 0x3a9]
mov byte [ebp - 0x241], cl
mov dl, byte [ebp - 0x361]
mov byte [ebp - 0x40d], dl
cmp dword [ebp - 0x3e4], 0
jle 0x4c9ff3
mov eax, dword [ebp - 0x3e4]
mov cl, byte [ebp - 0x40d]
mov byte [ebp + eax - 0x231], cl
mov byte [ebp - 0x225], 0
jmp 0x4ca030
mov dword [ebp - 0x46c], 0
jmp 0x4ca017
mov edx, dword [ebp - 0x46c]
add edx, 1
mov dword [ebp - 0x46c], edx
cmp dword [ebp - 0x46c], 0xc
jge 0x4ca030
mov eax, dword [ebp - 0x46c]
mov byte [ebp + eax - 0x230], 0
jmp 0x4ca008
lea ecx, [ebp - 0x230]
push ecx
mov ecx, dword [0xa06a1c]
call fcn.0044f030
mov dword [ebp - 0x214], eax
push 0
push 0x80
push 3
push 0
push 1
push 0xa0000000
lea edx, [ebp - 0x208]
push edx
call dword [ebp - 0x214]
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x224], 0xffffffff
je 0x4cc476
push 0
mov eax, dword [ebp - 0x224]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x488], eax
mov dword [ebp - 0x4a4], 0
mov ecx, dword [ebp - 0x488]
push ecx
call fcn.009649c7
add esp, 4
mov dword [ebp - 0x700], eax
mov edx, dword [ebp - 0x700]
mov dword [ebp - 0x484], edx
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x480], 0
fldz
fstp qword [ebp - 0x4a0]
fldz
fstp qword [ebp - 0x478]
fldz
fstp qword [ebp - 0x478]
jmp 0x4ca0fa
fld qword [ebp - 0x478]
fadd qword [0x9cf918]
fstp qword [ebp - 0x478]
fld qword [0x9d2438]
fcomp qword [ebp - 0x478]
fnstsw ax
test ah, 0x41
jne 0x4ca183
fld qword [0x9d2430]
fmul qword [ebp - 0x478]
fmul qword [ebp - 0x478]
fld qword [ebp - 0x478]
fmul qword [ebp - 0x478]
fsubp st(1)
fld qword [0x9d2428]
fmul qword [ebp - 0x478]
fmul qword [ebp - 0x478]
fadd qword [0x9d1f60]
fdivp st(1)
fadd qword [ebp - 0x4a0]
fstp qword [ebp - 0x4a0]
fld qword [0x9d2420]
fcomp qword [ebp - 0x4a0]
fnstsw ax
test ah, 5
jp 0x4ca17e
fld qword [0x9d2418]
fmul qword [ebp - 0x478]
fsubr qword [ebp - 0x4a0]
fstp qword [ebp - 0x4a0]
jmp 0x4ca0e8
fldz
fcomp qword [ebp - 0x4a0]
fnstsw ax
test ah, 0x41
jne 0x4ca1c9
jb 0x4ca1f0
jo 0x4ca212
jnp 0x4ca215
jo 0x4ca208
cmp edx, dword [edi + 0x68]
and byte [eax], dh
dec edi
xor edx, dword [eax + edi + 0x58]
push ebp
je 0x4ca204
jne 0x4ca205
jl 0x4ca1ea
push 0x236d7778
dec ebp
push esi
push eax
push edx
dec ebx
push esp
dec eax
dec eax
dec ebx
push esi
dec edi
dec edi
inc edi
push ebx
inc edi
push ebp
dec esi
push edi
push esp
jmp 0x4cc2ab
mov dword [ebp - 0x470], 0x4ca1b2
mov dword [ebp - 0x480], 0x4ca192
mov eax, dword [ebp - 0x470]
mov dword [ebp - 0x4b0], eax
mov ecx, dword [ebp - 0x480]
mov dword [ebp - 0x4ac], ecx
mov byte [ebp - 0x5c9], 0x24
mov dword [ebp - 0x5c0], 0
lea eax, [eax - 0x76000005]
lea edx, [ebx + edi*8 - 1]
inc esi
test dword [edi], esi
cli
invalid
add byte [eax], al
add bl, ch
jnp 0x46e2a2
jmp 0x4ca217
mov edx, dword [ebp - 0x5c0]
add edx, 1
mov dword [ebp - 0x5c0], edx
inc dword [ebx - 0x6a76fe3e]
xchg ebp, eax
inc eax
cli
invalid
cmp dword [ebp - 0x5c0], 0x100
jae 0x4ca238
mov eax, dword [ebp - 0x5c0]
mov cl, byte [ebp - 0x5c0]
mov byte [ebp + eax - 0x5b8], cl
jmp 0x4ca208
mov dword [ebp - 0x4b4], 0
mov byte [ebp - 0x5ca], 0
mov dword [ebp - 0x5c0], 0xff
jmp 0x4ca264
mov edx, dword [ebp - 0x5c0]
sub edx, 1
mov dword [ebp - 0x5c0], edx
cmp dword [ebp - 0x5c0], 0
jbe 0x4ca57c
mov dword [ebp - 0x5d0], 0
mov dword [ebp - 0x5d8], 1
mov eax, dword [ebp - 0x5d8]
cmp eax, dword [ebp - 0x5c0]
jae 0x4ca2a5
mov ecx, dword [ebp - 0x5d8]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x5d8], edx
jmp 0x4ca285
mov eax, dword [ebp - 0x4b4]
mov dword [ebp - 0x780], eax
cmp dword [ebp - 0x780], 3
ja case.default.0x4ca2c4
mov ecx, dword [ebp - 0x780]
jmp dword [ecx*4 + 0x4cc4a4]
movzx edx, byte [ebp - 0x5ca]
movzx ecx, byte [ebp + edx - 0x5b8]
fld qword [ebp - 0x4a0]
fnstcw word [ebp - 0x782]
movzx eax, word [ebp - 0x782]
or eax, 0xc00
mov dword [ebp - 0x788], eax
fldcw word [ebp - 0x788]
fistp qword [ebp - 0x790]
fldcw word [ebp - 0x782]
mov edx, dword [ebp - 0x790]
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x5ca], cl
jmp 0x4ca455
movzx eax, byte [ebp - 0x5ca]
movzx ecx, byte [ebp + eax - 0x5b8]
fld qword [ebp - 0x4a0]
fnstcw word [ebp - 0x792]
movzx eax, word [ebp - 0x792]
or eax, 0xc00
mov dword [ebp - 0x798], eax
fldcw word [ebp - 0x798]
fistp qword [ebp - 0x7a0]
fldcw word [ebp - 0x792]
mov edx, dword [ebp - 0x7a0]
shr edx, 8
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x5ca], cl
jmp 0x4ca455
movzx eax, byte [ebp - 0x5ca]
movzx ecx, byte [ebp + eax - 0x5b8]
fld qword [ebp - 0x4a0]
fnstcw word [ebp - 0x7a2]
movzx eax, word [ebp - 0x7a2]
or eax, 0xc00
mov dword [ebp - 0x7a8], eax
fldcw word [ebp - 0x7a8]
fistp qword [ebp - 0x7b0]
fldcw word [ebp - 0x7a2]
mov edx, dword [ebp - 0x7b0]
shr edx, 0x10
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x5ca], cl
jmp 0x4ca455
movzx eax, byte [ebp - 0x5ca]
movzx ecx, byte [ebp + eax - 0x5b8]
fld qword [ebp - 0x4a0]
fnstcw word [ebp - 0x7b2]
movzx eax, word [ebp - 0x7b2]
or eax, 0xc00
mov dword [ebp - 0x7b8], eax
fldcw word [ebp - 0x7b8]
fistp qword [ebp - 0x7c0]
fldcw word [ebp - 0x7b2]
mov edx, dword [ebp - 0x7c0]
shr edx, 0x18
and edx, 0xff
add ecx, edx
mov byte [ebp - 0x5ca], cl
jmp 0x4ca455
movzx eax, byte [ebp - 0x5ca]
movzx ecx, byte [ebp + eax - 0x5b8]
mov edx, dword [ebp - 0x4ac]
add edx, dword [ebp - 0x4b4]
movzx eax, byte [edx - 4]
add ecx, eax
mov byte [ebp - 0x5ca], cl
mov ecx, dword [ebp - 0x4b4]
add ecx, 1
mov dword [ebp - 0x4b4], ecx
movzx edx, byte [ebp - 0x5c9]
cmp dword [ebp - 0x4b4], edx
jb 0x4ca493
mov dword [ebp - 0x4b4], 0
movzx eax, byte [ebp - 0x5c9]
movzx ecx, byte [ebp - 0x5ca]
add ecx, eax
mov byte [ebp - 0x5ca], cl
movzx edx, byte [ebp - 0x5ca]
and edx, dword [ebp - 0x5d8]
mov dword [ebp - 0x5d4], edx
mov eax, dword [ebp - 0x5d0]
add eax, 1
mov dword [ebp - 0x5d0], eax
cmp dword [ebp - 0x5d0], 0xb
jbe 0x4ca4d2
mov eax, dword [ebp - 0x5d4]
xor edx, edx
div dword [ebp - 0x5c0]
mov dword [ebp - 0x5d4], edx
mov ecx, dword [ebp - 0x5d4]
cmp ecx, dword [ebp - 0x5c0]
ja 0x4ca2a5
mov edx, dword [ebp - 0x5c0]
cmp edx, dword [ebp - 0x5d4]
je 0x4ca577
mov eax, dword [ebp - 0x5d4]
movzx ecx, byte [ebp + eax - 0x5b8]
mov edx, dword [ebp - 0x5c0]
movzx eax, byte [ebp + edx - 0x5b8]
xor eax, ecx
mov ecx, dword [ebp - 0x5c0]
mov byte [ebp + ecx - 0x5b8], al
mov edx, dword [ebp - 0x5c0]
movzx eax, byte [ebp + edx - 0x5b8]
mov ecx, dword [ebp - 0x5d4]
movzx edx, byte [ebp + ecx - 0x5b8]
xor edx, eax
mov eax, dword [ebp - 0x5d4]
mov byte [ebp + eax - 0x5b8], dl
mov ecx, dword [ebp - 0x5d4]
movzx edx, byte [ebp + ecx - 0x5b8]
mov eax, dword [ebp - 0x5c0]
movzx ecx, byte [ebp + eax - 0x5b8]
xor ecx, edx
mov edx, dword [ebp - 0x5c0]
mov byte [ebp + edx - 0x5b8], cl
jmp 0x4ca255
mov al, byte [ebp - 0x5b7]
mov byte [ebp - 0x5cb], al
mov cl, byte [ebp - 0x5b5]
mov byte [ebp - 0x4b5], cl
mov dl, byte [ebp - 0x5b3]
mov byte [ebp - 0x5b9], dl
mov al, byte [ebp - 0x5b1]
mov byte [ebp - 0x5c1], al
movzx ecx, byte [ebp - 0x5ca]
mov dl, byte [ebp + ecx - 0x5b8]
mov byte [ebp - 0x4a5], dl
mov dword [ebp - 0x5c8], 0x12
cmp dword [ebp - 0x5c8], 2
jle 0x4cc277
mov eax, dword [ebp - 0x5c8]
and eax, 1
jne 0x4cc277
mov dword [ebp - 0x64c], 0
mov dword [ebp - 0x648], 0
mov ecx, dword [ebp - 0x648]
add ecx, 1
mov dword [ebp - 0x648], ecx
mov dword [ebp - 0x5e4], 0
mov edx, dword [ebp - 0x64c]
shl edx, 1
mov dword [ebp - 0x5e4], edx
mov dword [ebp - 0x674], 0
mov eax, dword [ebp - 0x4b0]
add eax, dword [ebp - 0x5e4]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x674]
mov dword [ebp - 0x674], ecx
mov dword [ebp - 0x60c], 0
mov edx, dword [ebp - 0x60c]
add edx, 0x48
mov dword [ebp - 0x60c], edx
mov dword [ebp - 0x638], 0
mov eax, dword [ebp - 0x64c]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x638], ecx
mov dword [ebp - 0x698], 0
mov edx, dword [ebp - 0x4b0]
add edx, dword [ebp - 0x638]
movzx eax, byte [edx]
add eax, dword [ebp - 0x698]
mov dword [ebp - 0x698], eax
mov dword [ebp - 0x670], 0
mov ecx, dword [ebp - 0x670]
add ecx, 0x46
mov dword [ebp - 0x670], ecx
mov dword [ebp - 0x694], 0
mov edx, dword [ebp - 0x674]
sub edx, dword [ebp - 0x60c]
add edx, dword [ebp - 0x694]
mov dword [ebp - 0x694], edx
mov dword [ebp - 0x5e8], 0
mov eax, dword [ebp - 0x698]
sub eax, dword [ebp - 0x670]
add eax, dword [ebp - 0x5e8]
mov dword [ebp - 0x5e8], eax
mov dword [ebp - 0x690], 0
mov ecx, dword [ebp - 0x694]
shl ecx, 4
mov dword [ebp - 0x690], ecx
mov dword [ebp - 0x66c], 0
mov edx, dword [ebp - 0x5e8]
mov dword [ebp - 0x66c], edx
mov dword [ebp - 0x644], 0
mov eax, dword [ebp - 0x690]
or eax, dword [ebp - 0x66c]
mov dword [ebp - 0x644], eax
mov byte [ebp - 0x619], 0
mov cl, byte [ebp - 0x644]
mov byte [ebp - 0x619], cl
mov byte [ebp - 0x689], 0
movzx edx, byte [ebp - 0x4a5]
mov al, byte [ebp + edx - 0x5b8]
mov byte [ebp - 0x689], al
fld dword [0x9d2414]
fstp dword [ebp - 0x608]
fld dword [0x9d2410]
fstp dword [ebp - 0x5e0]
fld dword [0x9d240c]
fstp dword [ebp - 0x664]
fld dword [0x9d2408]
fstp dword [ebp - 0x634]
fld dword [0x9d2404]
fstp dword [ebp - 0x604]
fld dword [0x9d2400]
fstp dword [ebp - 0x5dc]
fld dword [ebp - 0x608]
fmul dword [ebp - 0x5dc]
fstp dword [ebp - 0x608]
fld dword [ebp - 0x5e0]
fmul dword [ebp - 0x5dc]
fstp dword [ebp - 0x5e0]
fld dword [ebp - 0x664]
fsub dword [ebp - 0x5dc]
fstp dword [ebp - 0x664]
fld dword [ebp - 0x634]
fmul dword [ebp - 0x5dc]
fstp dword [ebp - 0x634]
fld dword [ebp - 0x664]
fsub dword [ebp - 0x5dc]
fstp dword [ebp - 0x664]
fld dword [ebp - 0x608]
fadd dword [ebp - 0x5dc]
fstp dword [ebp - 0x608]
fld dword [ebp - 0x5dc]
fld dword [ebp - 0x608]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4ca8df
fld dword [ebp - 0x608]
fadd dword [ebp - 0x664]
fstp dword [ebp - 0x608]
fld dword [ebp - 0x634]
fadd dword [ebp - 0x5dc]
fstp dword [ebp - 0x634]
fld dword [ebp - 0x608]
fmul dword [ebp - 0x664]
fstp dword [ebp - 0x608]
fld dword [ebp - 0x5e0]
fadd dword [ebp - 0x634]
fstp dword [ebp - 0x5e0]
fld dword [ebp - 0x604]
fsub dword [ebp - 0x608]
fstp dword [ebp - 0x604]
fld dword [ebp - 0x604]
fsub dword [ebp - 0x608]
fstp dword [ebp - 0x604]
movzx ecx, byte [ebp - 0x5cb]
movzx edx, byte [ebp + ecx - 0x5b8]
movzx eax, byte [ebp - 0x4b5]
add eax, edx
mov byte [ebp - 0x4b5], al
mov cl, byte [ebp - 0x5cb]
add cl, 1
mov byte [ebp - 0x5cb], cl
jmp 0x4caaa6
fld dword [ebp - 0x664]
fadd dword [ebp - 0x634]
fstp dword [ebp - 0x664]
fld dword [ebp - 0x604]
fadd dword [ebp - 0x5dc]
fstp dword [ebp - 0x604]
fld dword [ebp - 0x608]
fmul dword [ebp - 0x5e0]
fstp dword [ebp - 0x608]
fld dword [ebp - 0x608]
fadd dword [ebp - 0x5e0]
fstp dword [ebp - 0x608]
fld dword [ebp - 0x664]
fadd dword [ebp - 0x634]
fstp dword [ebp - 0x664]
fld dword [ebp - 0x634]
fsub dword [ebp - 0x604]
fstp dword [ebp - 0x634]
fld dword [ebp - 0x604]
fmul dword [ebp - 0x608]
fstp dword [ebp - 0x604]
fld dword [ebp - 0x604]
fsub dword [ebp - 0x608]
fstp dword [ebp - 0x604]
fld dword [ebp - 0x608]
fdiv dword [ebp - 0x664]
fstp dword [ebp - 0x608]
fld dword [ebp - 0x604]
fadd dword [ebp - 0x608]
fstp dword [ebp - 0x604]
fld dword [ebp - 0x5e0]
fdiv dword [ebp - 0x634]
fstp dword [ebp - 0x5e0]
fld dword [ebp - 0x5e0]
fsub dword [ebp - 0x634]
fstp dword [ebp - 0x5e0]
fld dword [ebp - 0x604]
fld dword [ebp - 0x608]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4caa3a
fld dword [ebp - 0x608]
fadd dword [ebp - 0x5e0]
fstp dword [ebp - 0x608]
fld dword [ebp - 0x5e0]
fmul dword [ebp - 0x664]
fstp dword [ebp - 0x5e0]
fld dword [ebp - 0x608]
fadd dword [ebp - 0x5e0]
fstp dword [ebp - 0x608]
fld dword [ebp - 0x608]
fsub dword [ebp - 0x5e0]
fstp dword [ebp - 0x608]
fld dword [ebp - 0x664]
fdiv dword [ebp - 0x634]
fstp dword [ebp - 0x664]
fld dword [ebp - 0x634]
fmul dword [ebp - 0x604]
fstp dword [ebp - 0x634]
jmp 0x4caaa6
fld dword [ebp - 0x608]
fadd dword [ebp - 0x664]
fstp dword [ebp - 0x608]
fld dword [ebp - 0x604]
fmul dword [ebp - 0x608]
fstp dword [ebp - 0x604]
fld dword [ebp - 0x664]
fadd dword [ebp - 0x604]
fstp dword [ebp - 0x664]
fld dword [ebp - 0x5e0]
fsub dword [ebp - 0x634]
fstp dword [ebp - 0x5e0]
fld dword [ebp - 0x634]
fadd dword [ebp - 0x5dc]
fstp dword [ebp - 0x634]
fld dword [ebp - 0x664]
fmul dword [ebp - 0x604]
fstp dword [ebp - 0x664]
movzx edx, byte [ebp - 0x4b5]
movzx eax, byte [ebp - 0x4a5]
mov cl, byte [ebp + edx - 0x5b8]
mov byte [ebp + eax - 0x5b8], cl
movzx edx, byte [ebp - 0x5c1]
movzx eax, byte [ebp - 0x4b5]
mov cl, byte [ebp + edx - 0x5b8]
mov byte [ebp + eax - 0x5b8], cl
movzx edx, byte [ebp - 0x5cb]
movzx eax, byte [ebp - 0x5c1]
mov cl, byte [ebp + edx - 0x5b8]
mov byte [ebp + eax - 0x5b8], cl
movzx edx, byte [ebp - 0x5cb]
mov al, byte [ebp - 0x689]
mov byte [ebp + edx - 0x5b8], al
movzx ecx, byte [ebp - 0x689]
movzx edx, byte [ebp + ecx - 0x5b8]
movzx eax, byte [ebp - 0x5b9]
add eax, edx
mov byte [ebp - 0x5b9], al
movzx ecx, byte [ebp - 0x619]
movzx edx, byte [ebp - 0x4b5]
movzx eax, byte [ebp + edx - 0x5b8]
movzx edx, byte [ebp - 0x5cb]
movzx edx, byte [ebp + edx - 0x5b8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5b8]
xor ecx, eax
movzx edx, byte [ebp - 0x5c1]
movzx eax, byte [ebp + edx - 0x5b8]
movzx edx, byte [ebp - 0x4a5]
movzx edx, byte [ebp + edx - 0x5b8]
add eax, edx
movzx edx, byte [ebp - 0x5b9]
movzx edx, byte [ebp + edx - 0x5b8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5b8]
movzx edx, byte [ebp + eax - 0x5b8]
xor ecx, edx
mov byte [ebp - 0x5c1], cl
mov al, byte [ebp - 0x619]
mov byte [ebp - 0x4a5], al
mov cl, byte [ebp - 0x5c1]
mov byte [ebp - 0x665], cl
cmp dword [ebp - 0x64c], 0
jle 0x4cabe4
mov edx, dword [ebp - 0x64c]
mov al, byte [ebp - 0x665]
mov byte [ebp + edx - 0x495], al
mov ecx, dword [ebp - 0x64c]
add ecx, 1
mov dword [ebp - 0x64c], ecx
mov edx, dword [ebp - 0x648]
add edx, 1
mov dword [ebp - 0x648], edx
mov eax, dword [ebp - 0x64c]
shl eax, 1
mov dword [ebp - 0x5e4], eax
mov ecx, dword [ebp - 0x4b0]
add ecx, dword [ebp - 0x5e4]
movzx edx, byte [ecx]
mov dword [ebp - 0x674], edx
mov dword [ebp - 0x60c], 0x48
mov eax, dword [ebp - 0x64c]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x638], ecx
mov edx, dword [ebp - 0x4b0]
add edx, dword [ebp - 0x638]
movzx eax, byte [edx]
mov dword [ebp - 0x698], eax
mov dword [ebp - 0x670], 0x46
mov ecx, dword [ebp - 0x674]
sub ecx, dword [ebp - 0x60c]
mov dword [ebp - 0x694], ecx
mov edx, dword [ebp - 0x698]
sub edx, dword [ebp - 0x670]
mov dword [ebp - 0x5e8], edx
fld qword [0x9d23f8]
fstp qword [ebp - 0x660]
fld qword [0x9d23f0]
fstp qword [ebp - 0x5f0]
fld qword [0x9d23e8]
fstp qword [ebp - 0x618]
fld qword [0x9d23e0]
fstp qword [ebp - 0x640]
fld qword [ebp - 0x5f0]
fsub qword [ebp - 0x640]
fstp qword [ebp - 0x5f0]
fld qword [ebp - 0x618]
fadd qword [ebp - 0x640]
fstp qword [ebp - 0x618]
fld qword [ebp - 0x618]
fmul qword [ebp - 0x640]
fstp qword [ebp - 0x618]
fld qword [ebp - 0x618]
fadd qword [ebp - 0x640]
fstp qword [ebp - 0x618]
fld qword [ebp - 0x618]
fcomp qword [ebp - 0x640]
fnstsw ax
test ah, 0x41
jne 0x4cad69
fld qword [ebp - 0x618]
fmul qword [ebp - 0x660]
fstp qword [ebp - 0x618]
fld qword [ebp - 0x640]
fsub qword [ebp - 0x5f0]
fstp qword [ebp - 0x640]
fld qword [ebp - 0x618]
fadd qword [ebp - 0x660]
fstp qword [ebp - 0x618]
fld qword [ebp - 0x5f0]
fadd qword [ebp - 0x640]
fstp qword [ebp - 0x5f0]
mov eax, dword [ebp - 0x694]
shl eax, 4
mov dword [ebp - 0x690], eax
jmp 0x4cae9e
fld qword [ebp - 0x660]
fadd qword [ebp - 0x618]
fstp qword [ebp - 0x660]
fld qword [ebp - 0x618]
fmul qword [ebp - 0x660]
fstp qword [ebp - 0x618]
fld qword [ebp - 0x640]
fadd qword [ebp - 0x5f0]
fstp qword [ebp - 0x640]
fld qword [ebp - 0x640]
fsub qword [ebp - 0x5f0]
fstp qword [ebp - 0x640]
fld qword [ebp - 0x5f0]
fsub qword [ebp - 0x618]
fstp qword [ebp - 0x5f0]
fld qword [ebp - 0x640]
fadd qword [ebp - 0x660]
fstp qword [ebp - 0x640]
fld qword [ebp - 0x5f0]
fsub qword [ebp - 0x618]
fstp qword [ebp - 0x5f0]
fld qword [ebp - 0x660]
fmul qword [ebp - 0x5f0]
fstp qword [ebp - 0x660]
fld qword [ebp - 0x640]
fcomp qword [ebp - 0x5f0]
fnstsw ax
test ah, 5
jp 0x4cae56
fld qword [ebp - 0x618]
fmul qword [ebp - 0x660]
fstp qword [ebp - 0x618]
fld qword [ebp - 0x660]
fdiv qword [ebp - 0x618]
fstp qword [ebp - 0x660]
fld qword [ebp - 0x660]
fmul qword [ebp - 0x618]
fstp qword [ebp - 0x660]
fld qword [ebp - 0x640]
fsub qword [ebp - 0x5f0]
fstp qword [ebp - 0x640]
jmp 0x4cae9e
fld qword [ebp - 0x5f0]
fsub qword [ebp - 0x618]
fstp qword [ebp - 0x5f0]
fld qword [ebp - 0x660]
fmul qword [ebp - 0x5f0]
fstp qword [ebp - 0x660]
fld qword [ebp - 0x618]
fadd qword [ebp - 0x640]
fstp qword [ebp - 0x618]
fld qword [ebp - 0x618]
fdiv qword [ebp - 0x640]
fstp qword [ebp - 0x618]
mov ecx, dword [ebp - 0x5e8]
mov dword [ebp - 0x66c], ecx
mov edx, dword [ebp - 0x690]
or edx, dword [ebp - 0x66c]
mov dword [ebp - 0x644], edx
mov al, byte [ebp - 0x644]
mov byte [ebp - 0x619], al
movzx ecx, byte [ebp - 0x4a5]
mov dl, byte [ebp + ecx - 0x5b8]
mov byte [ebp - 0x689], dl
movzx eax, byte [ebp - 0x5cb]
movzx ecx, byte [ebp + eax - 0x5b8]
movzx edx, byte [ebp - 0x4b5]
add edx, ecx
mov byte [ebp - 0x4b5], dl
mov al, byte [ebp - 0x5cb]
add al, 1
mov byte [ebp - 0x5cb], al
movzx ecx, byte [ebp - 0x4b5]
movzx edx, byte [ebp - 0x4a5]
mov al, byte [ebp + ecx - 0x5b8]
mov byte [ebp + edx - 0x5b8], al
movzx ecx, byte [ebp - 0x5c1]
movzx edx, byte [ebp - 0x4b5]
mov al, byte [ebp + ecx - 0x5b8]
mov byte [ebp + edx - 0x5b8], al
movzx ecx, byte [ebp - 0x5cb]
movzx edx, byte [ebp - 0x5c1]
mov al, byte [ebp + ecx - 0x5b8]
mov byte [ebp + edx - 0x5b8], al
movzx ecx, byte [ebp - 0x5cb]
mov dl, byte [ebp - 0x689]
mov byte [ebp + ecx - 0x5b8], dl
movzx eax, byte [ebp - 0x689]
movzx ecx, byte [ebp + eax - 0x5b8]
movzx edx, byte [ebp - 0x5b9]
add edx, ecx
mov byte [ebp - 0x5b9], dl
movzx eax, byte [ebp - 0x619]
movzx ecx, byte [ebp - 0x4b5]
movzx edx, byte [ebp + ecx - 0x5b8]
movzx ecx, byte [ebp - 0x5cb]
movzx ecx, byte [ebp + ecx - 0x5b8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5b8]
xor eax, edx
movzx ecx, byte [ebp - 0x5c1]
movzx edx, byte [ebp + ecx - 0x5b8]
movzx ecx, byte [ebp - 0x4a5]
movzx ecx, byte [ebp + ecx - 0x5b8]
add edx, ecx
movzx ecx, byte [ebp - 0x5b9]
movzx ecx, byte [ebp + ecx - 0x5b8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5b8]
movzx ecx, byte [ebp + edx - 0x5b8]
xor eax, ecx
mov byte [ebp - 0x5c1], al
mov dl, byte [ebp - 0x619]
mov byte [ebp - 0x4a5], dl
mov al, byte [ebp - 0x5c1]
mov byte [ebp - 0x665], al
cmp dword [ebp - 0x64c], 0
jle 0x4cb048
mov ecx, dword [ebp - 0x64c]
mov dl, byte [ebp - 0x665]
mov byte [ebp + ecx - 0x495], dl
mov eax, dword [ebp - 0x648]
add eax, 2
mov dword [ebp - 0x648], eax
mov ecx, dword [ebp - 0x64c]
add ecx, 1
mov dword [ebp - 0x69c], ecx
jmp 0x4cb077
mov edx, dword [ebp - 0x69c]
add edx, 1
mov dword [ebp - 0x69c], edx
mov eax, dword [ebp - 0x69c]
cmp eax, dword [ebp - 0x648]
jge 0x4cb4c1
mov ecx, dword [ebp - 0x64c]
add ecx, 1
mov dword [ebp - 0x64c], ecx
mov edx, dword [ebp - 0x64c]
shl edx, 1
mov dword [ebp - 0x5e4], edx
mov eax, dword [ebp - 0x4b0]
add eax, dword [ebp - 0x5e4]
movzx ecx, byte [eax]
mov dword [ebp - 0x674], ecx
mov dword [ebp - 0x60c], 0x48
mov edx, dword [ebp - 0x64c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x638], eax
mov ecx, dword [ebp - 0x4b0]
add ecx, dword [ebp - 0x638]
movzx edx, byte [ecx]
mov dword [ebp - 0x698], edx
mov dword [ebp - 0x670], 0x46
mov eax, dword [ebp - 0x674]
sub eax, dword [ebp - 0x60c]
mov dword [ebp - 0x694], eax
mov ecx, dword [ebp - 0x698]
sub ecx, dword [ebp - 0x670]
mov dword [ebp - 0x5e8], ecx
fld qword [0x9d23d8]
fstp qword [ebp - 0x6d8]
fld qword [0x9d23d0]
fstp qword [ebp - 0x6b0]
fld qword [0x9d23c8]
fstp qword [ebp - 0x6c0]
fld qword [0x9d23c0]
fstp qword [ebp - 0x6c8]
fld qword [0x9d23b8]
fstp qword [ebp - 0x6d0]
fld qword [0x9d23b0]
fstp qword [ebp - 0x6a8]
fld qword [0x9d23a8]
fstp qword [ebp - 0x6b8]
fld qword [ebp - 0x6d0]
fsub qword [ebp - 0x6b8]
fstp qword [ebp - 0x6d0]
fld qword [ebp - 0x6c8]
fmul qword [ebp - 0x6b8]
fstp qword [ebp - 0x6c8]
fld qword [ebp - 0x6a8]
fadd qword [ebp - 0x6b8]
fstp qword [ebp - 0x6a8]
fld qword [ebp - 0x6d8]
fmul qword [ebp - 0x6b8]
fstp qword [ebp - 0x6d8]
fld qword [ebp - 0x6a8]
fadd qword [ebp - 0x6b8]
fstp qword [ebp - 0x6a8]
fld qword [ebp - 0x6d8]
fsub qword [ebp - 0x6b8]
fstp qword [ebp - 0x6d8]
fld qword [ebp - 0x6d8]
fsub qword [ebp - 0x6b8]
fstp qword [ebp - 0x6d8]
fld qword [ebp - 0x6d8]
fcomp qword [ebp - 0x6b8]
fnstsw ax
test ah, 5
jp 0x4cb284
fld qword [ebp - 0x6b8]
fsub qword [ebp - 0x6d8]
fstp qword [ebp - 0x6b8]
fld qword [ebp - 0x6d8]
fadd qword [ebp - 0x6b0]
fstp qword [ebp - 0x6d8]
fld qword [ebp - 0x6d8]
fsub qword [ebp - 0x6b0]
fstp qword [ebp - 0x6d8]
fld qword [ebp - 0x6c0]
fmul qword [ebp - 0x6c8]
fstp qword [ebp - 0x6c0]
fld qword [ebp - 0x6d0]
fdiv qword [ebp - 0x6a8]
fstp qword [ebp - 0x6d0]
fld qword [ebp - 0x6a8]
fmul qword [ebp - 0x6b8]
fstp qword [ebp - 0x6a8]
fld qword [ebp - 0x6b8]
fsub qword [ebp - 0x6d8]
fstp qword [ebp - 0x6b8]
jmp 0x4cb311
fld qword [ebp - 0x6a8]
fadd qword [ebp - 0x6b8]
fstp qword [ebp - 0x6a8]
fld qword [ebp - 0x6c8]
fsub qword [ebp - 0x6d0]
fstp qword [ebp - 0x6c8]
fld qword [ebp - 0x6d8]
fadd qword [ebp - 0x6b0]
fstp qword [ebp - 0x6d8]
fld qword [ebp - 0x6b0]
fadd qword [ebp - 0x6c0]
fstp qword [ebp - 0x6b0]
fld qword [ebp - 0x6c0]
fadd qword [ebp - 0x6c8]
fstp qword [ebp - 0x6c0]
fld qword [ebp - 0x6d8]
fsub qword [ebp - 0x6b0]
fstp qword [ebp - 0x6d8]
fld qword [ebp - 0x6d8]
fsub qword [ebp - 0x6b0]
fstp qword [ebp - 0x6d8]
mov edx, dword [ebp - 0x694]
shl edx, 4
mov dword [ebp - 0x690], edx
mov eax, dword [ebp - 0x5e8]
mov dword [ebp - 0x66c], eax
mov ecx, dword [ebp - 0x690]
or ecx, dword [ebp - 0x66c]
mov dword [ebp - 0x644], ecx
mov dl, byte [ebp - 0x644]
mov byte [ebp - 0x619], dl
movzx eax, byte [ebp - 0x4a5]
mov cl, byte [ebp + eax - 0x5b8]
mov byte [ebp - 0x689], cl
movzx edx, byte [ebp - 0x5cb]
movzx eax, byte [ebp + edx - 0x5b8]
movzx ecx, byte [ebp - 0x4b5]
add ecx, eax
mov byte [ebp - 0x4b5], cl
mov dl, byte [ebp - 0x5cb]
add dl, 1
mov byte [ebp - 0x5cb], dl
movzx eax, byte [ebp - 0x4b5]
movzx ecx, byte [ebp - 0x4a5]
mov dl, byte [ebp + eax - 0x5b8]
mov byte [ebp + ecx - 0x5b8], dl
movzx eax, byte [ebp - 0x5c1]
movzx ecx, byte [ebp - 0x4b5]
mov dl, byte [ebp + eax - 0x5b8]
mov byte [ebp + ecx - 0x5b8], dl
movzx eax, byte [ebp - 0x5cb]
movzx ecx, byte [ebp - 0x5c1]
mov dl, byte [ebp + eax - 0x5b8]
mov byte [ebp + ecx - 0x5b8], dl
movzx eax, byte [ebp - 0x5cb]
mov cl, byte [ebp - 0x689]
mov byte [ebp + eax - 0x5b8], cl
movzx edx, byte [ebp - 0x689]
movzx eax, byte [ebp + edx - 0x5b8]
movzx ecx, byte [ebp - 0x5b9]
add ecx, eax
mov byte [ebp - 0x5b9], cl
movzx edx, byte [ebp - 0x619]
movzx eax, byte [ebp - 0x4b5]
movzx ecx, byte [ebp + eax - 0x5b8]
movzx eax, byte [ebp - 0x5cb]
movzx eax, byte [ebp + eax - 0x5b8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5b8]
xor edx, ecx
movzx eax, byte [ebp - 0x5c1]
movzx ecx, byte [ebp + eax - 0x5b8]
movzx eax, byte [ebp - 0x4a5]
movzx eax, byte [ebp + eax - 0x5b8]
add ecx, eax
movzx eax, byte [ebp - 0x5b9]
movzx eax, byte [ebp + eax - 0x5b8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5b8]
movzx eax, byte [ebp + ecx - 0x5b8]
xor edx, eax
mov byte [ebp - 0x5c1], dl
mov cl, byte [ebp - 0x619]
mov byte [ebp - 0x4a5], cl
mov dl, byte [ebp - 0x5c1]
mov byte [ebp - 0x665], dl
cmp dword [ebp - 0x64c], 0
jle 0x4cb4bc
mov eax, dword [ebp - 0x64c]
mov cl, byte [ebp - 0x665]
mov byte [ebp + eax - 0x495], cl
jmp 0x4cb068
mov edx, dword [ebp - 0x648]
add edx, 1
mov dword [ebp - 0x648], edx
mov eax, dword [ebp - 0x648]
add eax, 2
mov dword [ebp - 0x648], eax
mov ecx, dword [ebp - 0x64c]
add ecx, 1
mov dword [ebp - 0x6dc], ecx
jmp 0x4cb4ff
mov edx, dword [ebp - 0x6dc]
add edx, 1
mov dword [ebp - 0x6dc], edx
mov eax, dword [ebp - 0x6dc]
cmp eax, dword [ebp - 0x648]
jge 0x4cb970
mov ecx, dword [ebp - 0x64c]
add ecx, 1
mov dword [ebp - 0x64c], ecx
mov edx, dword [ebp - 0x64c]
shl edx, 1
mov dword [ebp - 0x5e4], edx
mov eax, dword [ebp - 0x4b0]
add eax, dword [ebp - 0x5e4]
movzx ecx, byte [eax]
mov dword [ebp - 0x674], ecx
mov dword [ebp - 0x60c], 0x48
fld dword [0x9d23a4]
fstp dword [ebp - 0x6ec]
fld dword [0x9d23a0]
fstp dword [ebp - 0x6e0]
fld dword [0x9d239c]
fstp dword [ebp - 0x6e4]
fld dword [0x9d2398]
fstp dword [ebp - 0x6e8]
fld dword [ebp - 0x6ec]
fadd dword [ebp - 0x6e8]
fstp dword [ebp - 0x6ec]
fld dword [ebp - 0x6ec]
fsub dword [ebp - 0x6e8]
fstp dword [ebp - 0x6ec]
fld dword [ebp - 0x6e4]
fmul dword [ebp - 0x6e8]
fstp dword [ebp - 0x6e4]
fld dword [ebp - 0x6e0]
fmul dword [ebp - 0x6e8]
fstp dword [ebp - 0x6e0]
fld dword [ebp - 0x6e8]
fld dword [ebp - 0x6e0]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4cb637
fld dword [ebp - 0x6e4]
fsub dword [ebp - 0x6e8]
fstp dword [ebp - 0x6e4]
fld dword [ebp - 0x6ec]
fmul dword [ebp - 0x6e0]
fstp dword [ebp - 0x6ec]
fld dword [ebp - 0x6e8]
fadd dword [ebp - 0x6ec]
fstp dword [ebp - 0x6e8]
fld dword [ebp - 0x6ec]
fmul dword [ebp - 0x6e0]
fstp dword [ebp - 0x6ec]
mov edx, dword [ebp - 0x64c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x638], eax
jmp 0x4cb76e
fld dword [ebp - 0x6e8]
fdiv dword [ebp - 0x6e0]
fstp dword [ebp - 0x6e8]
fld dword [ebp - 0x6e8]
fsub dword [ebp - 0x6e0]
fstp dword [ebp - 0x6e8]
fld dword [ebp - 0x6e0]
fsub dword [ebp - 0x6e8]
fstp dword [ebp - 0x6e0]
fld dword [ebp - 0x6e8]
fmul dword [ebp - 0x6e0]
fstp dword [ebp - 0x6e8]
fld dword [ebp - 0x6e8]
fdiv dword [ebp - 0x6e0]
fstp dword [ebp - 0x6e8]
fld dword [ebp - 0x6e0]
fsub dword [ebp - 0x6e8]
fstp dword [ebp - 0x6e0]
fld dword [ebp - 0x6e8]
fdiv dword [ebp - 0x6e0]
fstp dword [ebp - 0x6e8]
fld dword [ebp - 0x6ec]
fmul dword [ebp - 0x6e4]
fstp dword [ebp - 0x6ec]
fld dword [ebp - 0x6ec]
fld dword [ebp - 0x6e4]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4cb726
fld dword [ebp - 0x6e0]
fsub dword [ebp - 0x6e4]
fstp dword [ebp - 0x6e0]
fld dword [ebp - 0x6e0]
fmul dword [ebp - 0x6e4]
fstp dword [ebp - 0x6e0]
fld dword [ebp - 0x6e0]
fdiv dword [ebp - 0x6e4]
fstp dword [ebp - 0x6e0]
fld dword [ebp - 0x6e0]
fdiv dword [ebp - 0x6e4]
fstp dword [ebp - 0x6e0]
jmp 0x4cb76e
fld dword [ebp - 0x6e8]
fdiv dword [ebp - 0x6ec]
fstp dword [ebp - 0x6e8]
fld dword [ebp - 0x6e0]
fsub dword [ebp - 0x6e4]
fstp dword [ebp - 0x6e0]
fld dword [ebp - 0x6ec]
fdiv dword [ebp - 0x6e0]
fstp dword [ebp - 0x6ec]
fld dword [ebp - 0x6e4]
fadd dword [ebp - 0x6e8]
fstp dword [ebp - 0x6e4]
mov ecx, dword [ebp - 0x4b0]
add ecx, dword [ebp - 0x638]
movzx edx, byte [ecx]
mov dword [ebp - 0x698], edx
mov dword [ebp - 0x670], 0x46
mov eax, dword [ebp - 0x674]
sub eax, dword [ebp - 0x60c]
mov dword [ebp - 0x694], eax
mov ecx, dword [ebp - 0x698]
sub ecx, dword [ebp - 0x670]
mov dword [ebp - 0x5e8], ecx
mov edx, dword [ebp - 0x694]
shl edx, 4
mov dword [ebp - 0x690], edx
mov eax, dword [ebp - 0x5e8]
mov dword [ebp - 0x66c], eax
mov ecx, dword [ebp - 0x690]
or ecx, dword [ebp - 0x66c]
mov dword [ebp - 0x644], ecx
mov dl, byte [ebp - 0x644]
mov byte [ebp - 0x619], dl
movzx eax, byte [ebp - 0x4a5]
mov cl, byte [ebp + eax - 0x5b8]
mov byte [ebp - 0x689], cl
movzx edx, byte [ebp - 0x5cb]
movzx eax, byte [ebp + edx - 0x5b8]
movzx ecx, byte [ebp - 0x4b5]
add ecx, eax
mov byte [ebp - 0x4b5], cl
mov dl, byte [ebp - 0x5cb]
add dl, 1
mov byte [ebp - 0x5cb], dl
movzx eax, byte [ebp - 0x4b5]
movzx ecx, byte [ebp - 0x4a5]
mov dl, byte [ebp + eax - 0x5b8]
mov byte [ebp + ecx - 0x5b8], dl
movzx eax, byte [ebp - 0x5c1]
movzx ecx, byte [ebp - 0x4b5]
mov dl, byte [ebp + eax - 0x5b8]
mov byte [ebp + ecx - 0x5b8], dl
movzx eax, byte [ebp - 0x5cb]
movzx ecx, byte [ebp - 0x5c1]
mov dl, byte [ebp + eax - 0x5b8]
mov byte [ebp + ecx - 0x5b8], dl
movzx eax, byte [ebp - 0x5cb]
mov cl, byte [ebp - 0x689]
mov byte [ebp + eax - 0x5b8], cl
movzx edx, byte [ebp - 0x689]
movzx eax, byte [ebp + edx - 0x5b8]
movzx ecx, byte [ebp - 0x5b9]
add ecx, eax
mov byte [ebp - 0x5b9], cl
movzx edx, byte [ebp - 0x619]
movzx eax, byte [ebp - 0x4b5]
movzx ecx, byte [ebp + eax - 0x5b8]
movzx eax, byte [ebp - 0x5cb]
movzx eax, byte [ebp + eax - 0x5b8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5b8]
xor edx, ecx
movzx eax, byte [ebp - 0x5c1]
movzx ecx, byte [ebp + eax - 0x5b8]
movzx eax, byte [ebp - 0x4a5]
movzx eax, byte [ebp + eax - 0x5b8]
add ecx, eax
movzx eax, byte [ebp - 0x5b9]
movzx eax, byte [ebp + eax - 0x5b8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5b8]
movzx eax, byte [ebp + ecx - 0x5b8]
xor edx, eax
mov byte [ebp - 0x5c1], dl
mov cl, byte [ebp - 0x619]
mov byte [ebp - 0x4a5], cl
mov dl, byte [ebp - 0x5c1]
mov byte [ebp - 0x665], dl
cmp dword [ebp - 0x64c], 0
jle 0x4cb96b
mov eax, dword [ebp - 0x64c]
mov cl, byte [ebp - 0x665]
mov byte [ebp + eax - 0x495], cl
jmp 0x4cb4f0
mov edx, dword [ebp - 0x648]
add edx, 1
mov dword [ebp - 0x648], edx
mov eax, dword [ebp - 0x64c]
add eax, 1
mov dword [ebp - 0x64c], eax
mov ecx, dword [ebp - 0x648]
add ecx, 1
mov dword [ebp - 0x648], ecx
mov edx, dword [ebp - 0x64c]
shl edx, 1
mov dword [ebp - 0x5e4], edx
mov eax, dword [ebp - 0x4b0]
add eax, dword [ebp - 0x5e4]
movzx ecx, byte [eax]
mov dword [ebp - 0x674], ecx
mov dword [ebp - 0x60c], 0x48
mov edx, dword [ebp - 0x64c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x638], eax
mov ecx, dword [ebp - 0x4b0]
add ecx, dword [ebp - 0x638]
movzx edx, byte [ecx]
mov dword [ebp - 0x698], edx
mov dword [ebp - 0x670], 0x46
mov eax, dword [ebp - 0x674]
sub eax, dword [ebp - 0x60c]
mov dword [ebp - 0x694], eax
mov ecx, dword [ebp - 0x698]
sub ecx, dword [ebp - 0x670]
mov dword [ebp - 0x5e8], ecx
mov edx, dword [ebp - 0x694]
shl edx, 4
mov dword [ebp - 0x690], edx
mov eax, dword [ebp - 0x5e8]
mov dword [ebp - 0x66c], eax
mov ecx, dword [ebp - 0x690]
or ecx, dword [ebp - 0x66c]
mov dword [ebp - 0x644], ecx
mov dl, byte [ebp - 0x644]
mov byte [ebp - 0x619], dl
movzx eax, byte [ebp - 0x4a5]
mov cl, byte [ebp + eax - 0x5b8]
mov byte [ebp - 0x689], cl
movzx edx, byte [ebp - 0x5cb]
movzx eax, byte [ebp + edx - 0x5b8]
movzx ecx, byte [ebp - 0x4b5]
add ecx, eax
mov byte [ebp - 0x4b5], cl
mov dl, byte [ebp - 0x5cb]
add dl, 1
mov byte [ebp - 0x5cb], dl
movzx eax, byte [ebp - 0x4b5]
movzx ecx, byte [ebp - 0x4a5]
mov dl, byte [ebp + eax - 0x5b8]
mov byte [ebp + ecx - 0x5b8], dl
movzx eax, byte [ebp - 0x5c1]
movzx ecx, byte [ebp - 0x4b5]
mov dl, byte [ebp + eax - 0x5b8]
mov byte [ebp + ecx - 0x5b8], dl
movzx eax, byte [ebp - 0x5cb]
movzx ecx, byte [ebp - 0x5c1]
mov dl, byte [ebp + eax - 0x5b8]
mov byte [ebp + ecx - 0x5b8], dl
movzx eax, byte [ebp - 0x5cb]
mov cl, byte [ebp - 0x689]
mov byte [ebp + eax - 0x5b8], cl
movzx edx, byte [ebp - 0x689]
movzx eax, byte [ebp + edx - 0x5b8]
movzx ecx, byte [ebp - 0x5b9]
add ecx, eax
mov byte [ebp - 0x5b9], cl
movzx edx, byte [ebp - 0x619]
movzx eax, byte [ebp - 0x4b5]
movzx ecx, byte [ebp + eax - 0x5b8]
movzx eax, byte [ebp - 0x5cb]
movzx eax, byte [ebp + eax - 0x5b8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5b8]
xor edx, ecx
movzx eax, byte [ebp - 0x5c1]
movzx ecx, byte [ebp + eax - 0x5b8]
movzx eax, byte [ebp - 0x4a5]
movzx eax, byte [ebp + eax - 0x5b8]
add ecx, eax
movzx eax, byte [ebp - 0x5b9]
movzx eax, byte [ebp + eax - 0x5b8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5b8]
movzx eax, byte [ebp + ecx - 0x5b8]
xor edx, eax
mov byte [ebp - 0x5c1], dl
mov cl, byte [ebp - 0x619]
mov byte [ebp - 0x4a5], cl
mov dl, byte [ebp - 0x5c1]
mov byte [ebp - 0x665], dl
cmp dword [ebp - 0x64c], 0
jle 0x4cbbd7
mov eax, dword [ebp - 0x64c]
mov cl, byte [ebp - 0x665]
mov byte [ebp + eax - 0x495], cl
mov edx, dword [ebp - 0x64c]
add edx, 1
mov dword [ebp - 0x64c], edx
mov eax, dword [ebp - 0x648]
add eax, 1
mov dword [ebp - 0x648], eax
mov ecx, dword [ebp - 0x64c]
shl ecx, 1
mov dword [ebp - 0x5e4], ecx
mov edx, dword [ebp - 0x4b0]
add edx, dword [ebp - 0x5e4]
movzx eax, byte [edx]
mov dword [ebp - 0x674], eax
mov dword [ebp - 0x60c], 0x48
mov ecx, dword [ebp - 0x64c]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x638], edx
mov eax, dword [ebp - 0x4b0]
add eax, dword [ebp - 0x638]
movzx ecx, byte [eax]
mov dword [ebp - 0x698], ecx
mov dword [ebp - 0x670], 0x46
mov edx, dword [ebp - 0x674]
sub edx, dword [ebp - 0x60c]
mov dword [ebp - 0x694], edx
mov eax, dword [ebp - 0x698]
sub eax, dword [ebp - 0x670]
mov dword [ebp - 0x5e8], eax
mov ecx, dword [ebp - 0x694]
shl ecx, 4
mov dword [ebp - 0x690], ecx
mov edx, dword [ebp - 0x5e8]
mov dword [ebp - 0x66c], edx
mov eax, dword [ebp - 0x690]
or eax, dword [ebp - 0x66c]
mov dword [ebp - 0x644], eax
mov cl, byte [ebp - 0x644]
mov byte [ebp - 0x619], cl
movzx edx, byte [ebp - 0x4a5]
mov al, byte [ebp + edx - 0x5b8]
mov byte [ebp - 0x689], al
movzx ecx, byte [ebp - 0x5cb]
movzx edx, byte [ebp + ecx - 0x5b8]
movzx eax, byte [ebp - 0x4b5]
add eax, edx
mov byte [ebp - 0x4b5], al
mov cl, byte [ebp - 0x5cb]
add cl, 1
mov byte [ebp - 0x5cb], cl
movzx edx, byte [ebp - 0x4b5]
movzx eax, byte [ebp - 0x4a5]
mov cl, byte [ebp + edx - 0x5b8]
mov byte [ebp + eax - 0x5b8], cl
movzx edx, byte [ebp - 0x5c1]
movzx eax, byte [ebp - 0x4b5]
mov cl, byte [ebp + edx - 0x5b8]
mov byte [ebp + eax - 0x5b8], cl
movzx edx, byte [ebp - 0x5cb]
movzx eax, byte [ebp - 0x5c1]
mov cl, byte [ebp + edx - 0x5b8]
mov byte [ebp + eax - 0x5b8], cl
movzx edx, byte [ebp - 0x5cb]
mov al, byte [ebp - 0x689]
mov byte [ebp + edx - 0x5b8], al
movzx ecx, byte [ebp - 0x689]
movzx edx, byte [ebp + ecx - 0x5b8]
movzx eax, byte [ebp - 0x5b9]
add eax, edx
mov byte [ebp - 0x5b9], al
movzx ecx, byte [ebp - 0x619]
movzx edx, byte [ebp - 0x4b5]
movzx eax, byte [ebp + edx - 0x5b8]
movzx edx, byte [ebp - 0x5cb]
movzx edx, byte [ebp + edx - 0x5b8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5b8]
xor ecx, eax
movzx edx, byte [ebp - 0x5c1]
movzx eax, byte [ebp + edx - 0x5b8]
movzx edx, byte [ebp - 0x4a5]
movzx edx, byte [ebp + edx - 0x5b8]
add eax, edx
movzx edx, byte [ebp - 0x5b9]
movzx edx, byte [ebp + edx - 0x5b8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5b8]
movzx edx, byte [ebp + eax - 0x5b8]
xor ecx, edx
mov byte [ebp - 0x5c1], cl
mov al, byte [ebp - 0x619]
mov byte [ebp - 0x4a5], al
mov cl, byte [ebp - 0x5c1]
mov byte [ebp - 0x665], cl
cmp dword [ebp - 0x64c], 0
jle 0x4cbe2d
mov edx, dword [ebp - 0x64c]
mov al, byte [ebp - 0x665]
mov byte [ebp + edx - 0x495], al
mov ecx, dword [ebp - 0x64c]
add ecx, 1
mov dword [ebp - 0x64c], ecx
mov edx, dword [ebp - 0x648]
add edx, 1
mov dword [ebp - 0x648], edx
mov eax, dword [ebp - 0x64c]
shl eax, 1
mov dword [ebp - 0x5e4], eax
mov ecx, dword [ebp - 0x4b0]
add ecx, dword [ebp - 0x5e4]
movzx edx, byte [ecx]
mov dword [ebp - 0x674], edx
mov dword [ebp - 0x60c], 0x48
mov eax, dword [ebp - 0x64c]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x638], ecx
mov edx, dword [ebp - 0x4b0]
add edx, dword [ebp - 0x638]
movzx eax, byte [edx]
mov dword [ebp - 0x698], eax
mov dword [ebp - 0x670], 0x46
mov ecx, dword [ebp - 0x674]
sub ecx, dword [ebp - 0x60c]
mov dword [ebp - 0x694], ecx
mov edx, dword [ebp - 0x698]
sub edx, dword [ebp - 0x670]
mov dword [ebp - 0x5e8], edx
mov eax, dword [ebp - 0x694]
shl eax, 4
mov dword [ebp - 0x690], eax
mov ecx, dword [ebp - 0x5e8]
mov dword [ebp - 0x66c], ecx
mov edx, dword [ebp - 0x690]
or edx, dword [ebp - 0x66c]
mov dword [ebp - 0x644], edx
mov al, byte [ebp - 0x644]
mov byte [ebp - 0x619], al
movzx ecx, byte [ebp - 0x4a5]
mov dl, byte [ebp + ecx - 0x5b8]
mov byte [ebp - 0x689], dl
movzx eax, byte [ebp - 0x5cb]
movzx ecx, byte [ebp + eax - 0x5b8]
movzx edx, byte [ebp - 0x4b5]
add edx, ecx
mov byte [ebp - 0x4b5], dl
mov al, byte [ebp - 0x5cb]
add al, 1
mov byte [ebp - 0x5cb], al
movzx ecx, byte [ebp - 0x4b5]
movzx edx, byte [ebp - 0x4a5]
mov al, byte [ebp + ecx - 0x5b8]
mov byte [ebp + edx - 0x5b8], al
movzx ecx, byte [ebp - 0x5c1]
movzx edx, byte [ebp - 0x4b5]
mov al, byte [ebp + ecx - 0x5b8]
mov byte [ebp + edx - 0x5b8], al
movzx ecx, byte [ebp - 0x5cb]
movzx edx, byte [ebp - 0x5c1]
mov al, byte [ebp + ecx - 0x5b8]
mov byte [ebp + edx - 0x5b8], al
movzx ecx, byte [ebp - 0x5cb]
mov dl, byte [ebp - 0x689]
mov byte [ebp + ecx - 0x5b8], dl
movzx eax, byte [ebp - 0x689]
movzx ecx, byte [ebp + eax - 0x5b8]
movzx edx, byte [ebp - 0x5b9]
add edx, ecx
mov byte [ebp - 0x5b9], dl
movzx eax, byte [ebp - 0x619]
movzx ecx, byte [ebp - 0x4b5]
movzx edx, byte [ebp + ecx - 0x5b8]
movzx ecx, byte [ebp - 0x5cb]
movzx ecx, byte [ebp + ecx - 0x5b8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5b8]
xor eax, edx
movzx ecx, byte [ebp - 0x5c1]
movzx edx, byte [ebp + ecx - 0x5b8]
movzx ecx, byte [ebp - 0x4a5]
movzx ecx, byte [ebp + ecx - 0x5b8]
add edx, ecx
movzx ecx, byte [ebp - 0x5b9]
movzx ecx, byte [ebp + ecx - 0x5b8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5b8]
movzx ecx, byte [ebp + edx - 0x5b8]
xor eax, ecx
mov byte [ebp - 0x5c1], al
fld qword [0x9d2390]
fstp qword [ebp - 0x688]
fld qword [0x9d2388]
fstp qword [ebp - 0x600]
fld qword [0x9d2380]
fstp qword [ebp - 0x628]
fld qword [0x9d2378]
fstp qword [ebp - 0x658]
fld qword [0x9d2370]
fstp qword [ebp - 0x680]
fld qword [0x9d2368]
fstp qword [ebp - 0x5f8]
fld qword [0x9d2360]
fstp qword [ebp - 0x630]
fld qword [ebp - 0x688]
fadd qword [ebp - 0x630]
fstp qword [ebp - 0x688]
fld qword [ebp - 0x688]
fadd qword [ebp - 0x630]
fstp qword [ebp - 0x688]
fld qword [ebp - 0x628]
fmul qword [ebp - 0x630]
fstp qword [ebp - 0x628]
fld qword [ebp - 0x658]
fadd qword [ebp - 0x630]
fstp qword [ebp - 0x658]
fld qword [ebp - 0x658]
fsub qword [ebp - 0x630]
fstp qword [ebp - 0x658]
fld qword [ebp - 0x658]
fsub qword [ebp - 0x630]
fstp qword [ebp - 0x658]
fld qword [ebp - 0x628]
fmul qword [ebp - 0x630]
fstp qword [ebp - 0x628]
fld qword [ebp - 0x628]
fcomp qword [ebp - 0x630]
fnstsw ax
test ah, 5
jp 0x4cc1bc
fld qword [ebp - 0x688]
fdiv qword [ebp - 0x600]
fstp qword [ebp - 0x688]
fld qword [ebp - 0x600]
fdiv qword [ebp - 0x628]
fstp qword [ebp - 0x600]
fld qword [ebp - 0x600]
fdiv qword [ebp - 0x628]
fstp qword [ebp - 0x600]
fld qword [ebp - 0x628]
fsub qword [ebp - 0x658]
fstp qword [ebp - 0x628]
fld qword [ebp - 0x630]
fdiv qword [ebp - 0x688]
fstp qword [ebp - 0x630]
fld qword [ebp - 0x600]
fdiv qword [ebp - 0x628]
fstp qword [ebp - 0x600]
fld qword [ebp - 0x5f8]
fsub qword [ebp - 0x630]
fstp qword [ebp - 0x5f8]
jmp 0x4cc246
fld qword [ebp - 0x628]
fsub qword [ebp - 0x658]
fstp qword [ebp - 0x628]
fld qword [ebp - 0x688]
fmul qword [ebp - 0x600]
fstp qword [ebp - 0x688]
fld qword [ebp - 0x630]
fsub qword [ebp - 0x688]
fstp qword [ebp - 0x630]
fld qword [ebp - 0x5f8]
fmul qword [ebp - 0x630]
fstp qword [ebp - 0x5f8]
fld qword [ebp - 0x630]
fmul qword [ebp - 0x688]
fstp qword [ebp - 0x630]
fld qword [ebp - 0x628]
fadd qword [ebp - 0x658]
fstp qword [ebp - 0x628]
fld qword [ebp - 0x630]
fmul qword [ebp - 0x688]
fstp qword [ebp - 0x630]
mov dl, byte [ebp - 0x619]
mov byte [ebp - 0x4a5], dl
mov al, byte [ebp - 0x5c1]
mov byte [ebp - 0x665], al
cmp dword [ebp - 0x64c], 0
jle 0x4cc26e
mov ecx, dword [ebp - 0x64c]
mov dl, byte [ebp - 0x665]
mov byte [ebp + ecx - 0x495], dl
mov byte [ebp - 0x48c], 0
jmp 0x4cc2ab
mov dword [ebp - 0x6f0], 0
jmp 0x4cc292
mov eax, dword [ebp - 0x6f0]
add eax, 1
mov dword [ebp - 0x6f0], eax
cmp dword [ebp - 0x6f0], 9
jge 0x4cc2ab
mov ecx, dword [ebp - 0x6f0]
mov byte [ebp + ecx - 0x494], 0
jmp 0x4cc283
lea edx, [ebp - 0x494]
push edx
mov ecx, dword [0xa06a1c]
call fcn.0044f030
mov dword [ebp - 0x47c], eax
push 0
lea eax, [ebp - 0x4a4]
push eax
mov ecx, dword [ebp - 0x488]
push ecx
mov edx, dword [ebp - 0x484]
push edx
mov eax, dword [ebp - 0x224]
push eax
call dword [ebp - 0x47c]
test eax, eax
je 0x4cc402
mov dword [ebp - 0x6f4], 0xffffffff
mov byte [ebp - 0x6f6], 0
mov byte [ebp - 0x6f5], 0
cmp dword [ebp - 0x4a4], 0x100
jbe 0x4cc3dc
mov ecx, dword [ebp - 0x484]
movzx edx, byte [ecx]
cmp edx, 0x4d
jne 0x4cc345
mov eax, dword [ebp - 0x484]
movzx ecx, byte [eax + 1]
cmp ecx, 0x5a
jne 0x4cc345
mov byte [ebp - 0x6f5], 1
mov dword [ebp - 0x6f4], 0
mov edx, dword [ebp - 0x484]
movzx eax, byte [edx]
cmp eax, 0xd0
jne 0x4cc398
mov ecx, dword [ebp - 0x484]
movzx edx, byte [ecx + 1]
cmp edx, 0xcf
jne 0x4cc398
mov eax, dword [ebp - 0x484]
movzx ecx, byte [eax + 2]
cmp ecx, 0x11
jne 0x4cc398
mov edx, dword [ebp - 0x484]
movzx eax, byte [edx + 3]
cmp eax, 0xe0
jne 0x4cc398
mov byte [ebp - 0x6f5], 1
mov dword [ebp - 0x6f4], 1
mov dword [ebp - 0x6fc], 0
cmp dword [ebp - 0x6f4], 0
jne 0x4cc3dc
mov ecx, dword [ebp - 0x4a4]
push ecx
mov edx, dword [ebp - 0x484]
push edx
call fcn.004c7930
add esp, 8
mov dword [ebp - 0x6fc], eax
xor eax, eax
cmp dword [ebp - 0x6fc], 0x1000
sete al
mov byte [ebp - 0x6f6], al
movzx ecx, byte [ebp - 0x6f5]
test ecx, ecx
je 0x4cc402
movzx edx, byte [ebp - 0x6f6]
test edx, edx
je 0x4cc402
cmp dword [ebp - 0x6f4], 0
jne 0x4cc402
mov byte [ebp - 0x209], 1
mov eax, dword [ebp - 0x488]
mov dword [ebp - 0x70c], eax
mov ecx, dword [ebp - 0x484]
mov dword [ebp - 0x708], ecx
cmp dword [ebp - 0x70c], 0
je 0x4cc44c
mov edx, dword [ebp - 0x708]
mov byte [edx], 0
mov eax, dword [ebp - 0x708]
add eax, 1
mov dword [ebp - 0x708], eax
mov ecx, dword [ebp - 0x70c]
sub ecx, 1
mov dword [ebp - 0x70c], ecx
jmp 0x4cc41a
mov edx, dword [ebp - 0x484]
mov dword [ebp - 0x704], edx
mov eax, dword [ebp - 0x704]
push eax
call fcn.009649b1
add esp, 4
mov ecx, dword [ebp - 0x224]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x4cc486
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x4c7aae
mov al, byte [ebp - 0x209]
pop edi
pop esi
mov esp, ebp
pop ebp
ret