Function at 0x4bba90
Capabilities:
Get file size

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x834
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.0095ae70
add esp, 0xc
mov edx, dword [ebp + 8]
mov dword [ebp - 0x784], edx
lea eax, [ebp - 0x208]
mov dword [ebp - 0x788], eax
mov ecx, dword [ebp - 0x788]
mov dword [ebp - 0x78c], ecx
mov edx, dword [ebp - 0x784]
mov ax, word [edx]
mov word [ebp - 0x78e], ax
mov ecx, dword [ebp - 0x788]
mov dx, word [ebp - 0x78e]
mov word [ecx], dx
mov eax, dword [ebp - 0x784]
add eax, 2
mov dword [ebp - 0x784], eax
mov ecx, dword [ebp - 0x788]
add ecx, 2
mov dword [ebp - 0x788], ecx
cmp word [ebp - 0x78e], 0
jne 0x4bbae2
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x18]
mov dword [ebp - 0x794], eax
mov ecx, dword [ebp - 0x794]
mov dword [ebp - 0x798], ecx
mov edx, dword [ebp - 0x794]
mov ax, word [edx]
mov word [ebp - 0x79a], ax
add dword [ebp - 0x794], 2
cmp word [ebp - 0x79a], 0
jne 0x4bbb42
mov ecx, dword [ebp - 0x794]
sub ecx, dword [ebp - 0x798]
mov edx, dword [ebp - 0x798]
mov dword [ebp - 0x7a0], edx
mov dword [ebp - 0x7a4], ecx
lea eax, [ebp - 0x208]
add eax, 0xfffffffe
mov dword [ebp - 0x7a8], eax
mov ecx, dword [ebp - 0x7a8]
mov dx, word [ecx + 2]
mov word [ebp - 0x7aa], dx
add dword [ebp - 0x7a8], 2
cmp word [ebp - 0x7aa], 0
jne 0x4bbb90
mov edi, dword [ebp - 0x7a8]
mov esi, dword [ebp - 0x7a0]
mov eax, dword [ebp - 0x7a4]
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 0x4bbbed
mov ecx, dword [ebp - 0x210]
add ecx, 1
mov dword [ebp - 0x210], ecx
cmp dword [ebp - 0x210], 0x3c
jge 0x4c0cb8
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 0x4bbc3a
fld qword [ebp - 0x240]
fadd qword [0x9c6318]
fstp qword [ebp - 0x240]
fld qword [0x9c91f0]
fcomp qword [ebp - 0x240]
fnstsw ax
test ah, 0x41
jne 0x4bbcc3
fld qword [0x9c91e8]
fmul qword [ebp - 0x240]
fmul qword [ebp - 0x240]
fld qword [ebp - 0x240]
fmul qword [ebp - 0x240]
fsubp st(1)
fld qword [0x9c91e0]
fmul qword [ebp - 0x240]
fmul qword [ebp - 0x240]
fadd qword [0x9c91d8]
fdivp st(1)
fadd qword [ebp - 0x220]
fstp qword [ebp - 0x220]
fld qword [0x9c91d0]
fcomp qword [ebp - 0x220]
fnstsw ax
test ah, 5
jp 0x4bbcbe
fld qword [0x9c91c8]
fmul qword [ebp - 0x240]
fsubr qword [ebp - 0x220]
fstp qword [ebp - 0x220]
jmp 0x4bbc28
fldz
fcomp qword [ebp - 0x220]
fnstsw ax
test ah, 0x41
jne 0x4bbd0f
adc dword [edi - 0x80], 0x8b4c894e
pop eax
xchg dword [esi - 0x79], edx
dec esi
jle 0x4bbd36
mov dl, byte [edi + 0x7f]
push edx
test byte [esi - 0x7b], cl
pop ecx
adc dword [ebp + 0x71], 0x337a297e
inc ebp
push dx
dec ecx
das
insd dword es:[edi], dx
push 0x61
inc ecx
xor byte [ebx + 0x3f], dh
push esp
pop eax
sub al, 0x49
push esp
inc eax
inc ebx
dec ebp
pop edx
jbe 0x4bbd3d
jmp 0x4bed90
mov dword [ebp - 0x218], 0x4bbcd2
mov dword [ebp - 0x234], 0x4bbcea
mov edx, dword [ebp - 0x218]
mov dword [ebp - 0x24c], edx
mov eax, dword [ebp - 0x234]
mov dword [ebp - 0x248], eax
mov byte [ebp - 0x369], 0x24
test dword [eax - 0x39000003], edi
test dword [edi + 0x24fffffc], edx
xchg edi, eax
cld
invalid
mov dword [ebp - 0x360], 0
jmp 0x4bbd5d
mov ecx, dword [ebp - 0x360]
add ecx, 1
mov dword [ebp - 0x360], ecx
cmp dword [ebp - 0x360], 0x100
jae 0x4bbd7e
mov edx, dword [ebp - 0x360]
mov al, byte [ebp - 0x360]
mov byte [ebp + edx - 0x358], al
jmp 0x4bbd4e
mov dword [ebp - 0x250], 0
mov byte [ebp - 0x36a], 0
mov dword [ebp - 0x360], 0xff
jmp 0x4bbdaa
mov ecx, dword [ebp - 0x360]
sub ecx, 1
mov dword [ebp - 0x360], ecx
cmp dword [ebp - 0x360], 0
jbe 0x4bc0be
mov dword [ebp - 0x370], 0
mov dword [ebp - 0x378], 1
mov edx, dword [ebp - 0x378]
cmp edx, dword [ebp - 0x360]
jae 0x4bbdeb
mov eax, dword [ebp - 0x378]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x378], ecx
jmp 0x4bbdcb
mov edx, dword [ebp - 0x250]
mov dword [ebp - 0x7b0], edx
cmp dword [ebp - 0x7b0], 3
ja case.default.0x4bbe0a
mov eax, dword [ebp - 0x7b0]
jmp dword [eax*4 + 0x4c0cc4]
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
fld qword [ebp - 0x220]
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 eax, dword [ebp - 0x7c0]
and eax, 0xff
add edx, eax
mov byte [ebp - 0x36a], dl
jmp 0x4bbf97
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
fld qword [ebp - 0x220]
fnstcw word [ebp - 0x7c2]
movzx eax, word [ebp - 0x7c2]
or eax, 0xc00
mov dword [ebp - 0x7c8], eax
fldcw word [ebp - 0x7c8]
fistp qword [ebp - 0x7d0]
fldcw word [ebp - 0x7c2]
mov eax, dword [ebp - 0x7d0]
shr eax, 8
and eax, 0xff
add edx, eax
mov byte [ebp - 0x36a], dl
jmp 0x4bbf97
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
fld qword [ebp - 0x220]
fnstcw word [ebp - 0x7d2]
movzx eax, word [ebp - 0x7d2]
or eax, 0xc00
mov dword [ebp - 0x7d8], eax
fldcw word [ebp - 0x7d8]
fistp qword [ebp - 0x7e0]
fldcw word [ebp - 0x7d2]
mov eax, dword [ebp - 0x7e0]
shr eax, 0x10
and eax, 0xff
add edx, eax
mov byte [ebp - 0x36a], dl
jmp 0x4bbf97
movzx ecx, byte [ebp - 0x36a]
movzx edx, byte [ebp + ecx - 0x358]
fld qword [ebp - 0x220]
fnstcw word [ebp - 0x7e2]
movzx eax, word [ebp - 0x7e2]
or eax, 0xc00
mov dword [ebp - 0x7e8], eax
fldcw word [ebp - 0x7e8]
fistp qword [ebp - 0x7f0]
fldcw word [ebp - 0x7e2]
mov eax, dword [ebp - 0x7f0]
shr eax, 0x18
and eax, 0xff
add edx, eax
mov byte [ebp - 0x36a], dl
jmp 0x4bbf97
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 0x4bbfd5
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 0x4bc014
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 0x4bbdeb
mov eax, dword [ebp - 0x360]
cmp eax, dword [ebp - 0x374]
je 0x4bc0b9
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 0x4bbd9b
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 0x4bed5c
mov ecx, dword [ebp - 0x368]
and ecx, 1
jne 0x4bed5c
mov dword [ebp - 0x444], 0
mov dword [ebp - 0x440], 0
mov edx, dword [ebp - 0x440]
add edx, 1
mov dword [ebp - 0x440], edx
mov dword [ebp - 0x398], 0
mov eax, dword [ebp - 0x444]
shl eax, 1
mov dword [ebp - 0x398], eax
mov dword [ebp - 0x490], 0
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x398]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x490]
mov dword [ebp - 0x490], edx
mov dword [ebp - 0x3f4], 0
fld qword [0x9c91c0]
fstp qword [ebp - 0x458]
fld qword [0x9c91b8]
fstp qword [ebp - 0x4b8]
fld qword [0x9c91b0]
fstp qword [ebp - 0x3c0]
fld qword [0x9c91a8]
fstp qword [ebp - 0x408]
fld qword [0x9c91a0]
fstp qword [ebp - 0x450]
fld qword [0x9c8718]
fstp qword [ebp - 0x4b0]
fld qword [ebp - 0x450]
fadd qword [ebp - 0x4b0]
fstp qword [ebp - 0x450]
fld qword [ebp - 0x408]
fsub qword [ebp - 0x4b0]
fstp qword [ebp - 0x408]
fld qword [ebp - 0x4b8]
fmul qword [ebp - 0x4b0]
fstp qword [ebp - 0x4b8]
fld qword [ebp - 0x450]
fadd qword [ebp - 0x4b0]
fstp qword [ebp - 0x450]
fld qword [ebp - 0x408]
fsub qword [ebp - 0x4b0]
fstp qword [ebp - 0x408]
fld qword [ebp - 0x458]
fmul qword [ebp - 0x4b0]
fstp qword [ebp - 0x458]
fld qword [ebp - 0x408]
fcomp qword [ebp - 0x458]
fnstsw ax
test ah, 5
jp 0x4bc2d6
fld qword [ebp - 0x450]
fsub qword [ebp - 0x458]
fstp qword [ebp - 0x450]
fld qword [ebp - 0x458]
fmul qword [ebp - 0x3c0]
fstp qword [ebp - 0x458]
fld qword [ebp - 0x4b0]
fsub qword [ebp - 0x4b8]
fstp qword [ebp - 0x4b0]
fld qword [ebp - 0x450]
fmul qword [ebp - 0x458]
fstp qword [ebp - 0x450]
fld qword [ebp - 0x458]
fadd qword [ebp - 0x3c0]
fstp qword [ebp - 0x458]
fld qword [ebp - 0x408]
fadd qword [ebp - 0x4b0]
fstp qword [ebp - 0x408]
mov eax, dword [ebp - 0x3f4]
add eax, 0x7c
mov dword [ebp - 0x3f4], eax
jmp 0x4bc342
fld qword [ebp - 0x4b8]
fsub qword [ebp - 0x3c0]
fstp qword [ebp - 0x4b8]
fld qword [ebp - 0x4b8]
fmul qword [ebp - 0x3c0]
fstp qword [ebp - 0x4b8]
fld qword [ebp - 0x4b8]
fadd qword [ebp - 0x3c0]
fstp qword [ebp - 0x4b8]
fld qword [ebp - 0x408]
fsub qword [ebp - 0x450]
fstp qword [ebp - 0x408]
fld qword [ebp - 0x3c0]
fmul qword [ebp - 0x408]
fstp qword [ebp - 0x3c0]
fld qword [ebp - 0x4b0]
fmul qword [ebp - 0x458]
fstp qword [ebp - 0x4b0]
mov dword [ebp - 0x428], 0
mov ecx, dword [ebp - 0x444]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x428], edx
mov dword [ebp - 0x4a4], 0
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x428]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x4a4]
mov dword [ebp - 0x4a4], ecx
mov dword [ebp - 0x48c], 0
mov edx, dword [ebp - 0x48c]
add edx, 0x4b
mov dword [ebp - 0x48c], edx
mov dword [ebp - 0x4a0], 0
mov eax, dword [ebp - 0x490]
sub eax, dword [ebp - 0x3f4]
add eax, dword [ebp - 0x4a0]
mov dword [ebp - 0x4a0], eax
mov dword [ebp - 0x3b0], 0
fld dword [0x9c919c]
fstp dword [ebp - 0x3b8]
fld dword [0x9c9198]
fstp dword [ebp - 0x470]
fld dword [0x9c9194]
fstp dword [ebp - 0x424]
fld dword [0x9c9190]
fstp dword [ebp - 0x3dc]
fld dword [0x9c918c]
fstp dword [ebp - 0x394]
fld dword [0x9c9188]
fstp dword [ebp - 0x46c]
fld dword [0x9c9184]
fstp dword [ebp - 0x420]
fld dword [ebp - 0x46c]
fmul dword [ebp - 0x420]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x470]
fmul dword [ebp - 0x420]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x424]
fadd dword [ebp - 0x420]
fstp dword [ebp - 0x424]
fld dword [ebp - 0x394]
fsub dword [ebp - 0x420]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x424]
fmul dword [ebp - 0x420]
fstp dword [ebp - 0x424]
fld dword [ebp - 0x46c]
fsub dword [ebp - 0x420]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x470]
fadd dword [ebp - 0x420]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x424]
fld dword [ebp - 0x420]
fcompp
fnstsw ax
test ah, 5
jp 0x4bc54c
fld dword [ebp - 0x46c]
fsub dword [ebp - 0x420]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x470]
fadd dword [ebp - 0x424]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x470]
fmul dword [ebp - 0x424]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x3dc]
fadd dword [ebp - 0x394]
fstp dword [ebp - 0x3dc]
fld dword [ebp - 0x470]
fmul dword [ebp - 0x424]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x420]
fsub dword [ebp - 0x3b8]
fstp dword [ebp - 0x420]
fld dword [ebp - 0x470]
fmul dword [ebp - 0x424]
fstp dword [ebp - 0x470]
mov ecx, dword [ebp - 0x4a4]
sub ecx, dword [ebp - 0x48c]
add ecx, dword [ebp - 0x3b0]
mov dword [ebp - 0x3b0], ecx
jmp 0x4bc75f
fld dword [ebp - 0x3dc]
fadd dword [ebp - 0x394]
fstp dword [ebp - 0x3dc]
fld dword [ebp - 0x420]
fadd dword [ebp - 0x3b8]
fstp dword [ebp - 0x420]
fld dword [ebp - 0x470]
fsub dword [ebp - 0x424]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x394]
fadd dword [ebp - 0x46c]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x3b8]
fdiv dword [ebp - 0x470]
fstp dword [ebp - 0x3b8]
fld dword [ebp - 0x394]
fmul dword [ebp - 0x46c]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x424]
fdiv dword [ebp - 0x3dc]
fstp dword [ebp - 0x424]
fld dword [ebp - 0x3b8]
fadd dword [ebp - 0x424]
fstp dword [ebp - 0x3b8]
fld dword [ebp - 0x394]
fadd dword [ebp - 0x420]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x424]
fsub dword [ebp - 0x394]
fstp dword [ebp - 0x424]
fld dword [ebp - 0x420]
fadd dword [ebp - 0x470]
fstp dword [ebp - 0x420]
fld dword [ebp - 0x46c]
fadd dword [ebp - 0x3b8]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x470]
fmul dword [ebp - 0x3dc]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x420]
fadd dword [ebp - 0x470]
fstp dword [ebp - 0x420]
fld dword [ebp - 0x420]
fld dword [ebp - 0x470]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4bc6e1
fld dword [ebp - 0x424]
fmul dword [ebp - 0x3dc]
fstp dword [ebp - 0x424]
fld dword [ebp - 0x424]
fsub dword [ebp - 0x3dc]
fstp dword [ebp - 0x424]
fld dword [ebp - 0x394]
fdiv dword [ebp - 0x46c]
fstp dword [ebp - 0x394]
fld dword [ebp - 0x46c]
fadd dword [ebp - 0x420]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x420]
fmul dword [ebp - 0x3b8]
fstp dword [ebp - 0x420]
fld dword [ebp - 0x420]
fsub dword [ebp - 0x3b8]
fstp dword [ebp - 0x420]
fld dword [ebp - 0x420]
fadd dword [ebp - 0x3b8]
fstp dword [ebp - 0x420]
jmp 0x4bc75f
fld dword [ebp - 0x3dc]
fmul dword [ebp - 0x394]
fstp dword [ebp - 0x3dc]
fld dword [ebp - 0x3b8]
fdiv dword [ebp - 0x470]
fstp dword [ebp - 0x3b8]
fld dword [ebp - 0x470]
fdiv dword [ebp - 0x424]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x470]
fdiv dword [ebp - 0x424]
fstp dword [ebp - 0x470]
fld dword [ebp - 0x46c]
fdiv dword [ebp - 0x420]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x46c]
fdiv dword [ebp - 0x420]
fstp dword [ebp - 0x46c]
fld dword [ebp - 0x3dc]
fsub dword [ebp - 0x394]
fstp dword [ebp - 0x3dc]
mov dword [ebp - 0x49c], 0
mov edx, dword [ebp - 0x4a0]
shl edx, 4
mov dword [ebp - 0x49c], edx
mov dword [ebp - 0x488], 0
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x488], eax
mov dword [ebp - 0x43c], 0
mov ecx, dword [ebp - 0x49c]
or ecx, dword [ebp - 0x488]
mov dword [ebp - 0x43c], ecx
mov byte [ebp - 0x3f5], 0
mov dl, byte [ebp - 0x43c]
mov byte [ebp - 0x3f5], dl
mov byte [ebp - 0x495], 0
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + eax - 0x358]
mov byte [ebp - 0x495], 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 - 0x495]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x495]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x359]
add ecx, eax
mov byte [ebp - 0x359], cl
movzx edx, byte [ebp - 0x3f5]
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 - 0x3f5]
mov byte [ebp - 0x241], cl
mov dl, byte [ebp - 0x361]
mov byte [ebp - 0x481], dl
cmp dword [ebp - 0x444], 0
jle 0x4bc945
mov eax, dword [ebp - 0x444]
mov cl, byte [ebp - 0x481]
mov byte [ebp + eax - 0x231], cl
mov edx, dword [ebp - 0x444]
add edx, 1
mov dword [ebp - 0x444], edx
mov eax, dword [ebp - 0x440]
add eax, 1
mov dword [ebp - 0x440], eax
mov ecx, dword [ebp - 0x444]
shl ecx, 1
mov dword [ebp - 0x398], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x398]
movzx eax, byte [edx]
mov dword [ebp - 0x490], eax
mov dword [ebp - 0x3f4], 0x7c
mov ecx, dword [ebp - 0x444]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x428], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x428]
movzx ecx, byte [eax]
mov dword [ebp - 0x4a4], ecx
mov dword [ebp - 0x48c], 0x4b
mov edx, dword [ebp - 0x490]
sub edx, dword [ebp - 0x3f4]
mov dword [ebp - 0x4a0], edx
mov eax, dword [ebp - 0x4a4]
sub eax, dword [ebp - 0x48c]
mov dword [ebp - 0x3b0], eax
mov ecx, dword [ebp - 0x4a0]
shl ecx, 4
mov dword [ebp - 0x49c], ecx
mov edx, dword [ebp - 0x3b0]
mov dword [ebp - 0x488], edx
mov eax, dword [ebp - 0x49c]
or eax, dword [ebp - 0x488]
mov dword [ebp - 0x43c], eax
mov cl, byte [ebp - 0x43c]
mov byte [ebp - 0x3f5], cl
movzx edx, byte [ebp - 0x241]
mov al, byte [ebp + edx - 0x358]
mov byte [ebp - 0x495], 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
fld dword [0x9c9180]
fstp dword [ebp - 0x3d8]
fld dword [0x9c917c]
fstp dword [ebp - 0x390]
fld dword [0x9c9178]
fstp dword [ebp - 0x468]
fld dword [0x9c9174]
fstp dword [ebp - 0x41c]
fld dword [0x9c9170]
fstp dword [ebp - 0x3ac]
fld dword [0x9c916c]
fstp dword [ebp - 0x3f0]
fld dword [0x9c9168]
fstp dword [ebp - 0x438]
fld dword [ebp - 0x3ac]
fsub dword [ebp - 0x438]
fstp dword [ebp - 0x3ac]
fld dword [ebp - 0x3ac]
fmul dword [ebp - 0x438]
fstp dword [ebp - 0x3ac]
fld dword [ebp - 0x3d8]
fadd dword [ebp - 0x438]
fstp dword [ebp - 0x3d8]
fld dword [ebp - 0x468]
fsub dword [ebp - 0x438]
fstp dword [ebp - 0x468]
fld dword [ebp - 0x3d8]
fadd dword [ebp - 0x438]
fstp dword [ebp - 0x3d8]
fld dword [ebp - 0x41c]
fsub dword [ebp - 0x438]
fstp dword [ebp - 0x41c]
fld dword [ebp - 0x468]
fadd dword [ebp - 0x438]
fstp dword [ebp - 0x468]
fld dword [ebp - 0x3ac]
fld dword [ebp - 0x438]
fcompp
fnstsw ax
test ah, 5
jp 0x4bcc30
fld dword [ebp - 0x41c]
fsub dword [ebp - 0x3f0]
fstp dword [ebp - 0x41c]
fld dword [ebp - 0x390]
fmul dword [ebp - 0x41c]
fstp dword [ebp - 0x390]
fld dword [ebp - 0x390]
fsub dword [ebp - 0x41c]
fstp dword [ebp - 0x390]
fld dword [ebp - 0x3d8]
fsub dword [ebp - 0x468]
fstp dword [ebp - 0x3d8]
fld dword [ebp - 0x438]
fmul dword [ebp - 0x390]
fstp dword [ebp - 0x438]
fld dword [ebp - 0x41c]
fadd dword [ebp - 0x3f0]
fstp dword [ebp - 0x41c]
fld dword [ebp - 0x3f0]
fsub dword [ebp - 0x3d8]
fstp dword [ebp - 0x3f0]
movzx edx, byte [ebp - 0x36b]
mov al, byte [ebp - 0x495]
mov byte [ebp + edx - 0x358], al
jmp 0x4bccae
fld dword [ebp - 0x3ac]
fdiv dword [ebp - 0x3f0]
fstp dword [ebp - 0x3ac]
fld dword [ebp - 0x468]
fdiv dword [ebp - 0x41c]
fstp dword [ebp - 0x468]
fld dword [ebp - 0x3f0]
fmul dword [ebp - 0x438]
fstp dword [ebp - 0x3f0]
fld dword [ebp - 0x41c]
fsub dword [ebp - 0x3ac]
fstp dword [ebp - 0x41c]
fld dword [ebp - 0x41c]
fadd dword [ebp - 0x3ac]
fstp dword [ebp - 0x41c]
fld dword [ebp - 0x390]
fsub dword [ebp - 0x468]
fstp dword [ebp - 0x390]
fld dword [ebp - 0x3f0]
fsub dword [ebp - 0x438]
fstp dword [ebp - 0x3f0]
movzx ecx, byte [ebp - 0x495]
movzx edx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp - 0x359]
add eax, edx
mov byte [ebp - 0x359], al
movzx ecx, byte [ebp - 0x3f5]
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 - 0x3f5]
mov byte [ebp - 0x241], al
mov cl, byte [ebp - 0x361]
mov byte [ebp - 0x481], cl
cmp dword [ebp - 0x444], 0
jle 0x4bcd84
mov edx, dword [ebp - 0x444]
mov al, byte [ebp - 0x481]
mov byte [ebp + edx - 0x231], al
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x444], ecx
mov edx, dword [ebp - 0x440]
add edx, 1
mov dword [ebp - 0x440], edx
mov eax, dword [ebp - 0x444]
shl eax, 1
mov dword [ebp - 0x398], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x398]
movzx edx, byte [ecx]
mov dword [ebp - 0x490], edx
mov dword [ebp - 0x3f4], 0x7c
mov eax, dword [ebp - 0x444]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x428], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x428]
movzx eax, byte [edx]
mov dword [ebp - 0x4a4], eax
mov dword [ebp - 0x48c], 0x4b
mov ecx, dword [ebp - 0x490]
sub ecx, dword [ebp - 0x3f4]
mov dword [ebp - 0x4a0], ecx
mov edx, dword [ebp - 0x4a4]
sub edx, dword [ebp - 0x48c]
mov dword [ebp - 0x3b0], edx
mov eax, dword [ebp - 0x4a0]
shl eax, 4
mov dword [ebp - 0x49c], eax
mov ecx, dword [ebp - 0x3b0]
mov dword [ebp - 0x488], ecx
mov edx, dword [ebp - 0x49c]
or edx, dword [ebp - 0x488]
mov dword [ebp - 0x43c], edx
fld dword [0x9c9164]
fstp dword [ebp - 0x480]
fld dword [0x9c9160]
fstp dword [ebp - 0x3a8]
fld dword [0x9c915c]
fstp dword [ebp - 0x3ec]
fld dword [0x9c9158]
fstp dword [ebp - 0x434]
fld dword [0x9c9154]
fstp dword [ebp - 0x47c]
fld dword [ebp - 0x480]
fadd dword [ebp - 0x47c]
fstp dword [ebp - 0x480]
fld dword [ebp - 0x3a8]
fadd dword [ebp - 0x47c]
fstp dword [ebp - 0x3a8]
fld dword [ebp - 0x3ec]
fsub dword [ebp - 0x47c]
fstp dword [ebp - 0x3ec]
fld dword [ebp - 0x3a8]
fadd dword [ebp - 0x47c]
fstp dword [ebp - 0x3a8]
fld dword [ebp - 0x3ec]
fmul dword [ebp - 0x47c]
fstp dword [ebp - 0x3ec]
fld dword [ebp - 0x3ec]
fld dword [ebp - 0x47c]
fcompp
fnstsw ax
test ah, 5
jp 0x4bcf65
fld dword [ebp - 0x3a8]
fmul dword [ebp - 0x3ec]
fstp dword [ebp - 0x3a8]
fld dword [ebp - 0x3ec]
fsub dword [ebp - 0x434]
fstp dword [ebp - 0x3ec]
fld dword [ebp - 0x434]
fadd dword [ebp - 0x47c]
fstp dword [ebp - 0x434]
fld dword [ebp - 0x434]
fmul dword [ebp - 0x47c]
fstp dword [ebp - 0x434]
fld dword [ebp - 0x3a8]
fmul dword [ebp - 0x3ec]
fstp dword [ebp - 0x3a8]
mov al, byte [ebp - 0x43c]
mov byte [ebp - 0x3f5], al
jmp 0x4bd0e4
fld dword [ebp - 0x480]
fdiv dword [ebp - 0x3ec]
fstp dword [ebp - 0x480]
fld dword [ebp - 0x3a8]
fsub dword [ebp - 0x434]
fstp dword [ebp - 0x3a8]
fld dword [ebp - 0x434]
fmul dword [ebp - 0x480]
fstp dword [ebp - 0x434]
fld dword [ebp - 0x3a8]
fmul dword [ebp - 0x434]
fstp dword [ebp - 0x3a8]
fld dword [ebp - 0x3ec]
fdiv dword [ebp - 0x47c]
fstp dword [ebp - 0x3ec]
fld dword [ebp - 0x480]
fdiv dword [ebp - 0x3ec]
fstp dword [ebp - 0x480]
fld dword [ebp - 0x3a8]
fsub dword [ebp - 0x434]
fstp dword [ebp - 0x3a8]
fld dword [ebp - 0x3ec]
fmul dword [ebp - 0x47c]
fstp dword [ebp - 0x3ec]
fld dword [ebp - 0x47c]
fmul dword [ebp - 0x3a8]
fstp dword [ebp - 0x47c]
fld dword [ebp - 0x3ec]
fdiv dword [ebp - 0x47c]
fstp dword [ebp - 0x3ec]
fld dword [ebp - 0x47c]
fld dword [ebp - 0x3a8]
fcompp
fnstsw ax
test ah, 5
jp 0x4bd08a
fld dword [ebp - 0x3ec]
fsub dword [ebp - 0x434]
fstp dword [ebp - 0x3ec]
fld dword [ebp - 0x480]
fmul dword [ebp - 0x3a8]
fstp dword [ebp - 0x480]
fld dword [ebp - 0x47c]
fdiv dword [ebp - 0x480]
fstp dword [ebp - 0x47c]
fld dword [ebp - 0x47c]
fdiv dword [ebp - 0x480]
fstp dword [ebp - 0x47c]
fld dword [ebp - 0x3ec]
fdiv dword [ebp - 0x434]
fstp dword [ebp - 0x3ec]
jmp 0x4bd0e4
fld dword [ebp - 0x3a8]
fdiv dword [ebp - 0x434]
fstp dword [ebp - 0x3a8]
fld dword [ebp - 0x3a8]
fsub dword [ebp - 0x434]
fstp dword [ebp - 0x3a8]
fld dword [ebp - 0x3ec]
fdiv dword [ebp - 0x47c]
fstp dword [ebp - 0x3ec]
fld dword [ebp - 0x434]
fadd dword [ebp - 0x480]
fstp dword [ebp - 0x434]
fld dword [ebp - 0x3ec]
fmul dword [ebp - 0x47c]
fstp dword [ebp - 0x3ec]
fld dword [0x9c9150]
fstp dword [ebp - 0x3a4]
fld dword [0x9c914c]
fstp dword [ebp - 0x3e8]
fld dword [0x9c9148]
fstp dword [ebp - 0x494]
fld dword [0x9c9144]
fstp dword [ebp - 0x448]
fld dword [0x9c9140]
fstp dword [ebp - 0x3fc]
fld dword [0x9c913c]
fstp dword [ebp - 0x3b4]
fld dword [ebp - 0x494]
fsub dword [ebp - 0x3b4]
fstp dword [ebp - 0x494]
fld dword [ebp - 0x3fc]
fadd dword [ebp - 0x3b4]
fstp dword [ebp - 0x3fc]
fld dword [ebp - 0x448]
fmul dword [ebp - 0x3b4]
fstp dword [ebp - 0x448]
fld dword [ebp - 0x494]
fadd dword [ebp - 0x3b4]
fstp dword [ebp - 0x494]
fld dword [ebp - 0x3a4]
fsub dword [ebp - 0x3b4]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x3fc]
fsub dword [ebp - 0x3b4]
fstp dword [ebp - 0x3fc]
fld dword [ebp - 0x3b4]
fld dword [ebp - 0x448]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4bd233
fld dword [ebp - 0x3b4]
fmul dword [ebp - 0x3a4]
fstp dword [ebp - 0x3b4]
fld dword [ebp - 0x3a4]
fmul dword [ebp - 0x3e8]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x3e8]
fmul dword [ebp - 0x494]
fstp dword [ebp - 0x3e8]
fld dword [ebp - 0x494]
fsub dword [ebp - 0x448]
fstp dword [ebp - 0x494]
fld dword [ebp - 0x448]
fmul dword [ebp - 0x3fc]
fstp dword [ebp - 0x448]
fld dword [ebp - 0x3e8]
fmul dword [ebp - 0x494]
fstp dword [ebp - 0x3e8]
movzx ecx, byte [ebp - 0x241]
mov dl, byte [ebp + ecx - 0x358]
mov byte [ebp - 0x495], dl
jmp 0x4bd29f
fld dword [ebp - 0x3fc]
fmul dword [ebp - 0x3a4]
fstp dword [ebp - 0x3fc]
fld dword [ebp - 0x3b4]
fsub dword [ebp - 0x3e8]
fstp dword [ebp - 0x3b4]
fld dword [ebp - 0x3b4]
fdiv dword [ebp - 0x3e8]
fstp dword [ebp - 0x3b4]
fld dword [ebp - 0x3a4]
fmul dword [ebp - 0x494]
fstp dword [ebp - 0x3a4]
fld dword [ebp - 0x448]
fmul dword [ebp - 0x3b4]
fstp dword [ebp - 0x448]
fld dword [ebp - 0x3b4]
fsub dword [ebp - 0x3e8]
fstp dword [ebp - 0x3b4]
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 - 0x495]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x495]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x359]
add edx, ecx
mov byte [ebp - 0x359], dl
movzx eax, byte [ebp - 0x3f5]
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 - 0x3f5]
mov byte [ebp - 0x241], dl
mov al, byte [ebp - 0x361]
mov byte [ebp - 0x481], al
cmp dword [ebp - 0x444], 0
jle 0x4bd40b
mov ecx, dword [ebp - 0x444]
mov dl, byte [ebp - 0x481]
mov byte [ebp + ecx - 0x231], dl
mov eax, dword [ebp - 0x440]
add eax, 2
mov dword [ebp - 0x440], eax
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x4bc], ecx
jmp 0x4bd43a
mov edx, dword [ebp - 0x4bc]
add edx, 1
mov dword [ebp - 0x4bc], edx
mov eax, dword [ebp - 0x4bc]
cmp eax, dword [ebp - 0x440]
jge 0x4bd83d
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x444], ecx
mov edx, dword [ebp - 0x444]
shl edx, 1
mov dword [ebp - 0x398], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x398]
movzx ecx, byte [eax]
mov dword [ebp - 0x490], ecx
mov dword [ebp - 0x3f4], 0x7c
mov edx, dword [ebp - 0x444]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x428], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x428]
movzx edx, byte [ecx]
mov dword [ebp - 0x4a4], edx
mov dword [ebp - 0x48c], 0x4b
mov eax, dword [ebp - 0x490]
sub eax, dword [ebp - 0x3f4]
mov dword [ebp - 0x4a0], eax
mov ecx, dword [ebp - 0x4a4]
sub ecx, dword [ebp - 0x48c]
mov dword [ebp - 0x3b0], ecx
mov edx, dword [ebp - 0x4a0]
shl edx, 4
mov dword [ebp - 0x49c], edx
fld dword [0x9c9138]
fstp dword [ebp - 0x4d4]
fld dword [0x9c9134]
fstp dword [ebp - 0x4cc]
fld dword [0x9c9130]
fstp dword [ebp - 0x4c4]
fld dword [0x9c912c]
fstp dword [ebp - 0x4c0]
fld dword [0x9c9128]
fstp dword [ebp - 0x4d0]
fld dword [0x9c9124]
fstp dword [ebp - 0x4c8]
fld dword [ebp - 0x4c0]
fadd dword [ebp - 0x4c8]
fstp dword [ebp - 0x4c0]
fld dword [ebp - 0x4cc]
fsub dword [ebp - 0x4c8]
fstp dword [ebp - 0x4cc]
fld dword [ebp - 0x4d0]
fmul dword [ebp - 0x4c8]
fstp dword [ebp - 0x4d0]
fld dword [ebp - 0x4c0]
fadd dword [ebp - 0x4c8]
fstp dword [ebp - 0x4c0]
fld dword [ebp - 0x4d4]
fadd dword [ebp - 0x4c8]
fstp dword [ebp - 0x4d4]
fld dword [ebp - 0x4d4]
fmul dword [ebp - 0x4c8]
fstp dword [ebp - 0x4d4]
fld dword [ebp - 0x4c8]
fld dword [ebp - 0x4d4]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4bd62d
fld dword [ebp - 0x4c4]
fmul dword [ebp - 0x4c0]
fstp dword [ebp - 0x4c4]
fld dword [ebp - 0x4cc]
fsub dword [ebp - 0x4c4]
fstp dword [ebp - 0x4cc]
fld dword [ebp - 0x4d0]
fadd dword [ebp - 0x4c8]
fstp dword [ebp - 0x4d0]
fld dword [ebp - 0x4d0]
fadd dword [ebp - 0x4c8]
fstp dword [ebp - 0x4d0]
fld dword [ebp - 0x4d4]
fsub dword [ebp - 0x4cc]
fstp dword [ebp - 0x4d4]
fld dword [ebp - 0x4c4]
fadd dword [ebp - 0x4c0]
fstp dword [ebp - 0x4c4]
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x488], eax
jmp 0x4bd699
fld dword [ebp - 0x4c4]
fmul dword [ebp - 0x4c0]
fstp dword [ebp - 0x4c4]
fld dword [ebp - 0x4c0]
fsub dword [ebp - 0x4d0]
fstp dword [ebp - 0x4c0]
fld dword [ebp - 0x4c0]
fadd dword [ebp - 0x4d0]
fstp dword [ebp - 0x4c0]
fld dword [ebp - 0x4c4]
fadd dword [ebp - 0x4c0]
fstp dword [ebp - 0x4c4]
fld dword [ebp - 0x4c0]
fdiv dword [ebp - 0x4d0]
fstp dword [ebp - 0x4c0]
fld dword [ebp - 0x4d0]
fadd dword [ebp - 0x4c8]
fstp dword [ebp - 0x4d0]
mov ecx, dword [ebp - 0x49c]
or ecx, dword [ebp - 0x488]
mov dword [ebp - 0x43c], ecx
mov dl, byte [ebp - 0x43c]
mov byte [ebp - 0x3f5], dl
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + eax - 0x358]
mov byte [ebp - 0x495], 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 - 0x495]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x495]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x359]
add ecx, eax
mov byte [ebp - 0x359], cl
movzx edx, byte [ebp - 0x3f5]
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 - 0x3f5]
mov byte [ebp - 0x241], cl
mov dl, byte [ebp - 0x361]
mov byte [ebp - 0x481], dl
cmp dword [ebp - 0x444], 0
jle 0x4bd838
mov eax, dword [ebp - 0x444]
mov cl, byte [ebp - 0x481]
mov byte [ebp + eax - 0x231], cl
jmp 0x4bd42b
mov edx, dword [ebp - 0x440]
add edx, 1
mov dword [ebp - 0x440], edx
mov eax, dword [ebp - 0x444]
add eax, 1
mov dword [ebp - 0x444], eax
mov ecx, dword [ebp - 0x440]
add ecx, 1
mov dword [ebp - 0x440], ecx
mov edx, dword [ebp - 0x444]
shl edx, 1
mov dword [ebp - 0x398], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x398]
movzx ecx, byte [eax]
mov dword [ebp - 0x490], ecx
mov dword [ebp - 0x3f4], 0x7c
mov edx, dword [ebp - 0x444]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x428], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x428]
movzx edx, byte [ecx]
mov dword [ebp - 0x4a4], edx
mov dword [ebp - 0x48c], 0x4b
mov eax, dword [ebp - 0x490]
sub eax, dword [ebp - 0x3f4]
mov dword [ebp - 0x4a0], eax
mov ecx, dword [ebp - 0x4a4]
sub ecx, dword [ebp - 0x48c]
mov dword [ebp - 0x3b0], ecx
mov edx, dword [ebp - 0x4a0]
shl edx, 4
mov dword [ebp - 0x49c], edx
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x488], eax
mov ecx, dword [ebp - 0x49c]
or ecx, dword [ebp - 0x488]
mov dword [ebp - 0x43c], ecx
mov dl, byte [ebp - 0x43c]
mov byte [ebp - 0x3f5], dl
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + eax - 0x358]
mov byte [ebp - 0x495], 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 - 0x495]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x495]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x359]
add ecx, eax
mov byte [ebp - 0x359], cl
movzx edx, byte [ebp - 0x3f5]
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 - 0x3f5]
mov byte [ebp - 0x241], cl
mov dl, byte [ebp - 0x361]
mov byte [ebp - 0x481], dl
cmp dword [ebp - 0x444], 0
jle 0x4bdaa4
mov eax, dword [ebp - 0x444]
mov cl, byte [ebp - 0x481]
mov byte [ebp + eax - 0x231], cl
mov edx, dword [ebp - 0x444]
add edx, 1
mov dword [ebp - 0x444], edx
mov eax, dword [ebp - 0x440]
add eax, 1
mov dword [ebp - 0x440], eax
mov ecx, dword [ebp - 0x444]
shl ecx, 1
mov dword [ebp - 0x398], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x398]
movzx eax, byte [edx]
mov dword [ebp - 0x490], eax
mov dword [ebp - 0x3f4], 0x7c
fld dword [0x9c9120]
fstp dword [ebp - 0x3d4]
fld dword [0x9c911c]
fstp dword [ebp - 0x38c]
fld dword [0x9c9118]
fstp dword [ebp - 0x464]
fld dword [ebp - 0x3d4]
fadd dword [ebp - 0x464]
fstp dword [ebp - 0x3d4]
fld dword [ebp - 0x3d4]
fadd dword [ebp - 0x464]
fstp dword [ebp - 0x3d4]
fld dword [ebp - 0x3d4]
fsub dword [ebp - 0x464]
fstp dword [ebp - 0x3d4]
fld dword [ebp - 0x464]
fld dword [ebp - 0x3d4]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4bdba9
fld dword [ebp - 0x464]
fmul dword [ebp - 0x3d4]
fstp dword [ebp - 0x464]
fld dword [ebp - 0x38c]
fsub dword [ebp - 0x464]
fstp dword [ebp - 0x38c]
fld dword [ebp - 0x3d4]
fmul dword [ebp - 0x38c]
fstp dword [ebp - 0x3d4]
mov ecx, dword [ebp - 0x444]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x428], edx
jmp 0x4bdc98
fld dword [ebp - 0x464]
fdiv dword [ebp - 0x38c]
fstp dword [ebp - 0x464]
fld dword [ebp - 0x464]
fsub dword [ebp - 0x38c]
fstp dword [ebp - 0x464]
fld dword [ebp - 0x38c]
fdiv dword [ebp - 0x3d4]
fstp dword [ebp - 0x38c]
fld dword [ebp - 0x464]
fadd dword [ebp - 0x38c]
fstp dword [ebp - 0x464]
fld dword [ebp - 0x38c]
fmul dword [ebp - 0x3d4]
fstp dword [ebp - 0x38c]
fld dword [ebp - 0x464]
fmul dword [ebp - 0x38c]
fstp dword [ebp - 0x464]
fld dword [ebp - 0x3d4]
fld dword [ebp - 0x464]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4bdc62
fld dword [ebp - 0x38c]
fmul dword [ebp - 0x464]
fstp dword [ebp - 0x38c]
fld dword [ebp - 0x464]
fdiv dword [ebp - 0x3d4]
fstp dword [ebp - 0x464]
fld dword [ebp - 0x38c]
fdiv dword [ebp - 0x464]
fstp dword [ebp - 0x38c]
jmp 0x4bdc98
fld dword [ebp - 0x38c]
fadd dword [ebp - 0x464]
fstp dword [ebp - 0x38c]
fld dword [ebp - 0x3d4]
fadd dword [ebp - 0x38c]
fstp dword [ebp - 0x3d4]
fld dword [ebp - 0x3d4]
fsub dword [ebp - 0x38c]
fstp dword [ebp - 0x3d4]
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x428]
movzx ecx, byte [eax]
mov dword [ebp - 0x4a4], ecx
mov dword [ebp - 0x48c], 0x4b
mov edx, dword [ebp - 0x490]
sub edx, dword [ebp - 0x3f4]
mov dword [ebp - 0x4a0], edx
mov eax, dword [ebp - 0x4a4]
sub eax, dword [ebp - 0x48c]
mov dword [ebp - 0x3b0], eax
mov ecx, dword [ebp - 0x4a0]
shl ecx, 4
mov dword [ebp - 0x49c], ecx
mov edx, dword [ebp - 0x3b0]
mov dword [ebp - 0x488], edx
mov eax, dword [ebp - 0x49c]
or eax, dword [ebp - 0x488]
mov dword [ebp - 0x43c], eax
mov cl, byte [ebp - 0x43c]
mov byte [ebp - 0x3f5], cl
movzx edx, byte [ebp - 0x241]
mov al, byte [ebp + edx - 0x358]
mov byte [ebp - 0x495], 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 - 0x495]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x495]
movzx edx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp - 0x359]
add eax, edx
mov byte [ebp - 0x359], al
movzx ecx, byte [ebp - 0x3f5]
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 - 0x3f5]
mov byte [ebp - 0x241], al
mov cl, byte [ebp - 0x361]
mov byte [ebp - 0x481], cl
cmp dword [ebp - 0x444], 0
jle 0x4bde93
mov edx, dword [ebp - 0x444]
mov al, byte [ebp - 0x481]
mov byte [ebp + edx - 0x231], al
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x444], ecx
mov edx, dword [ebp - 0x440]
add edx, 1
mov dword [ebp - 0x440], edx
mov eax, dword [ebp - 0x444]
shl eax, 1
mov dword [ebp - 0x398], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x398]
movzx edx, byte [ecx]
mov dword [ebp - 0x490], edx
mov dword [ebp - 0x3f4], 0x7c
mov eax, dword [ebp - 0x444]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x428], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x428]
movzx eax, byte [edx]
mov dword [ebp - 0x4a4], eax
mov dword [ebp - 0x48c], 0x4b
mov ecx, dword [ebp - 0x490]
sub ecx, dword [ebp - 0x3f4]
mov dword [ebp - 0x4a0], ecx
fld qword [0x9c9110]
fstp qword [ebp - 0x418]
fld qword [0x9c9108]
fstp qword [ebp - 0x3d0]
fld qword [0x9c9100]
fstp qword [ebp - 0x388]
fld qword [0x9c90f8]
fstp qword [ebp - 0x460]
fld qword [0x9c90f0]
fstp qword [ebp - 0x410]
fld qword [0x9c90e8]
fstp qword [ebp - 0x3c8]
fld qword [0x9c90e0]
fstp qword [ebp - 0x380]
fld qword [ebp - 0x3c8]
fmul qword [ebp - 0x380]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x3c8]
fmul qword [ebp - 0x380]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x418]
fmul qword [ebp - 0x380]
fstp qword [ebp - 0x418]
fld qword [ebp - 0x460]
fsub qword [ebp - 0x380]
fstp qword [ebp - 0x460]
fld qword [ebp - 0x3d0]
fsub qword [ebp - 0x380]
fstp qword [ebp - 0x3d0]
fld qword [ebp - 0x3c8]
fmul qword [ebp - 0x380]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x3c8]
fmul qword [ebp - 0x380]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x3c8]
fcomp qword [ebp - 0x380]
fnstsw ax
test ah, 5
jp 0x4be08b
fld qword [ebp - 0x410]
fsub qword [ebp - 0x380]
fstp qword [ebp - 0x410]
fld qword [ebp - 0x418]
fadd qword [ebp - 0x388]
fstp qword [ebp - 0x418]
fld qword [ebp - 0x418]
fdiv qword [ebp - 0x388]
fstp qword [ebp - 0x418]
fld qword [ebp - 0x388]
fmul qword [ebp - 0x410]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x3d0]
fadd qword [ebp - 0x460]
fstp qword [ebp - 0x3d0]
fld qword [ebp - 0x3d0]
fsub qword [ebp - 0x460]
fstp qword [ebp - 0x3d0]
fld qword [ebp - 0x3d0]
fdiv qword [ebp - 0x460]
fstp qword [ebp - 0x3d0]
jmp 0x4be11b
fld qword [ebp - 0x3c8]
fadd qword [ebp - 0x380]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x3d0]
fadd qword [ebp - 0x388]
fstp qword [ebp - 0x3d0]
fld qword [ebp - 0x388]
fmul qword [ebp - 0x460]
fstp qword [ebp - 0x388]
fld qword [ebp - 0x3c8]
fadd qword [ebp - 0x380]
fstp qword [ebp - 0x3c8]
fld qword [ebp - 0x380]
fmul qword [ebp - 0x418]
fstp qword [ebp - 0x380]
fld qword [ebp - 0x3d0]
fsub qword [ebp - 0x388]
fstp qword [ebp - 0x3d0]
fld qword [ebp - 0x380]
fsub qword [ebp - 0x418]
fstp qword [ebp - 0x380]
mov edx, dword [ebp - 0x4a4]
sub edx, dword [ebp - 0x48c]
mov dword [ebp - 0x3b0], edx
mov eax, dword [ebp - 0x4a0]
shl eax, 4
mov dword [ebp - 0x49c], eax
mov ecx, dword [ebp - 0x3b0]
mov dword [ebp - 0x488], ecx
mov edx, dword [ebp - 0x49c]
or edx, dword [ebp - 0x488]
mov dword [ebp - 0x43c], edx
mov al, byte [ebp - 0x43c]
mov byte [ebp - 0x3f5], al
movzx ecx, byte [ebp - 0x241]
mov dl, byte [ebp + ecx - 0x358]
mov byte [ebp - 0x495], 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 - 0x495]
mov byte [ebp + ecx - 0x358], dl
movzx eax, byte [ebp - 0x495]
movzx ecx, byte [ebp + eax - 0x358]
movzx edx, byte [ebp - 0x359]
add edx, ecx
mov byte [ebp - 0x359], dl
movzx eax, byte [ebp - 0x3f5]
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 - 0x3f5]
mov byte [ebp - 0x241], dl
mov al, byte [ebp - 0x361]
mov byte [ebp - 0x481], al
cmp dword [ebp - 0x444], 0
jle 0x4be2d4
mov ecx, dword [ebp - 0x444]
mov dl, byte [ebp - 0x481]
mov byte [ebp + ecx - 0x231], dl
mov eax, dword [ebp - 0x440]
add eax, 2
mov dword [ebp - 0x440], eax
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x4d8], ecx
jmp 0x4be303
mov edx, dword [ebp - 0x4d8]
add edx, 1
mov dword [ebp - 0x4d8], edx
mov eax, dword [ebp - 0x4d8]
cmp eax, dword [ebp - 0x440]
jge 0x4be563
mov ecx, dword [ebp - 0x444]
add ecx, 1
mov dword [ebp - 0x444], ecx
mov edx, dword [ebp - 0x444]
shl edx, 1
mov dword [ebp - 0x398], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x398]
movzx ecx, byte [eax]
mov dword [ebp - 0x490], ecx
mov dword [ebp - 0x3f4], 0x7c
mov edx, dword [ebp - 0x444]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x428], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x428]
movzx edx, byte [ecx]
mov dword [ebp - 0x4a4], edx
mov dword [ebp - 0x48c], 0x4b
mov eax, dword [ebp - 0x490]
sub eax, dword [ebp - 0x3f4]
mov dword [ebp - 0x4a0], eax
mov ecx, dword [ebp - 0x4a4]
sub ecx, dword [ebp - 0x48c]
mov dword [ebp - 0x3b0], ecx
mov edx, dword [ebp - 0x4a0]
shl edx, 4
mov dword [ebp - 0x49c], edx
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x488], eax
mov ecx, dword [ebp - 0x49c]
or ecx, dword [ebp - 0x488]
mov dword [ebp - 0x43c], ecx
mov dl, byte [ebp - 0x43c]
mov byte [ebp - 0x3f5], dl
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + eax - 0x358]
mov byte [ebp - 0x495], 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 - 0x495]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x495]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x359]
add ecx, eax
mov byte [ebp - 0x359], cl
movzx edx, byte [ebp - 0x3f5]
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 - 0x3f5]
mov byte [ebp - 0x241], cl
mov dl, byte [ebp - 0x361]
mov byte [ebp - 0x481], dl
cmp dword [ebp - 0x444], 0
jle 0x4be55e
mov eax, dword [ebp - 0x444]
mov cl, byte [ebp - 0x481]
mov byte [ebp + eax - 0x231], cl
jmp 0x4be2f4
mov edx, dword [ebp - 0x440]
add edx, 1
mov dword [ebp - 0x440], edx
mov eax, dword [ebp - 0x444]
add eax, 1
mov dword [ebp - 0x444], eax
mov ecx, dword [ebp - 0x440]
add ecx, 1
mov dword [ebp - 0x440], ecx
mov edx, dword [ebp - 0x444]
shl edx, 1
mov dword [ebp - 0x398], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x398]
movzx ecx, byte [eax]
mov dword [ebp - 0x490], ecx
mov dword [ebp - 0x3f4], 0x7c
mov edx, dword [ebp - 0x444]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x428], eax
mov ecx, dword [ebp - 0x24c]
add ecx, dword [ebp - 0x428]
movzx edx, byte [ecx]
mov dword [ebp - 0x4a4], edx
mov dword [ebp - 0x48c], 0x4b
mov eax, dword [ebp - 0x490]
sub eax, dword [ebp - 0x3f4]
mov dword [ebp - 0x4a0], eax
mov ecx, dword [ebp - 0x4a4]
sub ecx, dword [ebp - 0x48c]
mov dword [ebp - 0x3b0], ecx
mov edx, dword [ebp - 0x4a0]
shl edx, 4
mov dword [ebp - 0x49c], edx
mov eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x488], eax
mov ecx, dword [ebp - 0x49c]
or ecx, dword [ebp - 0x488]
mov dword [ebp - 0x43c], ecx
mov dl, byte [ebp - 0x43c]
mov byte [ebp - 0x3f5], dl
movzx eax, byte [ebp - 0x241]
mov cl, byte [ebp + eax - 0x358]
mov byte [ebp - 0x495], 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 - 0x495]
mov byte [ebp + eax - 0x358], cl
movzx edx, byte [ebp - 0x495]
movzx eax, byte [ebp + edx - 0x358]
movzx ecx, byte [ebp - 0x359]
add ecx, eax
mov byte [ebp - 0x359], cl
fld dword [0x9c90dc]
fstp dword [ebp - 0x430]
fld dword [0x9c90d8]
fstp dword [ebp - 0x3e4]
fld dword [0x9c90d4]
fstp dword [ebp - 0x3a0]
fld dword [0x9c90d0]
fstp dword [ebp - 0x478]
fld dword [ebp - 0x430]
fadd dword [ebp - 0x478]
fstp dword [ebp - 0x430]
fld dword [ebp - 0x3a0]
fadd dword [ebp - 0x478]
fstp dword [ebp - 0x3a0]
fld dword [ebp - 0x3e4]
fsub dword [ebp - 0x478]
fstp dword [ebp - 0x3e4]
fld dword [ebp - 0x430]
fsub dword [ebp - 0x478]
fstp dword [ebp - 0x430]
fld dword [ebp - 0x430]
fld dword [ebp - 0x478]
fcompp
fnstsw ax
test ah, 0x41
jne 0x4be7ea
fld dword [ebp - 0x3e4]
fsub dword [ebp - 0x478]
fstp dword [ebp - 0x3e4]
fld dword [ebp - 0x3a0]
fadd dword [ebp - 0x430]
fstp dword [ebp - 0x3a0]
fld dword [ebp - 0x3a0]
fsub dword [ebp - 0x430]
fstp dword [ebp - 0x3a0]
fld dword [ebp - 0x3a0]
fmul dword [ebp - 0x430]
fstp dword [ebp - 0x3a0]
jmp 0x4be8b8
fld dword [ebp - 0x430]
fsub dword [ebp - 0x3e4]
fstp dword [ebp - 0x430]
fld dword [ebp - 0x3e4]
fmul dword [ebp - 0x3a0]
fstp dword [ebp - 0x3e4]
fld dword [ebp - 0x3e4]
fmul dword [ebp - 0x3a0]
fstp dword [ebp - 0x3e4]
fld dword [ebp - 0x478]
fsub dword [ebp - 0x430]
fstp dword [ebp - 0x478]
movzx edx, byte [ebp - 0x3f5]
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 - 0x3f5]
mov byte [ebp - 0x241], cl
mov dl, byte [ebp - 0x361]
mov byte [ebp - 0x481], dl
cmp dword [ebp - 0x444], 0
jle 0x4be8ec
mov eax, dword [ebp - 0x444]
mov cl, byte [ebp - 0x481]
mov byte [ebp + eax - 0x231], cl
mov edx, dword [ebp - 0x444]
add edx, 1
mov dword [ebp - 0x444], edx
mov eax, dword [ebp - 0x440]
add eax, 1
mov dword [ebp - 0x440], eax
mov ecx, dword [ebp - 0x444]
shl ecx, 1
mov dword [ebp - 0x398], ecx
mov edx, dword [ebp - 0x24c]
add edx, dword [ebp - 0x398]
movzx eax, byte [edx]
mov dword [ebp - 0x490], eax
mov dword [ebp - 0x3f4], 0x7c
mov ecx, dword [ebp - 0x444]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x428], edx
mov eax, dword [ebp - 0x24c]
add eax, dword [ebp - 0x428]
movzx ecx, byte [eax]
mov dword [ebp - 0x4a4], ecx
mov dword [ebp - 0x48c], 0x4b
mov edx, dword [ebp - 0x490]
sub edx, dword [ebp - 0x3f4]
mov dword [ebp - 0x4a0], edx
mov eax, dword [ebp - 0x4a4]
sub eax, dword [ebp - 0x48c]
mov dword [ebp - 0x3b0], eax
mov ecx, dword [ebp - 0x4a0]
shl ecx, 4
mov dword [ebp - 0x49c], ecx
mov edx, dword [ebp - 0x3b0]
mov dword [ebp - 0x488], edx
mov eax, dword [ebp - 0x49c]
or eax, dword [ebp - 0x488]
mov dword [ebp - 0x43c], eax
mov cl, byte [ebp - 0x43c]
mov byte [ebp - 0x3f5], cl
movzx edx, byte [ebp - 0x241]
mov al, byte [ebp + edx - 0x358]
mov byte [ebp - 0x495], 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 dword [0x9c90cc]
fstp dword [ebp - 0x42c]
fld dword [0x9c90c8]
fstp dword [ebp - 0x3e0]
fld dword [0x9c90c4]
fstp dword [ebp - 0x39c]
fld dword [0x9c90c0]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x3e0]
fsub dword [ebp - 0x474]
fstp dword [ebp - 0x3e0]
fld dword [ebp - 0x39c]
fadd dword [ebp - 0x474]
fstp dword [ebp - 0x39c]
fld dword [ebp - 0x39c]
fadd dword [ebp - 0x474]
fstp dword [ebp - 0x39c]
fld dword [ebp - 0x42c]
fsub dword [ebp - 0x474]
fstp dword [ebp - 0x42c]
fld dword [ebp - 0x39c]
fld dword [ebp - 0x474]
fcompp
fnstsw ax
test ah, 5
jp 0x4beb32
fld dword [ebp - 0x39c]
fadd dword [ebp - 0x474]
fstp dword [ebp - 0x39c]
fld dword [ebp - 0x39c]
fadd dword [ebp - 0x474]
fstp dword [ebp - 0x39c]
fld dword [ebp - 0x42c]
fadd dword [ebp - 0x3e0]
fstp dword [ebp - 0x42c]
fld dword [ebp - 0x3e0]
fsub dword [ebp - 0x39c]
fstp dword [ebp - 0x3e0]
movzx edx, byte [ebp - 0x36b]
movzx eax, byte [ebp - 0x361]
mov cl, byte [ebp + edx - 0x358]
mov byte [ebp + eax - 0x358], cl
jmp 0x4bec69
fld dword [ebp - 0x474]
fdiv dword [ebp - 0x3e0]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x42c]
fdiv dword [ebp - 0x39c]
fstp dword [ebp - 0x42c]
fld dword [ebp - 0x474]
fsub dword [ebp - 0x3e0]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x3e0]
fdiv dword [ebp - 0x474]
fstp dword [ebp - 0x3e0]
fld dword [ebp - 0x3e0]
fsub dword [ebp - 0x474]
fstp dword [ebp - 0x3e0]
fld dword [ebp - 0x474]
fmul dword [ebp - 0x3e0]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x474]
fadd dword [ebp - 0x3e0]
fstp dword [ebp - 0x474]
fld dword [ebp - 0x3e0]
fdiv dword [ebp - 0x474]
fstp dword [ebp - 0x3e0]
fld dword [ebp - 0x3e0]
fld dword [ebp - 0x474]
fcompp
fnstsw ax
test ah, 5
jp 0x4bec21
fld dword [ebp - 0x42c]
fadd dword [ebp - 0x3e0]
fstp dword [ebp - 0x42c]
fld dword [ebp - 0x42c]
fadd dword [ebp - 0x3e0]
fstp dword [ebp - 0x42c]
fld dword [ebp - 0x42c]
fadd dword [ebp - 0x3e0]
fstp dword [ebp - 0x42c]
fld dword [ebp - 0x39c]
fmul dword [ebp - 0x474]
fstp dword [ebp - 0x39c]
jmp 0x4bec69
fld dword [ebp - 0x39c]
fmul dword [ebp - 0x42c]
fstp dword [ebp - 0x39c]
fld dword [ebp - 0x39c]
fsub dword [ebp - 0x42c]
fstp dword [ebp - 0x39c]
fld dword [ebp - 0x39c]
fdiv dword [ebp - 0x42c]
fstp dword [ebp - 0x39c]
fld dword [ebp - 0x42c]
fadd dword [ebp - 0x39c]
fstp dword [ebp - 0x42c]
movzx edx, byte [ebp - 0x36b]
mov al, byte [ebp - 0x495]
mov byte [ebp + edx - 0x358], al
movzx ecx, byte [ebp - 0x495]
movzx edx, byte [ebp + ecx - 0x358]
movzx eax, byte [ebp - 0x359]
add eax, edx
mov byte [ebp - 0x359], al
movzx ecx, byte [ebp - 0x3f5]
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 - 0x3f5]
mov byte [ebp - 0x241], al
mov cl, byte [ebp - 0x361]
mov byte [ebp - 0x481], cl
cmp dword [ebp - 0x444], 0
jle 0x4bed53
mov edx, dword [ebp - 0x444]
mov al, byte [ebp - 0x481]
mov byte [ebp + edx - 0x231], al
mov byte [ebp - 0x225], 0
jmp 0x4bed90
mov dword [ebp - 0x4dc], 0
jmp 0x4bed77
mov ecx, dword [ebp - 0x4dc]
add ecx, 1
mov dword [ebp - 0x4dc], ecx
cmp dword [ebp - 0x4dc], 0xc
jge 0x4bed90
mov edx, dword [ebp - 0x4dc]
mov byte [ebp + edx - 0x230], 0
jmp 0x4bed68
lea eax, [ebp - 0x230]
push eax
mov ecx, dword [0x9fda1c]
call fcn.0044de30
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 0x4c0ca8
push 0
mov edx, dword [ebp - 0x224]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x4f8], eax
mov dword [ebp - 0x514], 0
mov eax, dword [ebp - 0x4f8]
push eax
call fcn.0095b1c7
add esp, 4
mov dword [ebp - 0x774], eax
mov ecx, dword [ebp - 0x774]
mov dword [ebp - 0x4f4], ecx
mov dword [ebp - 0x4e0], 0
mov dword [ebp - 0x4f0], 0
fldz
fstp qword [ebp - 0x510]
fldz
fstp qword [ebp - 0x4e8]
fldz
fstp qword [ebp - 0x4e8]
jmp 0x4bee5a
fld qword [ebp - 0x4e8]
fadd qword [0x9c6870]
fstp qword [ebp - 0x4e8]
fld qword [0x9c90b8]
fcomp qword [ebp - 0x4e8]
fnstsw ax
test ah, 0x41
jne 0x4beee3
fld qword [0x9c90b0]
fmul qword [ebp - 0x4e8]
fmul qword [ebp - 0x4e8]
fld qword [ebp - 0x4e8]
fmul qword [ebp - 0x4e8]
fsubp st(1)
fld qword [0x9c90a8]
fmul qword [ebp - 0x4e8]
fmul qword [ebp - 0x4e8]
fadd qword [0x9c90a0]
fdivp st(1)
fadd qword [ebp - 0x510]
fstp qword [ebp - 0x510]
fld qword [0x9c9098]
fcomp qword [ebp - 0x510]
fnstsw ax
test ah, 5
jp 0x4beede
fld qword [0x9c9090]
fmul qword [ebp - 0x4e8]
fsubr qword [ebp - 0x510]
fstp qword [ebp - 0x510]
jmp 0x4bee48
fldz
fcomp qword [ebp - 0x510]
fnstsw ax
test ah, 0x41
jne 0x4bef24
pop ecx
cmp dword [ebx + edi], esp
xor byte [ebp + edi + 0x31], cl
pushal
xor dword [ebx + 0x76], eax
jle 0x4bef35
popal
popal
cmp eax, 0x7a673c58
dec esp
imul edi, dword [edx], 0xf2313b6c
xor ebx, 0xef7bec7c
cmp ch, byte [ebx + edi + 0x31]
xor ebx, 0xef7bec7c
jns 0x4bef01
xchg al, ch
mov bl, ch
mov al, dh
mov ah, ch
jge 0x4bef09
mov bh, 0x1b
add byte [eax], al
mov dword [ebp - 0x4e0], 0x4bef0d
mov dword [ebp - 0x4f0], 0x4beef2
mov edx, dword [ebp - 0x4e0]
mov dword [ebp - 0x520], edx
mov eax, dword [ebp - 0x4f0]
mov dword [ebp - 0x51c], eax
mov byte [ebp - 0x66d], 0x1f
out dx, al
dec ebx
add byte [ebx - 0x4df6b], cl
dec dword [ecx - 0x51f6b]
dec dword [ebx - 0x4ef7b]
dec dword [ecx - 0x51b7b]
inc esi
test dword [ebx + 0x1ffffff9], edx
mov dword [ebp - 0x664], 0
jmp 0x4bef72
mov ecx, dword [ebp - 0x664]
add ecx, 1
mov dword [ebp - 0x664], ecx
cmp dword [ebp - 0x664], 0x100
jae 0x4bef93
mov edx, dword [ebp - 0x664]
mov al, byte [ebp - 0x664]
mov byte [ebp + edx - 0x640], al
jmp 0x4bef63
mov dword [ebp - 0x524], 0
mov byte [ebp - 0x66e], 0
mov dword [ebp - 0x664], 0xff
jmp 0x4befbf
mov ecx, dword [ebp - 0x664]
sub ecx, 1
mov dword [ebp - 0x664], ecx
cmp dword [ebp - 0x664], 0
jbe 0x4bf2d3
mov dword [ebp - 0x688], 0
mov dword [ebp - 0x690], 1
mov edx, dword [ebp - 0x690]
cmp edx, dword [ebp - 0x664]
jae 0x4bf000
mov eax, dword [ebp - 0x690]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x690], ecx
jmp 0x4befe0
mov edx, dword [ebp - 0x524]
mov dword [ebp - 0x7f4], edx
cmp dword [ebp - 0x7f4], 3
ja case.default.0x4bf01f
mov eax, dword [ebp - 0x7f4]
jmp dword [eax*4 + 0x4c0cd4]
movzx ecx, byte [ebp - 0x66e]
movzx edx, byte [ebp + ecx - 0x640]
fld qword [ebp - 0x510]
fnstcw word [ebp - 0x7f6]
movzx eax, word [ebp - 0x7f6]
or eax, 0xc00
mov dword [ebp - 0x7fc], eax
fldcw word [ebp - 0x7fc]
fistp qword [ebp - 0x804]
fldcw word [ebp - 0x7f6]
mov eax, dword [ebp - 0x804]
and eax, 0xff
add edx, eax
mov byte [ebp - 0x66e], dl
jmp 0x4bf1ac
movzx ecx, byte [ebp - 0x66e]
movzx edx, byte [ebp + ecx - 0x640]
fld qword [ebp - 0x510]
fnstcw word [ebp - 0x806]
movzx eax, word [ebp - 0x806]
or eax, 0xc00
mov dword [ebp - 0x80c], eax
fldcw word [ebp - 0x80c]
fistp qword [ebp - 0x814]
fldcw word [ebp - 0x806]
mov eax, dword [ebp - 0x814]
shr eax, 8
and eax, 0xff
add edx, eax
mov byte [ebp - 0x66e], dl
jmp 0x4bf1ac
movzx ecx, byte [ebp - 0x66e]
movzx edx, byte [ebp + ecx - 0x640]
fld qword [ebp - 0x510]
fnstcw word [ebp - 0x816]
movzx eax, word [ebp - 0x816]
or eax, 0xc00
mov dword [ebp - 0x81c], eax
fldcw word [ebp - 0x81c]
fistp qword [ebp - 0x824]
fldcw word [ebp - 0x816]
mov eax, dword [ebp - 0x824]
shr eax, 0x10
and eax, 0xff
add edx, eax
mov byte [ebp - 0x66e], dl
jmp 0x4bf1ac
movzx ecx, byte [ebp - 0x66e]
movzx edx, byte [ebp + ecx - 0x640]
fld qword [ebp - 0x510]
fnstcw word [ebp - 0x826]
movzx eax, word [ebp - 0x826]
or eax, 0xc00
mov dword [ebp - 0x82c], eax
fldcw word [ebp - 0x82c]
fistp qword [ebp - 0x834]
fldcw word [ebp - 0x826]
mov eax, dword [ebp - 0x834]
shr eax, 0x18
and eax, 0xff
add edx, eax
mov byte [ebp - 0x66e], dl
jmp 0x4bf1ac
movzx ecx, byte [ebp - 0x66e]
movzx edx, byte [ebp + ecx - 0x640]
mov eax, dword [ebp - 0x51c]
add eax, dword [ebp - 0x524]
movzx ecx, byte [eax - 4]
add edx, ecx
mov byte [ebp - 0x66e], dl
mov edx, dword [ebp - 0x524]
add edx, 1
mov dword [ebp - 0x524], edx
movzx eax, byte [ebp - 0x66d]
cmp dword [ebp - 0x524], eax
jb 0x4bf1ea
mov dword [ebp - 0x524], 0
movzx ecx, byte [ebp - 0x66d]
movzx edx, byte [ebp - 0x66e]
add edx, ecx
mov byte [ebp - 0x66e], dl
movzx eax, byte [ebp - 0x66e]
and eax, dword [ebp - 0x690]
mov dword [ebp - 0x68c], eax
mov ecx, dword [ebp - 0x688]
add ecx, 1
mov dword [ebp - 0x688], ecx
cmp dword [ebp - 0x688], 0xb
jbe 0x4bf229
mov eax, dword [ebp - 0x68c]
xor edx, edx
div dword [ebp - 0x664]
mov dword [ebp - 0x68c], edx
mov edx, dword [ebp - 0x68c]
cmp edx, dword [ebp - 0x664]
ja 0x4bf000
mov eax, dword [ebp - 0x664]
cmp eax, dword [ebp - 0x68c]
je 0x4bf2ce
mov ecx, dword [ebp - 0x68c]
movzx edx, byte [ebp + ecx - 0x640]
mov eax, dword [ebp - 0x664]
movzx ecx, byte [ebp + eax - 0x640]
xor ecx, edx
mov edx, dword [ebp - 0x664]
mov byte [ebp + edx - 0x640], cl
mov eax, dword [ebp - 0x664]
movzx ecx, byte [ebp + eax - 0x640]
mov edx, dword [ebp - 0x68c]
movzx eax, byte [ebp + edx - 0x640]
xor eax, ecx
mov ecx, dword [ebp - 0x68c]
mov byte [ebp + ecx - 0x640], al
mov edx, dword [ebp - 0x68c]
movzx eax, byte [ebp + edx - 0x640]
mov ecx, dword [ebp - 0x664]
movzx edx, byte [ebp + ecx - 0x640]
xor edx, eax
mov eax, dword [ebp - 0x664]
mov byte [ebp + eax - 0x640], dl
jmp 0x4befb0
mov cl, byte [ebp - 0x63f]
mov byte [ebp - 0x681], cl
mov dl, byte [ebp - 0x63d]
mov byte [ebp - 0x539], dl
fld qword [0x9c9088]
fstp qword [ebp - 0x680]
fld qword [0x9c89c8]
fstp qword [ebp - 0x538]
fld qword [0x9c9080]
fstp qword [ebp - 0x650]
fld qword [0x9c9078]
fstp qword [ebp - 0x660]
fld qword [0x9c9070]
fstp qword [ebp - 0x678]
fld qword [0x9c9068]
fstp qword [ebp - 0x530]
fld qword [0x9c9060]
fstp qword [ebp - 0x648]
fld qword [ebp - 0x678]
fsub qword [ebp - 0x648]
fstp qword [ebp - 0x678]
fld qword [ebp - 0x530]
fmul qword [ebp - 0x648]
fstp qword [ebp - 0x530]
fld qword [ebp - 0x680]
fadd qword [ebp - 0x648]
fstp qword [ebp - 0x680]
fld qword [ebp - 0x538]
fsub qword [ebp - 0x648]
fstp qword [ebp - 0x538]
fld qword [ebp - 0x530]
fmul qword [ebp - 0x648]
fstp qword [ebp - 0x530]
fld qword [ebp - 0x530]
fsub qword [ebp - 0x648]
fstp qword [ebp - 0x530]
fld qword [ebp - 0x680]
fadd qword [ebp - 0x648]
fstp qword [ebp - 0x680]
fld qword [ebp - 0x530]
fcomp qword [ebp - 0x648]
fnstsw ax
test ah, 0x41
jne 0x4bf460
fld qword [ebp - 0x660]
fmul qword [ebp - 0x530]
fstp qword [ebp - 0x660]
fld qword [ebp - 0x530]
fmul qword [ebp - 0x680]
fstp qword [ebp - 0x530]
fld qword [ebp - 0x678]
fadd qword [ebp - 0x648]
fstp qword [ebp - 0x678]
fld qword [ebp - 0x650]
fmul qword [ebp - 0x678]
fstp qword [ebp - 0x650]
fld qword [ebp - 0x648]
fsub qword [ebp - 0x538]
fstp qword [ebp - 0x648]
fld qword [ebp - 0x648]
fsub qword [ebp - 0x538]
fstp qword [ebp - 0x648]
fld qword [ebp - 0x650]
fmul qword [ebp - 0x678]
fstp qword [ebp - 0x650]
mov al, byte [ebp - 0x63b]
mov byte [ebp - 0x651], al
jmp 0x4bf4de
fld qword [ebp - 0x660]
fadd qword [ebp - 0x678]
fstp qword [ebp - 0x660]
fld qword [ebp - 0x650]
fadd qword [ebp - 0x660]
fstp qword [ebp - 0x650]
fld qword [ebp - 0x650]
fadd qword [ebp - 0x660]
fstp qword [ebp - 0x650]
fld qword [ebp - 0x530]
fadd qword [ebp - 0x648]
fstp qword [ebp - 0x530]
fld qword [ebp - 0x530]
fadd qword [ebp - 0x648]
fstp qword [ebp - 0x530]
fld qword [ebp - 0x678]
fadd qword [ebp - 0x530]
fstp qword [ebp - 0x678]
fld qword [ebp - 0x648]
fdiv qword [ebp - 0x680]
fstp qword [ebp - 0x648]
mov cl, byte [ebp - 0x639]
mov byte [ebp - 0x665], cl
movzx edx, byte [ebp - 0x66e]
mov al, byte [ebp + edx - 0x640]
mov byte [ebp - 0x515], al
mov dword [ebp - 0x66c], 0x12
cmp dword [ebp - 0x66c], 2
jle 0x4c0aa7
mov ecx, dword [ebp - 0x66c]
and ecx, 1
jne 0x4c0aa7
mov dword [ebp - 0x700], 0
mov dword [ebp - 0x6fc], 0
mov edx, dword [ebp - 0x6fc]
add edx, 1
mov dword [ebp - 0x6fc], edx
mov dword [ebp - 0x6ac], 0
mov eax, dword [ebp - 0x700]
shl eax, 1
mov dword [ebp - 0x6ac], eax
mov dword [ebp - 0x738], 0
mov ecx, dword [ebp - 0x520]
add ecx, dword [ebp - 0x6ac]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x738]
mov dword [ebp - 0x738], edx
mov dword [ebp - 0x6cc], 0
mov eax, dword [ebp - 0x6cc]
add eax, 0xe5
mov dword [ebp - 0x6cc], eax
mov dword [ebp - 0x6f4], 0
mov ecx, dword [ebp - 0x700]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x6f4], edx
mov dword [ebp - 0x758], 0
mov eax, dword [ebp - 0x520]
add eax, dword [ebp - 0x6f4]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x758]
mov dword [ebp - 0x758], ecx
mov dword [ebp - 0x734], 0
mov edx, dword [ebp - 0x734]
add edx, 0x79
mov dword [ebp - 0x734], edx
mov dword [ebp - 0x754], 0
mov eax, dword [ebp - 0x738]
sub eax, dword [ebp - 0x6cc]
add eax, dword [ebp - 0x754]
mov dword [ebp - 0x754], eax
mov dword [ebp - 0x6b0], 0
fld qword [0x9c9058]
fstp qword [ebp - 0x728]
fld qword [0x9c9050]
fstp qword [ebp - 0x6a8]
fld qword [0x9c9048]
fstp qword [ebp - 0x6c8]
fld qword [0x9c9040]
fstp qword [ebp - 0x6f0]
fld qword [ebp - 0x728]
fadd qword [ebp - 0x6f0]
fstp qword [ebp - 0x728]
fld qword [ebp - 0x6a8]
fadd qword [ebp - 0x6f0]
fstp qword [ebp - 0x6a8]
fld qword [ebp - 0x6c8]
fsub qword [ebp - 0x6f0]
fstp qword [ebp - 0x6c8]
fld qword [ebp - 0x728]
fadd qword [ebp - 0x6f0]
fstp qword [ebp - 0x728]
fld qword [ebp - 0x728]
fcomp qword [ebp - 0x6c8]
fnstsw ax
test ah, 5
jp 0x4bf6f8
fld qword [ebp - 0x6f0]
fdiv qword [ebp - 0x728]
fstp qword [ebp - 0x6f0]
fld qword [ebp - 0x6f0]
fsub qword [ebp - 0x728]
fstp qword [ebp - 0x6f0]
fld qword [ebp - 0x6f0]
fdiv qword [ebp - 0x728]
fstp qword [ebp - 0x6f0]
fld qword [ebp - 0x6f0]
fadd qword [ebp - 0x728]
fstp qword [ebp - 0x6f0]
jmp 0x4bf758
fld qword [ebp - 0x6a8]
fsub qword [ebp - 0x6c8]
fstp qword [ebp - 0x6a8]
fld qword [ebp - 0x728]
fadd qword [ebp - 0x6a8]
fstp qword [ebp - 0x728]
fld qword [ebp - 0x6a8]
fadd qword [ebp - 0x6c8]
fstp qword [ebp - 0x6a8]
fld qword [ebp - 0x728]
fadd qword [ebp - 0x6a8]
fstp qword [ebp - 0x728]
mov ecx, dword [ebp - 0x758]
sub ecx, dword [ebp - 0x734]
add ecx, dword [ebp - 0x6b0]
mov dword [ebp - 0x6b0], ecx
mov dword [ebp - 0x750], 0
mov edx, dword [ebp - 0x754]
shl edx, 4
mov dword [ebp - 0x750], edx
mov dword [ebp - 0x730], 0
mov eax, dword [ebp - 0x6b0]
mov dword [ebp - 0x730], eax
mov dword [ebp - 0x6f8], 0
mov ecx, dword [ebp - 0x750]
or ecx, dword [ebp - 0x730]
mov dword [ebp - 0x6f8], ecx
mov byte [ebp - 0x6cd], 0
mov dl, byte [ebp - 0x6f8]
mov byte [ebp - 0x6cd], dl
mov byte [ebp - 0x749], 0
movzx eax, byte [ebp - 0x515]
mov cl, byte [ebp + eax - 0x640]
mov byte [ebp - 0x749], cl
movzx edx, byte [ebp - 0x681]
movzx eax, byte [ebp + edx - 0x640]
movzx ecx, byte [ebp - 0x539]
add ecx, eax
mov byte [ebp - 0x539], cl
mov dl, byte [ebp - 0x681]
add dl, 1
mov byte [ebp - 0x681], dl
movzx eax, byte [ebp - 0x539]
movzx ecx, byte [ebp - 0x515]
mov dl, byte [ebp + eax - 0x640]
mov byte [ebp + ecx - 0x640], dl
fld qword [0x9c9038]
fstp qword [ebp - 0x720]
fld qword [0x9c9030]
fstp qword [ebp - 0x6a0]
fld qword [0x9c9028]
fstp qword [ebp - 0x6c0]
fld qword [0x9c9020]
fstp qword [ebp - 0x6e8]
fld qword [0x9c9018]
fstp qword [ebp - 0x718]
fld qword [0x9c6cc8]
fstp qword [ebp - 0x698]
fld qword [ebp - 0x720]
fsub qword [ebp - 0x698]
fstp qword [ebp - 0x720]
fld qword [ebp - 0x6e8]
fmul qword [ebp - 0x698]
fstp qword [ebp - 0x6e8]
fld qword [ebp - 0x6c0]
fmul qword [ebp - 0x698]
fstp qword [ebp - 0x6c0]
fld qword [ebp - 0x6e8]
fsub qword [ebp - 0x698]
fstp qword [ebp - 0x6e8]
fld qword [ebp - 0x720]
fmul qword [ebp - 0x698]
fstp qword [ebp - 0x720]
fld qword [ebp - 0x6a0]
fmul qword [ebp - 0x698]
fstp qword [ebp - 0x6a0]
fld qword [ebp - 0x6a0]
fcomp qword [ebp - 0x698]
fnstsw ax
test ah, 5
jp 0x4bf952
fld qword [ebp - 0x6a0]
fsub qword [ebp - 0x6e8]
fstp qword [ebp - 0x6a0]
fld qword [ebp - 0x698]
fmul qword [ebp - 0x6a0]
fstp qword [ebp - 0x698]
fld qword [ebp - 0x6e8]
fadd qword [ebp - 0x698]
fstp qword [ebp - 0x6e8]
fld qword [ebp - 0x718]
fsub qword [ebp - 0x720]
fstp qword [ebp - 0x718]
fld qword [ebp - 0x6c0]
fsub qword [ebp - 0x718]
fstp qword [ebp - 0x6c0]
fld qword [ebp - 0x6a0]
fmul qword [ebp - 0x6e8]
fstp qword [ebp - 0x6a0]
jmp 0x4bf9da
fld qword [ebp - 0x720]
fadd qword [ebp - 0x6c0]
fstp qword [ebp - 0x720]
fld qword [ebp - 0x6c0]
fadd qword [ebp - 0x718]
fstp qword [ebp - 0x6c0]
fld qword [ebp - 0x6c0]
fmul qword [ebp - 0x718]
fstp qword [ebp - 0x6c0]
fld qword [ebp - 0x6c0]
fadd qword [ebp - 0x718]
fstp qword [ebp - 0x6c0]
fld qword [ebp - 0x718]
fsub qword [ebp - 0x720]
fstp qword [ebp - 0x718]
fld qword [ebp - 0x6e8]
fsub qword [ebp - 0x698]
fstp qword [ebp - 0x6e8]
movzx eax, byte [ebp - 0x665]
movzx ecx, byte [ebp - 0x539]
mov dl, byte [ebp + eax - 0x640]
mov byte [ebp + ecx - 0x640], dl
movzx eax, byte [ebp - 0x681]
movzx ecx, byte [ebp - 0x665]
mov dl, byte [ebp + eax - 0x640]
mov byte [ebp + ecx - 0x640], dl
movzx eax, byte [ebp - 0x681]
mov cl, byte [ebp - 0x749]
mov byte [ebp + eax - 0x640], cl
movzx edx, byte [ebp - 0x749]
movzx eax, byte [ebp + edx - 0x640]
movzx ecx, byte [ebp - 0x651]
add ecx, eax
mov byte [ebp - 0x651], cl
movzx edx, byte [ebp - 0x6cd]
movzx eax, byte [ebp - 0x539]
movzx ecx, byte [ebp + eax - 0x640]
movzx eax, byte [ebp - 0x681]
movzx eax, byte [ebp + eax - 0x640]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x640]
xor edx, ecx
movzx eax, byte [ebp - 0x665]
movzx ecx, byte [ebp + eax - 0x640]
movzx eax, byte [ebp - 0x515]
movzx eax, byte [ebp + eax - 0x640]
add ecx, eax
movzx eax, byte [ebp - 0x651]
movzx eax, byte [ebp + eax - 0x640]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x640]
movzx eax, byte [ebp + ecx - 0x640]
xor edx, eax
mov byte [ebp - 0x665], dl
mov cl, byte [ebp - 0x6cd]
mov byte [ebp - 0x515], cl
mov dl, byte [ebp - 0x665]
mov byte [ebp - 0x729], dl
cmp dword [ebp - 0x700], 0
jle 0x4bfae2
mov eax, dword [ebp - 0x700]
mov cl, byte [ebp - 0x729]
mov byte [ebp + eax - 0x505], cl
mov edx, dword [ebp - 0x700]
add edx, 1
mov dword [ebp - 0x700], edx
mov eax, dword [ebp - 0x6fc]
add eax, 1
mov dword [ebp - 0x6fc], eax
mov ecx, dword [ebp - 0x700]
shl ecx, 1
mov dword [ebp - 0x6ac], ecx
mov edx, dword [ebp - 0x520]
add edx, dword [ebp - 0x6ac]
movzx eax, byte [edx]
mov dword [ebp - 0x738], eax
mov dword [ebp - 0x6cc], 0xe5
fld qword [0x9c9010]
fstp qword [ebp - 0x6e0]
fld qword [0x9c9008]
fstp qword [ebp - 0x710]
fld qword [0x9c9000]
fstp qword [ebp - 0x748]
fld qword [0x9c8ff8]
fstp qword [ebp - 0x6b8]
fld qword [0x9c8ff0]
fstp qword [ebp - 0x6d8]
fld qword [0x9c8fe8]
fstp qword [ebp - 0x708]
fld qword [0x9c8fe0]
fstp qword [ebp - 0x740]
fld qword [ebp - 0x6b8]
fadd qword [ebp - 0x740]
fstp qword [ebp - 0x6b8]
fld qword [ebp - 0x6e0]
fsub qword [ebp - 0x740]
fstp qword [ebp - 0x6e0]
fld qword [ebp - 0x6d8]
fadd qword [ebp - 0x740]
fstp qword [ebp - 0x6d8]
fld qword [ebp - 0x710]
fmul qword [ebp - 0x740]
fstp qword [ebp - 0x710]
fld qword [ebp - 0x6d8]
fsub qword [ebp - 0x740]
fstp qword [ebp - 0x6d8]
fld qword [ebp - 0x6e0]
fsub qword [ebp - 0x740]
fstp qword [ebp - 0x6e0]
fld qword [ebp - 0x6e0]
fsub qword [ebp - 0x740]
fstp qword [ebp - 0x6e0]
fld qword [ebp - 0x710]
fcomp qword [ebp - 0x740]
fnstsw ax
test ah, 0x41
jne 0x4bfca9
fld qword [ebp - 0x710]
fadd qword [ebp - 0x6b8]
fstp qword [ebp - 0x710]
fld qword [ebp - 0x748]
fsub qword [ebp - 0x6d8]
fstp qword [ebp - 0x748]
fld qword [ebp - 0x710]
fmul qword [ebp - 0x6b8]
fstp qword [ebp - 0x710]
fld qword [ebp - 0x740]
fmul qword [ebp - 0x710]
fstp qword [ebp - 0x740]
fld qword [ebp - 0x6e0]
fmul qword [ebp - 0x748]
fstp qword [ebp - 0x6e0]
fld qword [ebp - 0x748]
fmul qword [ebp - 0x6d8]
fstp qword [ebp - 0x748]
fld qword [ebp - 0x6b8]
fmul qword [ebp - 0x708]
fstp qword [ebp - 0x6b8]
mov ecx, dword [ebp - 0x700]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x6f4], edx
jmp 0x4bfeba
fld qword [ebp - 0x740]
fsub qword [ebp - 0x710]
fstp qword [ebp - 0x740]
fld qword [ebp - 0x740]
fmul qword [ebp - 0x710]
fstp qword [ebp - 0x740]
fld qword [ebp - 0x6e0]
fadd qword [ebp - 0x748]
fstp qword [ebp - 0x6e0]
fld qword [ebp - 0x6e0]
fsub qword [ebp - 0x748]
fstp qword [ebp - 0x6e0]
fld qword [ebp - 0x748]
fadd qword [ebp - 0x6d8]
fstp qword [ebp - 0x748]
fld qword [ebp - 0x6e0]
fmul qword [ebp - 0x748]
fstp qword [ebp - 0x6e0]
fld qword [ebp - 0x748]
fsub qword [ebp - 0x6d8]
fstp qword [ebp - 0x748]
fld qword [ebp - 0x740]
fmul qword [ebp - 0x6e0]
fstp qword [ebp - 0x740]
fld qword [ebp - 0x740]
fdiv qword [ebp - 0x6e0]
fstp qword [ebp - 0x740]
fld qword [ebp - 0x6d8]
fdiv qword [ebp - 0x708]
fstp qword [ebp - 0x6d8]
fld qword [ebp - 0x740]
fsub qword [ebp - 0x6e0]
fstp qword [ebp - 0x740]
fld qword [ebp - 0x6e0]
fmul qword [ebp - 0x710]
fstp qword [ebp - 0x6e0]
fld qword [ebp - 0x6e0]
fdiv qword [ebp - 0x710]
fstp qword [ebp - 0x6e0]
fld qword [ebp - 0x708]
fadd qword [ebp - 0x740]
fstp qword [ebp - 0x708]
fld qword [ebp - 0x710]
fcomp qword [ebp - 0x740]
fnstsw ax
test ah, 5
jp 0x4bfe3c
fld qword [ebp - 0x748]
fdiv qword [ebp - 0x6d8]
fstp qword [ebp - 0x748]
fld qword [ebp - 0x708]
fsub qword [ebp - 0x6e0]
fstp qword [ebp - 0x708]
fld qword [ebp - 0x6e0]
fsub qword [ebp - 0x748]
fstp qword [ebp - 0x6e0]
fld qword [ebp - 0x708]
fadd qword [ebp - 0x6e0]
fstp qword [ebp - 0x708]
fld qword [ebp - 0x6b8]
fmul qword [ebp - 0x708]
fstp qword [ebp - 0x6b8]
fld qword [ebp - 0x710]
fadd qword [ebp - 0x6b8]
fstp qword [ebp - 0x710]
fld qword [ebp - 0x6b8]
fdiv qword [ebp - 0x708]
fstp qword [ebp - 0x6b8]
jmp 0x4bfeba
fld qword [ebp - 0x710]
fsub qword [ebp - 0x748]
fstp qword [ebp - 0x710]
fld qword [ebp - 0x740]
fadd qword [ebp - 0x6e0]
fstp qword [ebp - 0x740]
fld qword [ebp - 0x708]
fsub qword [ebp - 0x740]
fstp qword [ebp - 0x708]
fld qword [ebp - 0x740]
fadd qword [ebp - 0x6e0]
fstp qword [ebp - 0x740]
fld qword [ebp - 0x6b8]
fsub qword [ebp - 0x6d8]
fstp qword [ebp - 0x6b8]
fld qword [ebp - 0x710]
fmul qword [ebp - 0x748]
fstp qword [ebp - 0x710]
fld qword [ebp - 0x740]
fadd qword [ebp - 0x6e0]
fstp qword [ebp - 0x740]
mov eax, dword [ebp - 0x520]
add eax, dword [ebp - 0x6f4]
movzx ecx, byte [eax]
mov dword [ebp - 0x758], ecx
mov dword [ebp - 0x734], 0x79
mov edx, dword [ebp - 0x738]
sub edx, dword [ebp - 0x6cc]
mov dword [ebp - 0x754], edx
mov eax, dword [ebp - 0x758]
sub eax, dword [ebp - 0x734]
mov dword [ebp - 0x6b0], eax
mov ecx, dword [ebp - 0x754]
shl ecx, 4
mov dword [ebp - 0x750], ecx
mov edx, dword [ebp - 0x6b0]
mov dword [ebp - 0x730], edx
mov eax, dword [ebp - 0x750]
or eax, dword [ebp - 0x730]
mov dword [ebp - 0x6f8], eax
mov cl, byte [ebp - 0x6f8]
mov byte [ebp - 0x6cd], cl
movzx edx, byte [ebp - 0x515]
mov al, byte [ebp + edx - 0x640]
mov byte [ebp - 0x749], al
movzx ecx, byte [ebp - 0x681]
movzx edx, byte [ebp + ecx - 0x640]
movzx eax, byte [ebp - 0x539]
add eax, edx
mov byte [ebp - 0x539], al
mov cl, byte [ebp - 0x681]
add cl, 1
mov byte [ebp - 0x681], cl
movzx edx, byte [ebp - 0x539]
movzx eax, byte [ebp - 0x515]
mov cl, byte [ebp + edx - 0x640]
mov byte [ebp + eax - 0x640], cl
movzx edx, byte [ebp - 0x665]
movzx eax, byte [ebp - 0x539]
mov cl, byte [ebp + edx - 0x640]
mov byte [ebp + eax - 0x640], cl
movzx edx, byte [ebp - 0x681]
movzx eax, byte [ebp - 0x665]
mov cl, byte [ebp + edx - 0x640]
mov byte [ebp + eax - 0x640], cl
movzx edx, byte [ebp - 0x681]
mov al, byte [ebp - 0x749]
mov byte [ebp + edx - 0x640], al
movzx ecx, byte [ebp - 0x749]
movzx edx, byte [ebp + ecx - 0x640]
movzx eax, byte [ebp - 0x651]
add eax, edx
mov byte [ebp - 0x651], al
movzx ecx, byte [ebp - 0x6cd]
movzx edx, byte [ebp - 0x539]
movzx eax, byte [ebp + edx - 0x640]
movzx edx, byte [ebp - 0x681]
movzx edx, byte [ebp + edx - 0x640]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x640]
xor ecx, eax
movzx edx, byte [ebp - 0x665]
movzx eax, byte [ebp + edx - 0x640]
movzx edx, byte [ebp - 0x515]
movzx edx, byte [ebp + edx - 0x640]
add eax, edx
movzx edx, byte [ebp - 0x651]
movzx edx, byte [ebp + edx - 0x640]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x640]
movzx edx, byte [ebp + eax - 0x640]
xor ecx, edx
mov byte [ebp - 0x665], cl
mov al, byte [ebp - 0x6cd]
mov byte [ebp - 0x515], al
mov cl, byte [ebp - 0x665]
mov byte [ebp - 0x729], cl
cmp dword [ebp - 0x700], 0
jle 0x4c00b5
mov edx, dword [ebp - 0x700]
mov al, byte [ebp - 0x729]
mov byte [ebp + edx - 0x505], al
mov ecx, dword [ebp - 0x700]
add ecx, 1
mov dword [ebp - 0x700], ecx
mov edx, dword [ebp - 0x6fc]
add edx, 1
mov dword [ebp - 0x6fc], edx
mov eax, dword [ebp - 0x700]
shl eax, 1
mov dword [ebp - 0x6ac], eax
mov ecx, dword [ebp - 0x520]
add ecx, dword [ebp - 0x6ac]
movzx edx, byte [ecx]
mov dword [ebp - 0x738], edx
mov dword [ebp - 0x6cc], 0xe5
mov eax, dword [ebp - 0x700]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x6f4], ecx
mov edx, dword [ebp - 0x520]
add edx, dword [ebp - 0x6f4]
movzx eax, byte [edx]
mov dword [ebp - 0x758], eax
mov dword [ebp - 0x734], 0x79
mov ecx, dword [ebp - 0x738]
sub ecx, dword [ebp - 0x6cc]
mov dword [ebp - 0x754], ecx
mov edx, dword [ebp - 0x758]
sub edx, dword [ebp - 0x734]
mov dword [ebp - 0x6b0], edx
mov eax, dword [ebp - 0x754]
shl eax, 4
mov dword [ebp - 0x750], eax
mov ecx, dword [ebp - 0x6b0]
mov dword [ebp - 0x730], ecx
mov edx, dword [ebp - 0x750]
or edx, dword [ebp - 0x730]
mov dword [ebp - 0x6f8], edx
mov al, byte [ebp - 0x6f8]
mov byte [ebp - 0x6cd], al
movzx ecx, byte [ebp - 0x515]
mov dl, byte [ebp + ecx - 0x640]
mov byte [ebp - 0x749], dl
movzx eax, byte [ebp - 0x681]
movzx ecx, byte [ebp + eax - 0x640]
movzx edx, byte [ebp - 0x539]
add edx, ecx
mov byte [ebp - 0x539], dl
mov al, byte [ebp - 0x681]
add al, 1
mov byte [ebp - 0x681], al
movzx ecx, byte [ebp - 0x539]
movzx edx, byte [ebp - 0x515]
mov al, byte [ebp + ecx - 0x640]
mov byte [ebp + edx - 0x640], al
movzx ecx, byte [ebp - 0x665]
movzx edx, byte [ebp - 0x539]
mov al, byte [ebp + ecx - 0x640]
mov byte [ebp + edx - 0x640], al
movzx ecx, byte [ebp - 0x681]
movzx edx, byte [ebp - 0x665]
mov al, byte [ebp + ecx - 0x640]
mov byte [ebp + edx - 0x640], al
movzx ecx, byte [ebp - 0x681]
mov dl, byte [ebp - 0x749]
mov byte [ebp + ecx - 0x640], dl
movzx eax, byte [ebp - 0x749]
movzx ecx, byte [ebp + eax - 0x640]
movzx edx, byte [ebp - 0x651]
add edx, ecx
mov byte [ebp - 0x651], dl
movzx eax, byte [ebp - 0x6cd]
movzx ecx, byte [ebp - 0x539]
movzx edx, byte [ebp + ecx - 0x640]
movzx ecx, byte [ebp - 0x681]
movzx ecx, byte [ebp + ecx - 0x640]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x640]
xor eax, edx
movzx ecx, byte [ebp - 0x665]
movzx edx, byte [ebp + ecx - 0x640]
movzx ecx, byte [ebp - 0x515]
movzx ecx, byte [ebp + ecx - 0x640]
add edx, ecx
movzx ecx, byte [ebp - 0x651]
movzx ecx, byte [ebp + ecx - 0x640]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x640]
movzx ecx, byte [ebp + edx - 0x640]
xor eax, ecx
mov byte [ebp - 0x665], al
mov dl, byte [ebp - 0x6cd]
mov byte [ebp - 0x515], dl
mov al, byte [ebp - 0x665]
mov byte [ebp - 0x729], al
cmp dword [ebp - 0x700], 0
jle 0x4c030c
mov ecx, dword [ebp - 0x700]
mov dl, byte [ebp - 0x729]
mov byte [ebp + ecx - 0x505], dl
mov eax, dword [ebp - 0x6fc]
add eax, 2
mov dword [ebp - 0x6fc], eax
mov ecx, dword [ebp - 0x700]
add ecx, 1
mov dword [ebp - 0x75c], ecx
jmp 0x4c033b
mov edx, dword [ebp - 0x75c]
add edx, 1
mov dword [ebp - 0x75c], edx
mov eax, dword [ebp - 0x75c]
cmp eax, dword [ebp - 0x6fc]
jge 0x4c059b
mov ecx, dword [ebp - 0x700]
add ecx, 1
mov dword [ebp - 0x700], ecx
mov edx, dword [ebp - 0x700]
shl edx, 1
mov dword [ebp - 0x6ac], edx
mov eax, dword [ebp - 0x520]
add eax, dword [ebp - 0x6ac]
movzx ecx, byte [eax]
mov dword [ebp - 0x738], ecx
mov dword [ebp - 0x6cc], 0xe5
mov edx, dword [ebp - 0x700]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x6f4], eax
mov ecx, dword [ebp - 0x520]
add ecx, dword [ebp - 0x6f4]
movzx edx, byte [ecx]
mov dword [ebp - 0x758], edx
mov dword [ebp - 0x734], 0x79
mov eax, dword [ebp - 0x738]
sub eax, dword [ebp - 0x6cc]
mov dword [ebp - 0x754], eax
mov ecx, dword [ebp - 0x758]
sub ecx, dword [ebp - 0x734]
mov dword [ebp - 0x6b0], ecx
mov edx, dword [ebp - 0x754]
shl edx, 4
mov dword [ebp - 0x750], edx
mov eax, dword [ebp - 0x6b0]
mov dword [ebp - 0x730], eax
mov ecx, dword [ebp - 0x750]
or ecx, dword [ebp - 0x730]
mov dword [ebp - 0x6f8], ecx
mov dl, byte [ebp - 0x6f8]
mov byte [ebp - 0x6cd], dl
movzx eax, byte [ebp - 0x515]
mov cl, byte [ebp + eax - 0x640]
mov byte [ebp - 0x749], cl
movzx edx, byte [ebp - 0x681]
movzx eax, byte [ebp + edx - 0x640]
movzx ecx, byte [ebp - 0x539]
add ecx, eax
mov byte [ebp - 0x539], cl
mov dl, byte [ebp - 0x681]
add dl, 1
mov byte [ebp - 0x681], dl
movzx eax, byte [ebp - 0x539]
movzx ecx, byte [ebp - 0x515]
mov dl, byte [ebp + eax - 0x640]
mov byte [ebp + ecx - 0x640], dl
movzx eax, byte [ebp - 0x665]
movzx ecx, byte [ebp - 0x539]
mov dl, byte [ebp + eax - 0x640]
mov byte [ebp + ecx - 0x640], dl
movzx eax, byte [ebp - 0x681]
movzx ecx, byte [ebp - 0x665]
mov dl, byte [ebp + eax - 0x640]
mov byte [ebp + ecx - 0x640], dl
movzx eax, byte [ebp - 0x681]
mov cl, byte [ebp - 0x749]
mov byte [ebp + eax - 0x640], cl
movzx edx, byte [ebp - 0x749]
movzx eax, byte [ebp + edx - 0x640]
movzx ecx, byte [ebp - 0x651]
add ecx, eax
mov byte [ebp - 0x651], cl
movzx edx, byte [ebp - 0x6cd]
movzx eax, byte [ebp - 0x539]
movzx ecx, byte [ebp + eax - 0x640]
movzx eax, byte [ebp - 0x681]
movzx eax, byte [ebp + eax - 0x640]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x640]
xor edx, ecx
movzx eax, byte [ebp - 0x665]
movzx ecx, byte [ebp + eax - 0x640]
movzx eax, byte [ebp - 0x515]
movzx eax, byte [ebp + eax - 0x640]
add ecx, eax
movzx eax, byte [ebp - 0x651]
movzx eax, byte [ebp + eax - 0x640]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x640]
movzx eax, byte [ebp + ecx - 0x640]
xor edx, eax
mov byte [ebp - 0x665], dl
mov cl, byte [ebp - 0x6cd]
mov byte [ebp - 0x515], cl
mov dl, byte [ebp - 0x665]
mov byte [ebp - 0x729], dl
cmp dword [ebp - 0x700], 0
jle 0x4c0596
mov eax, dword [ebp - 0x700]
mov cl, byte [ebp - 0x729]
mov byte [ebp + eax - 0x505], cl
jmp 0x4c032c
mov edx, dword [ebp - 0x6fc]
add edx, 1
mov dword [ebp - 0x6fc], edx
mov eax, dword [ebp - 0x700]
add eax, 1
mov dword [ebp - 0x700], eax
mov ecx, dword [ebp - 0x6fc]
add ecx, 1
mov dword [ebp - 0x6fc], ecx
mov edx, dword [ebp - 0x700]
shl edx, 1
mov dword [ebp - 0x6ac], edx
mov eax, dword [ebp - 0x520]
add eax, dword [ebp - 0x6ac]
movzx ecx, byte [eax]
mov dword [ebp - 0x738], ecx
mov dword [ebp - 0x6cc], 0xe5
mov edx, dword [ebp - 0x700]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x6f4], eax
mov ecx, dword [ebp - 0x520]
add ecx, dword [ebp - 0x6f4]
movzx edx, byte [ecx]
mov dword [ebp - 0x758], edx
mov dword [ebp - 0x734], 0x79
mov eax, dword [ebp - 0x738]
sub eax, dword [ebp - 0x6cc]
mov dword [ebp - 0x754], eax
mov ecx, dword [ebp - 0x758]
sub ecx, dword [ebp - 0x734]
mov dword [ebp - 0x6b0], ecx
mov edx, dword [ebp - 0x754]
shl edx, 4
mov dword [ebp - 0x750], edx
mov eax, dword [ebp - 0x6b0]
mov dword [ebp - 0x730], eax
mov ecx, dword [ebp - 0x750]
or ecx, dword [ebp - 0x730]
mov dword [ebp - 0x6f8], ecx
mov dl, byte [ebp - 0x6f8]
mov byte [ebp - 0x6cd], dl
movzx eax, byte [ebp - 0x515]
mov cl, byte [ebp + eax - 0x640]
mov byte [ebp - 0x749], cl
movzx edx, byte [ebp - 0x681]
movzx eax, byte [ebp + edx - 0x640]
movzx ecx, byte [ebp - 0x539]
add ecx, eax
mov byte [ebp - 0x539], cl
mov dl, byte [ebp - 0x681]
add dl, 1
mov byte [ebp - 0x681], dl
movzx eax, byte [ebp - 0x539]
movzx ecx, byte [ebp - 0x515]
mov dl, byte [ebp + eax - 0x640]
mov byte [ebp + ecx - 0x640], dl
movzx eax, byte [ebp - 0x665]
movzx ecx, byte [ebp - 0x539]
mov dl, byte [ebp + eax - 0x640]
mov byte [ebp + ecx - 0x640], dl
movzx eax, byte [ebp - 0x681]
movzx ecx, byte [ebp - 0x665]
mov dl, byte [ebp + eax - 0x640]
mov byte [ebp + ecx - 0x640], dl
movzx eax, byte [ebp - 0x681]
mov cl, byte [ebp - 0x749]
mov byte [ebp + eax - 0x640], cl
movzx edx, byte [ebp - 0x749]
movzx eax, byte [ebp + edx - 0x640]
movzx ecx, byte [ebp - 0x651]
add ecx, eax
mov byte [ebp - 0x651], cl
movzx edx, byte [ebp - 0x6cd]
movzx eax, byte [ebp - 0x539]
movzx ecx, byte [ebp + eax - 0x640]
movzx eax, byte [ebp - 0x681]
movzx eax, byte [ebp + eax - 0x640]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x640]
xor edx, ecx
movzx eax, byte [ebp - 0x665]
movzx ecx, byte [ebp + eax - 0x640]
movzx eax, byte [ebp - 0x515]
movzx eax, byte [ebp + eax - 0x640]
add ecx, eax
movzx eax, byte [ebp - 0x651]
movzx eax, byte [ebp + eax - 0x640]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x640]
movzx eax, byte [ebp + ecx - 0x640]
xor edx, eax
mov byte [ebp - 0x665], dl
mov cl, byte [ebp - 0x6cd]
mov byte [ebp - 0x515], cl
mov dl, byte [ebp - 0x665]
mov byte [ebp - 0x729], dl
cmp dword [ebp - 0x700], 0
jle 0x4c0802
mov eax, dword [ebp - 0x700]
mov cl, byte [ebp - 0x729]
mov byte [ebp + eax - 0x505], cl
mov edx, dword [ebp - 0x6fc]
add edx, 3
mov dword [ebp - 0x6fc], edx
mov eax, dword [ebp - 0x700]
add eax, 1
mov dword [ebp - 0x760], eax
jmp 0x4c0831
mov ecx, dword [ebp - 0x760]
add ecx, 1
mov dword [ebp - 0x760], ecx
mov edx, dword [ebp - 0x760]
cmp edx, dword [ebp - 0x6fc]
jge 0x4c0a8f
mov eax, dword [ebp - 0x700]
add eax, 1
mov dword [ebp - 0x700], eax
mov ecx, dword [ebp - 0x700]
shl ecx, 1
mov dword [ebp - 0x6ac], ecx
mov edx, dword [ebp - 0x520]
add edx, dword [ebp - 0x6ac]
movzx eax, byte [edx]
mov dword [ebp - 0x738], eax
mov dword [ebp - 0x6cc], 0xe5
mov ecx, dword [ebp - 0x700]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x6f4], edx
mov eax, dword [ebp - 0x520]
add eax, dword [ebp - 0x6f4]
movzx ecx, byte [eax]
mov dword [ebp - 0x758], ecx
mov dword [ebp - 0x734], 0x79
mov edx, dword [ebp - 0x738]
sub edx, dword [ebp - 0x6cc]
mov dword [ebp - 0x754], edx
mov eax, dword [ebp - 0x758]
sub eax, dword [ebp - 0x734]
mov dword [ebp - 0x6b0], eax
mov ecx, dword [ebp - 0x754]
shl ecx, 4
mov dword [ebp - 0x750], ecx
mov edx, dword [ebp - 0x6b0]
mov dword [ebp - 0x730], edx
mov eax, dword [ebp - 0x750]
or eax, dword [ebp - 0x730]
mov dword [ebp - 0x6f8], eax
mov cl, byte [ebp - 0x6f8]
mov byte [ebp - 0x6cd], cl
movzx edx, byte [ebp - 0x515]
mov al, byte [ebp + edx - 0x640]
mov byte [ebp - 0x749], al
movzx ecx, byte [ebp - 0x681]
movzx edx, byte [ebp + ecx - 0x640]
movzx eax, byte [ebp - 0x539]
add eax, edx
mov byte [ebp - 0x539], al
mov cl, byte [ebp - 0x681]
add cl, 1
mov byte [ebp - 0x681], cl
movzx edx, byte [ebp - 0x539]
movzx eax, byte [ebp - 0x515]
mov cl, byte [ebp + edx - 0x640]
mov byte [ebp + eax - 0x640], cl
movzx edx, byte [ebp - 0x665]
movzx eax, byte [ebp - 0x539]
mov cl, byte [ebp + edx - 0x640]
mov byte [ebp + eax - 0x640], cl
movzx edx, byte [ebp - 0x681]
movzx eax, byte [ebp - 0x665]
mov cl, byte [ebp + edx - 0x640]
mov byte [ebp + eax - 0x640], cl
movzx edx, byte [ebp - 0x681]
mov al, byte [ebp - 0x749]
mov byte [ebp + edx - 0x640], al
movzx ecx, byte [ebp - 0x749]
movzx edx, byte [ebp + ecx - 0x640]
movzx eax, byte [ebp - 0x651]
add eax, edx
mov byte [ebp - 0x651], al
movzx ecx, byte [ebp - 0x6cd]
movzx edx, byte [ebp - 0x539]
movzx eax, byte [ebp + edx - 0x640]
movzx edx, byte [ebp - 0x681]
movzx edx, byte [ebp + edx - 0x640]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x640]
xor ecx, eax
movzx edx, byte [ebp - 0x665]
movzx eax, byte [ebp + edx - 0x640]
movzx edx, byte [ebp - 0x515]
movzx edx, byte [ebp + edx - 0x640]
add eax, edx
movzx edx, byte [ebp - 0x651]
movzx edx, byte [ebp + edx - 0x640]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x640]
movzx edx, byte [ebp + eax - 0x640]
xor ecx, edx
mov byte [ebp - 0x665], cl
mov al, byte [ebp - 0x6cd]
mov byte [ebp - 0x515], al
mov cl, byte [ebp - 0x665]
mov byte [ebp - 0x729], cl
cmp dword [ebp - 0x700], 0
jle 0x4c0a8a
mov edx, dword [ebp - 0x700]
mov al, byte [ebp - 0x729]
mov byte [ebp + edx - 0x505], al
jmp 0x4c0822
mov ecx, dword [ebp - 0x6fc]
add ecx, 1
mov dword [ebp - 0x6fc], ecx
mov byte [ebp - 0x4fc], 0
jmp 0x4c0adb
mov dword [ebp - 0x764], 0
jmp 0x4c0ac2
mov edx, dword [ebp - 0x764]
add edx, 1
mov dword [ebp - 0x764], edx
cmp dword [ebp - 0x764], 9
jge 0x4c0adb
mov eax, dword [ebp - 0x764]
mov byte [ebp + eax - 0x504], 0
jmp 0x4c0ab3
lea ecx, [ebp - 0x504]
push ecx
mov ecx, dword [0x9fda1c]
call fcn.0044de30
mov dword [ebp - 0x4ec], eax
push 0
lea edx, [ebp - 0x514]
push edx
mov eax, dword [ebp - 0x4f8]
push eax
mov ecx, dword [ebp - 0x4f4]
push ecx
mov edx, dword [ebp - 0x224]
push edx
call dword [ebp - 0x4ec]
test eax, eax
je 0x4c0c34
mov dword [ebp - 0x768], 0xffffffff
mov byte [ebp - 0x76a], 0
mov byte [ebp - 0x769], 0
cmp dword [ebp - 0x514], 0x100
jbe 0x4c0c0e
mov eax, dword [ebp - 0x4f4]
movzx ecx, byte [eax]
cmp ecx, 0x4d
jne 0x4c0b75
mov edx, dword [ebp - 0x4f4]
movzx eax, byte [edx + 1]
cmp eax, 0x5a
jne 0x4c0b75
mov byte [ebp - 0x769], 1
mov dword [ebp - 0x768], 0
mov ecx, dword [ebp - 0x4f4]
movzx edx, byte [ecx]
cmp edx, 0xd0
jne 0x4c0bca
mov eax, dword [ebp - 0x4f4]
movzx ecx, byte [eax + 1]
cmp ecx, 0xcf
jne 0x4c0bca
mov edx, dword [ebp - 0x4f4]
movzx eax, byte [edx + 2]
cmp eax, 0x11
jne 0x4c0bca
mov ecx, dword [ebp - 0x4f4]
movzx edx, byte [ecx + 3]
cmp edx, 0xe0
jne 0x4c0bca
mov byte [ebp - 0x769], 1
mov dword [ebp - 0x768], 1
mov dword [ebp - 0x770], 0
cmp dword [ebp - 0x768], 0
jne 0x4c0c0e
mov eax, dword [ebp - 0x514]
push eax
mov ecx, dword [ebp - 0x4f4]
push ecx
call fcn.004bba60
add esp, 8
mov dword [ebp - 0x770], eax
xor edx, edx
cmp dword [ebp - 0x770], 0x1000
sete dl
mov byte [ebp - 0x76a], dl
movzx eax, byte [ebp - 0x769]
test eax, eax
je 0x4c0c34
movzx ecx, byte [ebp - 0x76a]
test ecx, ecx
je 0x4c0c34
cmp dword [ebp - 0x768], 0
jne 0x4c0c34
mov byte [ebp - 0x209], 1
mov edx, dword [ebp - 0x4f8]
mov dword [ebp - 0x780], edx
mov eax, dword [ebp - 0x4f4]
mov dword [ebp - 0x77c], eax
cmp dword [ebp - 0x780], 0
je 0x4c0c7e
mov ecx, dword [ebp - 0x77c]
mov byte [ecx], 0
mov edx, dword [ebp - 0x77c]
add edx, 1
mov dword [ebp - 0x77c], edx
mov eax, dword [ebp - 0x780]
sub eax, 1
mov dword [ebp - 0x780], eax
jmp 0x4c0c4c
mov ecx, dword [ebp - 0x4f4]
mov dword [ebp - 0x778], ecx
mov edx, dword [ebp - 0x778]
push edx
call fcn.0095b1b1
add esp, 4
mov eax, dword [ebp - 0x224]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x4c0cb8
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x4bbbde
mov al, byte [ebp - 0x209]
pop edi
pop esi
mov esp, ebp
pop ebp
ret