Function at 0x4f95c0
Capabilities:
Encrypt data using speck

Disassembly:
test byte [0xfffff458], dl
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52cf29
mov eax, dword fs:[0]
push eax
sub esp, 0xb34
mov eax, dword [0x5cc280]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0xb40], ecx
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xa0], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x3d8], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x3c0], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x3c0], xmm0
jmp 0x4f9643
movsd xmm0, qword [ebp - 0x3c0]
addsd xmm0, qword [0x52f8c8]
movsd qword [ebp - 0x3c0], xmm0
movsd xmm0, qword [0x530d48]
comisd xmm0, xmmword [ebp - 0x3c0]
jbe 0x4f96f4
movsd xmm0, qword [0x530cb0]
mulsd xmm0, qword [ebp - 0x3c0]
mulsd xmm0, qword [ebp - 0x3c0]
movsd xmm1, qword [ebp - 0x3c0]
mulsd xmm1, qword [ebp - 0x3c0]
subsd xmm0, xmm1
movsd xmm1, qword [0x530a58]
mulsd xmm1, qword [ebp - 0x3c0]
mulsd xmm1, qword [ebp - 0x3c0]
addsd xmm1, qword [0x530ad0]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x3d8]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x3d8]
comisd xmm0, xmmword [0x530be0]
jbe 0x4f96ef
movsd xmm0, qword [0x5309b0]
mulsd xmm0, qword [ebp - 0x3c0]
movsd xmm1, qword [ebp - 0x3d8]
subsd xmm1, xmm0
movsd qword [ebp - 0x3d8], xmm1
jmp 0x4f962b
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x3d8]
jbe 0x4f973a
pushal
jae 0x4f972d
cmp byte [bx], dh
cmp ebx, dword [bp + 0x68]
pop esi
pop eax
inc esi
cmp dword [ecx], edi
and al, 0x78
sub eax, 0x5a484266
insd dword es:[edi], dx
xor byte [ebx], dh
cmp esp, dword [esi - 0x4f7f5b78]
test dword [edi - 0x5472527d], esp
and byte [edx + eax*4 + 0x7fb182ab], 0xad
lodsd eax, dword [esi]
xor byte [ecx - 0x5d7c5677], 0x82
jmp 0x4fbd11
mov dword [ebp - 0xbc], 0x4f971b
mov dword [ebp - 0xa0], 0x4f9701
mov eax, dword [ebp - 0xbc]
mov dword [ebp - 0x1cc], eax
mov ecx, dword [ebp - 0xa0]
mov dword [ebp - 0x934], ecx
mov byte [ebp - 0x241], 0x1e
mov dword [ebp - 0x1d8], 0
jmp 0x4f9788
mov edx, dword [ebp - 0x1d8]
add edx, 1
mov dword [ebp - 0x1d8], edx
cmp dword [ebp - 0x1d8], 0x100
jae 0x4f97a9
mov eax, dword [ebp - 0x1d8]
mov cl, byte [ebp - 0x1d8]
mov byte [ebp + eax - 0x760], cl
jmp 0x4f9779
mov dword [ebp - 0x32c], 0
mov byte [ebp - 0xea], 0
mov dword [ebp - 0x1d8], 0xff
jmp 0x4f97d5
mov edx, dword [ebp - 0x1d8]
sub edx, 1
mov dword [ebp - 0x1d8], edx
cmp dword [ebp - 0x1d8], 0
jbe 0x4f9a45
mov dword [ebp - 0x498], 0
mov dword [ebp - 0x464], 1
mov eax, dword [ebp - 0x464]
cmp eax, dword [ebp - 0x1d8]
jae 0x4f9816
mov ecx, dword [ebp - 0x464]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x464], edx
jmp 0x4f97f6
mov eax, dword [ebp - 0x32c]
mov dword [ebp - 0x628], eax
cmp dword [ebp - 0x628], 3
ja case.default.0x4f9835
mov ecx, dword [ebp - 0x628]
jmp dword [ecx*4 + 0x503684]
movzx edx, byte [ebp - 0xea]
movzx ebx, byte [ebp + edx - 0x760]
movsd xmm0, qword [ebp - 0x3d8]
call fcn.0051dea0
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xea], bl
jmp 0x4f991e
movzx eax, byte [ebp - 0xea]
movzx ebx, byte [ebp + eax - 0x760]
movsd xmm0, qword [ebp - 0x3d8]
call fcn.0051dea0
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xea], bl
jmp 0x4f991e
movzx ecx, byte [ebp - 0xea]
movzx ebx, byte [ebp + ecx - 0x760]
movsd xmm0, qword [ebp - 0x3d8]
call fcn.0051dea0
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xea], bl
jmp 0x4f991e
movzx edx, byte [ebp - 0xea]
movzx ebx, byte [ebp + edx - 0x760]
movsd xmm0, qword [ebp - 0x3d8]
call fcn.0051dea0
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xea], bl
jmp 0x4f991e
movzx eax, byte [ebp - 0xea]
movzx ecx, byte [ebp + eax - 0x760]
mov edx, dword [ebp - 0x934]
add edx, dword [ebp - 0x32c]
movzx eax, byte [edx - 4]
add ecx, eax
mov byte [ebp - 0xea], cl
mov ecx, dword [ebp - 0x32c]
add ecx, 1
mov dword [ebp - 0x32c], ecx
movzx edx, byte [ebp - 0x241]
cmp dword [ebp - 0x32c], edx
jb 0x4f995c
mov dword [ebp - 0x32c], 0
movzx eax, byte [ebp - 0x241]
movzx ecx, byte [ebp - 0xea]
add ecx, eax
mov byte [ebp - 0xea], cl
movzx edx, byte [ebp - 0xea]
and edx, dword [ebp - 0x464]
mov dword [ebp - 0x2a8], edx
mov eax, dword [ebp - 0x498]
add eax, 1
mov dword [ebp - 0x498], eax
cmp dword [ebp - 0x498], 0xb
jbe 0x4f999b
mov eax, dword [ebp - 0x2a8]
xor edx, edx
div dword [ebp - 0x1d8]
mov dword [ebp - 0x2a8], edx
mov ecx, dword [ebp - 0x2a8]
cmp ecx, dword [ebp - 0x1d8]
ja 0x4f9816
mov edx, dword [ebp - 0x1d8]
cmp edx, dword [ebp - 0x2a8]
je 0x4f9a40
mov eax, dword [ebp - 0x2a8]
movzx ecx, byte [ebp + eax - 0x760]
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [ebp + edx - 0x760]
xor eax, ecx
mov ecx, dword [ebp - 0x1d8]
mov byte [ebp + ecx - 0x760], al
mov edx, dword [ebp - 0x1d8]
movzx eax, byte [ebp + edx - 0x760]
mov ecx, dword [ebp - 0x2a8]
movzx edx, byte [ebp + ecx - 0x760]
xor edx, eax
mov eax, dword [ebp - 0x2a8]
mov byte [ebp + eax - 0x760], dl
mov ecx, dword [ebp - 0x2a8]
movzx edx, byte [ebp + ecx - 0x760]
mov eax, dword [ebp - 0x1d8]
movzx ecx, byte [ebp + eax - 0x760]
xor ecx, edx
mov edx, dword [ebp - 0x1d8]
mov byte [ebp + edx - 0x760], cl
jmp 0x4f97c6
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x760]
mov byte [ebp - 0xc2], cl
mov edx, 1
imul eax, edx, 3
mov cl, byte [ebp + eax - 0x760]
mov byte [ebp - 0xc5], cl
mov edx, 1
imul eax, edx, 5
mov cl, byte [ebp + eax - 0x760]
mov byte [ebp - 0xd2], cl
mov edx, 1
imul eax, edx, 7
mov cl, byte [ebp + eax - 0x760]
mov byte [ebp - 0xc6], cl
movzx edx, byte [ebp - 0xea]
mov al, byte [ebp + edx - 0x760]
mov byte [ebp - 0xc9], al
mov dword [ebp - 0x624], 0x1a
cmp dword [ebp - 0x624], 2
jle 0x4fbcbf
mov ecx, dword [ebp - 0x624]
and ecx, 1
jne 0x4fbcbf
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0x140], 0
mov edx, dword [ebp - 0x140]
add edx, 1
mov dword [ebp - 0x140], edx
mov dword [ebp - 0x1d0], 0
mov eax, dword [ebp - 0xf4]
shl eax, 1
mov dword [ebp - 0x1d0], eax
mov dword [ebp - 0x194], 0
mov ecx, dword [ebp - 0x1cc]
add ecx, dword [ebp - 0x1d0]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x194]
mov dword [ebp - 0x194], edx
mov dword [ebp - 0x198], 0
mov eax, dword [ebp - 0x198]
add eax, 0xa2
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x1c8], 0
mov ecx, dword [ebp - 0xf4]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x1c8], edx
mov dword [ebp - 0x19c], 0
mov eax, dword [ebp - 0x1cc]
add eax, dword [ebp - 0x1c8]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x19c]
mov dword [ebp - 0x19c], ecx
mov dword [ebp - 0x1a0], 0
mov edx, dword [ebp - 0x1a0]
add edx, 0x7e
mov dword [ebp - 0x1a0], edx
mov dword [ebp - 0x1a4], 0
mov eax, dword [ebp - 0x194]
sub eax, dword [ebp - 0x198]
add eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a8], 0
mov ecx, dword [ebp - 0x19c]
sub ecx, dword [ebp - 0x1a0]
add ecx, dword [ebp - 0x1a8]
mov dword [ebp - 0x1a8], ecx
mov dword [ebp - 0x1c4], 0
mov edx, dword [ebp - 0x1a4]
shl edx, 4
mov dword [ebp - 0x1c4], edx
mov dword [ebp - 0x1c0], 0
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1c0], eax
mov dword [ebp - 0x1b8], 0
mov ecx, dword [ebp - 0x1c4]
or ecx, dword [ebp - 0x1c0]
mov dword [ebp - 0x1b8], ecx
mov byte [ebp - 0xd3], 0
mov dl, byte [ebp - 0x1b8]
mov byte [ebp - 0xd3], dl
mov byte [ebp - 0xd1], 0
movzx eax, byte [ebp - 0xc9]
mov cl, byte [ebp + eax - 0x760]
mov byte [ebp - 0xd1], cl
movzx edx, byte [ebp - 0xc2]
movzx eax, byte [ebp + edx - 0x760]
mov dword [ebp - 0x930], eax
mov cl, byte [ebp - 0xc2]
add cl, 1
mov byte [ebp - 0xc2], cl
movzx edx, byte [ebp - 0xc5]
add edx, dword [ebp - 0x930]
mov byte [ebp - 0xc5], dl
movzx eax, byte [ebp - 0xc5]
movzx ecx, byte [ebp - 0xc9]
mov dl, byte [ebp + eax - 0x760]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xc6]
movzx ecx, byte [ebp - 0xc5]
mov dl, byte [ebp + eax - 0x760]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xc2]
movzx ecx, byte [ebp - 0xc6]
mov dl, byte [ebp + eax - 0x760]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xc2]
mov cl, byte [ebp - 0xd1]
mov byte [ebp + eax - 0x760], cl
movzx edx, byte [ebp - 0xd1]
movzx eax, byte [ebp + edx - 0x760]
movzx ecx, byte [ebp - 0xd2]
add ecx, eax
mov byte [ebp - 0xd2], cl
movzx edx, byte [ebp - 0xd3]
movzx eax, byte [ebp - 0xc5]
movzx ecx, byte [ebp + eax - 0x760]
movzx eax, byte [ebp - 0xc2]
movzx eax, byte [ebp + eax - 0x760]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x760]
xor edx, ecx
movzx eax, byte [ebp - 0xc6]
movzx ecx, byte [ebp + eax - 0x760]
movzx eax, byte [ebp - 0xc9]
movzx eax, byte [ebp + eax - 0x760]
add ecx, eax
movzx eax, byte [ebp - 0xd2]
movzx eax, byte [ebp + eax - 0x760]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x760]
movzx eax, byte [ebp + ecx - 0x760]
xor edx, eax
mov byte [ebp - 0xc6], dl
mov cl, byte [ebp - 0xd3]
mov byte [ebp - 0xc9], cl
mov dl, byte [ebp - 0xc6]
mov byte [ebp - 0xdc], dl
cmp dword [ebp - 0xf4], 0
jle 0x4f9dda
movsx ax, byte [ebp - 0xdc]
mov ecx, dword [ebp - 0xf4]
mov word [ebp + ecx*2 - 0x56], ax
mov edx, dword [ebp - 0xf4]
add edx, 1
mov dword [ebp - 0xf4], edx
mov eax, dword [ebp - 0x140]
add eax, 1
mov dword [ebp - 0x140], eax
mov ecx, dword [ebp - 0xf4]
shl ecx, 1
mov dword [ebp - 0x1d0], ecx
mov edx, dword [ebp - 0x1cc]
add edx, dword [ebp - 0x1d0]
movzx eax, byte [edx]
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x198], 0xa2
mov ecx, dword [ebp - 0xf4]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x1cc]
add eax, dword [ebp - 0x1c8]
movzx ecx, byte [eax]
mov dword [ebp - 0x19c], ecx
mov dword [ebp - 0x1a0], 0x7e
mov edx, dword [ebp - 0x194]
sub edx, dword [ebp - 0x198]
mov dword [ebp - 0x1a4], edx
mov eax, dword [ebp - 0x19c]
sub eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a8], eax
mov ecx, dword [ebp - 0x1a4]
shl ecx, 4
mov dword [ebp - 0x1c4], ecx
mov edx, dword [ebp - 0x1a8]
mov dword [ebp - 0x1c0], edx
mov eax, dword [ebp - 0x1c4]
or eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x1b8], eax
mov cl, byte [ebp - 0x1b8]
mov byte [ebp - 0xd3], cl
movzx edx, byte [ebp - 0xc9]
mov al, byte [ebp + edx - 0x760]
mov byte [ebp - 0xd1], al
movzx ecx, byte [ebp - 0xc2]
movzx edx, byte [ebp + ecx - 0x760]
mov dword [ebp - 0x92c], edx
mov al, byte [ebp - 0xc2]
add al, 1
mov byte [ebp - 0xc2], al
movzx ecx, byte [ebp - 0xc5]
add ecx, dword [ebp - 0x92c]
mov byte [ebp - 0xc5], cl
movzx edx, byte [ebp - 0xc5]
movzx eax, byte [ebp - 0xc9]
mov cl, byte [ebp + edx - 0x760]
mov byte [ebp + eax - 0x760], cl
movzx edx, byte [ebp - 0xc6]
movzx eax, byte [ebp - 0xc5]
mov cl, byte [ebp + edx - 0x760]
mov byte [ebp + eax - 0x760], cl
movzx edx, byte [ebp - 0xc2]
movzx eax, byte [ebp - 0xc6]
mov cl, byte [ebp + edx - 0x760]
mov byte [ebp + eax - 0x760], cl
movzx edx, byte [ebp - 0xc2]
mov al, byte [ebp - 0xd1]
mov byte [ebp + edx - 0x760], al
movzx ecx, byte [ebp - 0xd1]
movzx edx, byte [ebp + ecx - 0x760]
movzx eax, byte [ebp - 0xd2]
add eax, edx
mov byte [ebp - 0xd2], al
movzx ecx, byte [ebp - 0xd3]
movzx edx, byte [ebp - 0xc5]
movzx eax, byte [ebp + edx - 0x760]
movzx edx, byte [ebp - 0xc2]
movzx edx, byte [ebp + edx - 0x760]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x760]
xor ecx, eax
movzx edx, byte [ebp - 0xc6]
movzx eax, byte [ebp + edx - 0x760]
movzx edx, byte [ebp - 0xc9]
movzx edx, byte [ebp + edx - 0x760]
add eax, edx
movzx edx, byte [ebp - 0xd2]
movzx edx, byte [ebp + edx - 0x760]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x760]
movzx edx, byte [ebp + eax - 0x760]
xor ecx, edx
mov byte [ebp - 0xc6], cl
mov al, byte [ebp - 0xd3]
mov byte [ebp - 0xc9], al
mov cl, byte [ebp - 0xc6]
mov byte [ebp - 0xdc], cl
cmp dword [ebp - 0xf4], 0
jle 0x4fa039
movsx dx, byte [ebp - 0xdc]
mov eax, dword [ebp - 0xf4]
mov word [ebp + eax*2 - 0x56], dx
mov ecx, dword [ebp - 0x140]
add ecx, 3
mov dword [ebp - 0x140], ecx
mov edx, dword [ebp - 0xf4]
add edx, 1
mov dword [ebp - 0x49c], edx
jmp 0x4fa068
mov eax, dword [ebp - 0x49c]
add eax, 1
mov dword [ebp - 0x49c], eax
mov ecx, dword [ebp - 0x49c]
cmp ecx, dword [ebp - 0x140]
jge 0x4fa3ed
mov edx, dword [ebp - 0xf4]
add edx, 1
mov dword [ebp - 0xf4], edx
mov eax, dword [ebp - 0xf4]
shl eax, 1
mov dword [ebp - 0x1d0], eax
mov ecx, dword [ebp - 0x1cc]
add ecx, dword [ebp - 0x1d0]
movzx edx, byte [ecx]
mov dword [ebp - 0x194], edx
mov dword [ebp - 0x198], 0xa2
mov eax, dword [ebp - 0xf4]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x1c8], ecx
mov edx, dword [ebp - 0x1cc]
add edx, dword [ebp - 0x1c8]
movzx eax, byte [edx]
mov dword [ebp - 0x19c], eax
mov dword [ebp - 0x1a0], 0x7e
mov ecx, dword [ebp - 0x194]
sub ecx, dword [ebp - 0x198]
mov dword [ebp - 0x1a4], ecx
mov edx, dword [ebp - 0x19c]
sub edx, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a8], edx
mov eax, dword [ebp - 0x1a4]
shl eax, 4
mov dword [ebp - 0x1c4], eax
mov ecx, dword [ebp - 0x1a8]
mov dword [ebp - 0x1c0], ecx
mov edx, dword [ebp - 0x1c4]
or edx, dword [ebp - 0x1c0]
mov dword [ebp - 0x1b8], edx
mov al, byte [ebp - 0x1b8]
mov byte [ebp - 0xd3], al
movzx ecx, byte [ebp - 0xc9]
mov dl, byte [ebp + ecx - 0x760]
mov byte [ebp - 0xd1], dl
movzx eax, byte [ebp - 0xc2]
movzx ecx, byte [ebp + eax - 0x760]
mov dword [ebp - 0x928], ecx
mov dl, byte [ebp - 0xc2]
add dl, 1
mov byte [ebp - 0xc2], dl
movzx eax, byte [ebp - 0xc5]
add eax, dword [ebp - 0x928]
mov byte [ebp - 0xc5], al
movzx ecx, byte [ebp - 0xc5]
movzx edx, byte [ebp - 0xc9]
mov al, byte [ebp + ecx - 0x760]
mov byte [ebp + edx - 0x760], al
movzx ecx, byte [ebp - 0xc6]
movzx edx, byte [ebp - 0xc5]
mov al, byte [ebp + ecx - 0x760]
mov byte [ebp + edx - 0x760], al
movzx ecx, byte [ebp - 0xc2]
movzx edx, byte [ebp - 0xc6]
mov al, byte [ebp + ecx - 0x760]
mov byte [ebp + edx - 0x760], al
movzx ecx, byte [ebp - 0xc2]
mov dl, byte [ebp - 0xd1]
mov byte [ebp + ecx - 0x760], dl
movss xmm0, dword [0x5315d4]
movss dword [ebp - 0x24c], xmm0
movss xmm0, dword [0x53152c]
movss dword [ebp - 0x294], xmm0
movss xmm0, dword [0x53144c]
movss dword [ebp - 0x298], xmm0
movss xmm0, dword [ebp - 0x294]
subss xmm0, dword [ebp - 0x298]
movss dword [ebp - 0x294], xmm0
movss xmm0, dword [ebp - 0x24c]
addss xmm0, dword [ebp - 0x298]
movss dword [ebp - 0x24c], xmm0
movss xmm0, dword [ebp - 0x294]
addss xmm0, dword [ebp - 0x298]
movss dword [ebp - 0x294], xmm0
movss xmm0, dword [ebp - 0x24c]
comiss xmm0, dword [ebp - 0x298]
jbe 0x4fa2e6
movss xmm0, dword [ebp - 0x298]
mulss xmm0, dword [ebp - 0x24c]
movss dword [ebp - 0x298], xmm0
movss xmm0, dword [ebp - 0x24c]
subss xmm0, dword [ebp - 0x294]
movss dword [ebp - 0x24c], xmm0
movss xmm0, dword [ebp - 0x24c]
subss xmm0, dword [ebp - 0x294]
movss dword [ebp - 0x24c], xmm0
movzx eax, byte [ebp - 0xd1]
movzx ecx, byte [ebp + eax - 0x760]
movzx edx, byte [ebp - 0xd2]
add edx, ecx
mov byte [ebp - 0xd2], dl
jmp 0x4fa32e
movss xmm0, dword [ebp - 0x294]
divss xmm0, dword [ebp - 0x24c]
movss dword [ebp - 0x294], xmm0
movss xmm0, dword [ebp - 0x24c]
subss xmm0, dword [ebp - 0x298]
movss dword [ebp - 0x24c], xmm0
movss xmm0, dword [ebp - 0x298]
mulss xmm0, dword [ebp - 0x294]
movss dword [ebp - 0x298], xmm0
movzx eax, byte [ebp - 0xd3]
movzx ecx, byte [ebp - 0xc5]
movzx edx, byte [ebp + ecx - 0x760]
movzx ecx, byte [ebp - 0xc2]
movzx ecx, byte [ebp + ecx - 0x760]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x760]
xor eax, edx
movzx ecx, byte [ebp - 0xc6]
movzx edx, byte [ebp + ecx - 0x760]
movzx ecx, byte [ebp - 0xc9]
movzx ecx, byte [ebp + ecx - 0x760]
add edx, ecx
movzx ecx, byte [ebp - 0xd2]
movzx ecx, byte [ebp + ecx - 0x760]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x760]
movzx ecx, byte [ebp + edx - 0x760]
xor eax, ecx
mov byte [ebp - 0xc6], al
mov dl, byte [ebp - 0xd3]
mov byte [ebp - 0xc9], dl
mov al, byte [ebp - 0xc6]
mov byte [ebp - 0xdc], al
cmp dword [ebp - 0xf4], 0
jle 0x4fa3e8
movsx cx, byte [ebp - 0xdc]
mov edx, dword [ebp - 0xf4]
mov word [ebp + edx*2 - 0x56], cx
jmp 0x4fa059
mov eax, dword [ebp - 0x140]
add eax, 1
mov dword [ebp - 0x140], eax
mov ecx, dword [ebp - 0xf4]
add ecx, 1
mov dword [ebp - 0xf4], ecx
mov edx, dword [ebp - 0x140]
add edx, 1
mov dword [ebp - 0x140], edx
mov eax, dword [ebp - 0xf4]
shl eax, 1
mov dword [ebp - 0x1d0], eax
mov ecx, dword [ebp - 0x1cc]
add ecx, dword [ebp - 0x1d0]
movzx edx, byte [ecx]
mov dword [ebp - 0x194], edx
mov dword [ebp - 0x198], 0xa2
mov eax, dword [ebp - 0xf4]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x1c8], ecx
mov edx, dword [ebp - 0x1cc]
add edx, dword [ebp - 0x1c8]
movzx eax, byte [edx]
mov dword [ebp - 0x19c], eax
mov dword [ebp - 0x1a0], 0x7e
mov ecx, dword [ebp - 0x194]
sub ecx, dword [ebp - 0x198]
mov dword [ebp - 0x1a4], ecx
mov edx, dword [ebp - 0x19c]
sub edx, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a8], edx
mov eax, dword [ebp - 0x1a4]
shl eax, 4
mov dword [ebp - 0x1c4], eax
mov ecx, dword [ebp - 0x1a8]
mov dword [ebp - 0x1c0], ecx
mov edx, dword [ebp - 0x1c4]
or edx, dword [ebp - 0x1c0]
mov dword [ebp - 0x1b8], edx
mov al, byte [ebp - 0x1b8]
mov byte [ebp - 0xd3], al
movzx ecx, byte [ebp - 0xc9]
mov dl, byte [ebp + ecx - 0x760]
mov byte [ebp - 0xd1], dl
movzx eax, byte [ebp - 0xc2]
movzx ecx, byte [ebp + eax - 0x760]
mov dword [ebp - 0x924], ecx
mov dl, byte [ebp - 0xc2]
add dl, 1
mov byte [ebp - 0xc2], dl
movzx eax, byte [ebp - 0xc5]
add eax, dword [ebp - 0x924]
mov byte [ebp - 0xc5], al
movzx ecx, byte [ebp - 0xc5]
movzx edx, byte [ebp - 0xc9]
mov al, byte [ebp + ecx - 0x760]
mov byte [ebp + edx - 0x760], al
movzx ecx, byte [ebp - 0xc6]
movzx edx, byte [ebp - 0xc5]
mov al, byte [ebp + ecx - 0x760]
mov byte [ebp + edx - 0x760], al
movzx ecx, byte [ebp - 0xc2]
movzx edx, byte [ebp - 0xc6]
mov al, byte [ebp + ecx - 0x760]
mov byte [ebp + edx - 0x760], al
movzx ecx, byte [ebp - 0xc2]
mov dl, byte [ebp - 0xd1]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xd1]
movzx ecx, byte [ebp + eax - 0x760]
movzx edx, byte [ebp - 0xd2]
add edx, ecx
mov byte [ebp - 0xd2], dl
movzx eax, byte [ebp - 0xd3]
movzx ecx, byte [ebp - 0xc5]
movzx edx, byte [ebp + ecx - 0x760]
movzx ecx, byte [ebp - 0xc2]
movzx ecx, byte [ebp + ecx - 0x760]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x760]
xor eax, edx
movzx ecx, byte [ebp - 0xc6]
movzx edx, byte [ebp + ecx - 0x760]
movzx ecx, byte [ebp - 0xc9]
movzx ecx, byte [ebp + ecx - 0x760]
add edx, ecx
movzx ecx, byte [ebp - 0xd2]
movzx ecx, byte [ebp + ecx - 0x760]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x760]
movzx ecx, byte [ebp + edx - 0x760]
xor eax, ecx
mov byte [ebp - 0xc6], al
mov dl, byte [ebp - 0xd3]
mov byte [ebp - 0xc9], dl
mov al, byte [ebp - 0xc6]
mov byte [ebp - 0xdc], al
cmp dword [ebp - 0xf4], 0
jle 0x4fa65e
movsx cx, byte [ebp - 0xdc]
mov edx, dword [ebp - 0xf4]
mov word [ebp + edx*2 - 0x56], cx
mov eax, dword [ebp - 0x140]
add eax, 3
mov dword [ebp - 0x140], eax
mov ecx, dword [ebp - 0xf4]
add ecx, 1
mov dword [ebp - 0x4a0], ecx
jmp 0x4fa68d
mov edx, dword [ebp - 0x4a0]
add edx, 1
mov dword [ebp - 0x4a0], edx
mov eax, dword [ebp - 0x4a0]
cmp eax, dword [ebp - 0x140]
jge 0x4fa8f7
mov ecx, dword [ebp - 0xf4]
add ecx, 1
mov dword [ebp - 0xf4], ecx
mov edx, dword [ebp - 0xf4]
shl edx, 1
mov dword [ebp - 0x1d0], edx
mov eax, dword [ebp - 0x1cc]
add eax, dword [ebp - 0x1d0]
movzx ecx, byte [eax]
mov dword [ebp - 0x194], ecx
mov dword [ebp - 0x198], 0xa2
mov edx, dword [ebp - 0xf4]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x1c8], eax
mov ecx, dword [ebp - 0x1cc]
add ecx, dword [ebp - 0x1c8]
movzx edx, byte [ecx]
mov dword [ebp - 0x19c], edx
mov dword [ebp - 0x1a0], 0x7e
mov eax, dword [ebp - 0x194]
sub eax, dword [ebp - 0x198]
mov dword [ebp - 0x1a4], eax
mov ecx, dword [ebp - 0x19c]
sub ecx, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a8], ecx
mov edx, dword [ebp - 0x1a4]
shl edx, 4
mov dword [ebp - 0x1c4], edx
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1c0], eax
mov ecx, dword [ebp - 0x1c4]
or ecx, dword [ebp - 0x1c0]
mov dword [ebp - 0x1b8], ecx
mov dl, byte [ebp - 0x1b8]
mov byte [ebp - 0xd3], dl
movzx eax, byte [ebp - 0xc9]
mov cl, byte [ebp + eax - 0x760]
mov byte [ebp - 0xd1], cl
movzx edx, byte [ebp - 0xc2]
movzx eax, byte [ebp + edx - 0x760]
mov dword [ebp - 0x920], eax
mov cl, byte [ebp - 0xc2]
add cl, 1
mov byte [ebp - 0xc2], cl
movzx edx, byte [ebp - 0xc5]
add edx, dword [ebp - 0x920]
mov byte [ebp - 0xc5], dl
movzx eax, byte [ebp - 0xc5]
movzx ecx, byte [ebp - 0xc9]
mov dl, byte [ebp + eax - 0x760]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xc6]
movzx ecx, byte [ebp - 0xc5]
mov dl, byte [ebp + eax - 0x760]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xc2]
movzx ecx, byte [ebp - 0xc6]
mov dl, byte [ebp + eax - 0x760]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xc2]
mov cl, byte [ebp - 0xd1]
mov byte [ebp + eax - 0x760], cl
movzx edx, byte [ebp - 0xd1]
movzx eax, byte [ebp + edx - 0x760]
movzx ecx, byte [ebp - 0xd2]
add ecx, eax
mov byte [ebp - 0xd2], cl
movzx edx, byte [ebp - 0xd3]
movzx eax, byte [ebp - 0xc5]
movzx ecx, byte [ebp + eax - 0x760]
movzx eax, byte [ebp - 0xc2]
movzx eax, byte [ebp + eax - 0x760]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x760]
xor edx, ecx
movzx eax, byte [ebp - 0xc6]
movzx ecx, byte [ebp + eax - 0x760]
movzx eax, byte [ebp - 0xc9]
movzx eax, byte [ebp + eax - 0x760]
add ecx, eax
movzx eax, byte [ebp - 0xd2]
movzx eax, byte [ebp + eax - 0x760]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x760]
movzx eax, byte [ebp + ecx - 0x760]
xor edx, eax
mov byte [ebp - 0xc6], dl
mov cl, byte [ebp - 0xd3]
mov byte [ebp - 0xc9], cl
mov dl, byte [ebp - 0xc6]
mov byte [ebp - 0xdc], dl
cmp dword [ebp - 0xf4], 0
jle 0x4fa8f2
movsx ax, byte [ebp - 0xdc]
mov ecx, dword [ebp - 0xf4]
mov word [ebp + ecx*2 - 0x56], ax
jmp 0x4fa67e
mov edx, dword [ebp - 0x140]
add edx, 1
mov dword [ebp - 0x140], edx
mov eax, dword [ebp - 0xf4]
add eax, 1
mov dword [ebp - 0xf4], eax
mov ecx, dword [ebp - 0x140]
add ecx, 1
mov dword [ebp - 0x140], ecx
mov edx, dword [ebp - 0xf4]
shl edx, 1
mov dword [ebp - 0x1d0], edx
mov eax, dword [ebp - 0x1cc]
add eax, dword [ebp - 0x1d0]
movzx ecx, byte [eax]
mov dword [ebp - 0x194], ecx
mov dword [ebp - 0x198], 0xa2
mov edx, dword [ebp - 0xf4]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x1c8], eax
mov ecx, dword [ebp - 0x1cc]
add ecx, dword [ebp - 0x1c8]
movzx edx, byte [ecx]
mov dword [ebp - 0x19c], edx
mov dword [ebp - 0x1a0], 0x7e
mov eax, dword [ebp - 0x194]
sub eax, dword [ebp - 0x198]
mov dword [ebp - 0x1a4], eax
mov ecx, dword [ebp - 0x19c]
sub ecx, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a8], ecx
mov edx, dword [ebp - 0x1a4]
shl edx, 4
mov dword [ebp - 0x1c4], edx
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1c0], eax
mov ecx, dword [ebp - 0x1c4]
or ecx, dword [ebp - 0x1c0]
mov dword [ebp - 0x1b8], ecx
mov dl, byte [ebp - 0x1b8]
mov byte [ebp - 0xd3], dl
movzx eax, byte [ebp - 0xc9]
mov cl, byte [ebp + eax - 0x760]
mov byte [ebp - 0xd1], cl
movzx edx, byte [ebp - 0xc2]
movzx eax, byte [ebp + edx - 0x760]
mov dword [ebp - 0x91c], eax
mov cl, byte [ebp - 0xc2]
add cl, 1
mov byte [ebp - 0xc2], cl
movzx edx, byte [ebp - 0xc5]
add edx, dword [ebp - 0x91c]
mov byte [ebp - 0xc5], dl
movzx eax, byte [ebp - 0xc5]
movzx ecx, byte [ebp - 0xc9]
mov dl, byte [ebp + eax - 0x760]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xc6]
movzx ecx, byte [ebp - 0xc5]
mov dl, byte [ebp + eax - 0x760]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xc2]
movzx ecx, byte [ebp - 0xc6]
mov dl, byte [ebp + eax - 0x760]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xc2]
mov cl, byte [ebp - 0xd1]
mov byte [ebp + eax - 0x760], cl
movzx edx, byte [ebp - 0xd1]
movzx eax, byte [ebp + edx - 0x760]
movzx ecx, byte [ebp - 0xd2]
add ecx, eax
mov byte [ebp - 0xd2], cl
movzx edx, byte [ebp - 0xd3]
movzx eax, byte [ebp - 0xc5]
movzx ecx, byte [ebp + eax - 0x760]
movzx eax, byte [ebp - 0xc2]
movzx eax, byte [ebp + eax - 0x760]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x760]
xor edx, ecx
movzx eax, byte [ebp - 0xc6]
movzx ecx, byte [ebp + eax - 0x760]
movzx eax, byte [ebp - 0xc9]
movzx eax, byte [ebp + eax - 0x760]
add ecx, eax
movzx eax, byte [ebp - 0xd2]
movzx eax, byte [ebp + eax - 0x760]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x760]
movzx eax, byte [ebp + ecx - 0x760]
xor edx, eax
mov byte [ebp - 0xc6], dl
movss xmm0, dword [0x5315dc]
movss dword [ebp - 0x138], xmm0
movss xmm0, dword [0x531584]
movss dword [ebp - 0x218], xmm0
movss xmm0, dword [0x531510]
movss dword [ebp - 0x29c], xmm0
movss xmm0, dword [0x53147c]
movss dword [ebp - 0x120], xmm0
movss xmm0, dword [0x5313e8]
movss dword [ebp - 0x1d4], xmm0
movss xmm0, dword [ebp - 0x120]
subss xmm0, dword [ebp - 0x1d4]
movss dword [ebp - 0x120], xmm0
movss xmm0, dword [ebp - 0x138]
addss xmm0, dword [ebp - 0x1d4]
movss dword [ebp - 0x138], xmm0
movss xmm0, dword [ebp - 0x218]
addss xmm0, dword [ebp - 0x1d4]
movss dword [ebp - 0x218], xmm0
movss xmm0, dword [ebp - 0x138]
subss xmm0, dword [ebp - 0x1d4]
movss dword [ebp - 0x138], xmm0
movss xmm0, dword [ebp - 0x138]
subss xmm0, dword [ebp - 0x1d4]
movss dword [ebp - 0x138], xmm0
movss xmm0, dword [ebp - 0x120]
comiss xmm0, dword [ebp - 0x218]
jbe 0x4fae09
movss xmm0, dword [ebp - 0x120]
subss xmm0, dword [ebp - 0x138]
movss dword [ebp - 0x120], xmm0
movss xmm0, dword [ebp - 0x1d4]
mulss xmm0, dword [ebp - 0x218]
movss dword [ebp - 0x1d4], xmm0
movss xmm0, dword [ebp - 0x218]
divss xmm0, dword [ebp - 0x120]
movss dword [ebp - 0x218], xmm0
movss xmm0, dword [ebp - 0x218]
subss xmm0, dword [ebp - 0x120]
movss dword [ebp - 0x218], xmm0
movss xmm0, dword [ebp - 0x1d4]
mulss xmm0, dword [ebp - 0x218]
movss dword [ebp - 0x1d4], xmm0
movss xmm0, dword [ebp - 0x120]
addss xmm0, dword [ebp - 0x138]
movss dword [ebp - 0x120], xmm0
movss xmm0, dword [ebp - 0x1d4]
addss xmm0, dword [ebp - 0x218]
movss dword [ebp - 0x1d4], xmm0
movss xmm0, dword [ebp - 0x218]
subss xmm0, dword [ebp - 0x120]
movss dword [ebp - 0x218], xmm0
movss xmm0, dword [ebp - 0x138]
mulss xmm0, dword [ebp - 0x29c]
movss dword [ebp - 0x138], xmm0
movss xmm0, dword [ebp - 0x138]
subss xmm0, dword [ebp - 0x29c]
movss dword [ebp - 0x138], xmm0
movss xmm0, dword [ebp - 0x138]
comiss xmm0, dword [ebp - 0x29c]
jbe 0x4fad8c
movss xmm0, dword [ebp - 0x120]
addss xmm0, dword [ebp - 0x138]
movss dword [ebp - 0x120], xmm0
movss xmm0, dword [ebp - 0x29c]
mulss xmm0, dword [ebp - 0x1d4]
movss dword [ebp - 0x29c], xmm0
movss xmm0, dword [ebp - 0x138]
addss xmm0, dword [ebp - 0x29c]
movss dword [ebp - 0x138], xmm0
movss xmm0, dword [ebp - 0x120]
divss xmm0, dword [ebp - 0x138]
movss dword [ebp - 0x120], xmm0
movss xmm0, dword [ebp - 0x138]
subss xmm0, dword [ebp - 0x29c]
movss dword [ebp - 0x138], xmm0
jmp 0x4fae04
movss xmm0, dword [ebp - 0x120]
addss xmm0, dword [ebp - 0x138]
movss dword [ebp - 0x120], xmm0
movss xmm0, dword [ebp - 0x218]
mulss xmm0, dword [ebp - 0x120]
movss dword [ebp - 0x218], xmm0
movss xmm0, dword [ebp - 0x120]
mulss xmm0, dword [ebp - 0x138]
movss dword [ebp - 0x120], xmm0
movss xmm0, dword [ebp - 0x120]
divss xmm0, dword [ebp - 0x138]
movss dword [ebp - 0x120], xmm0
movss xmm0, dword [ebp - 0x120]
subss xmm0, dword [ebp - 0x138]
movss dword [ebp - 0x120], xmm0
jmp 0x4fae8d
movss xmm0, dword [ebp - 0x1d4]
subss xmm0, dword [ebp - 0x138]
movss dword [ebp - 0x1d4], xmm0
movss xmm0, dword [ebp - 0x120]
addss xmm0, dword [ebp - 0x1d4]
movss dword [ebp - 0x120], xmm0
movss xmm0, dword [ebp - 0x29c]
mulss xmm0, dword [ebp - 0x120]
movss dword [ebp - 0x29c], xmm0
movss xmm0, dword [ebp - 0x1d4]
subss xmm0, dword [ebp - 0x138]
movss dword [ebp - 0x1d4], xmm0
movss xmm0, dword [ebp - 0x120]
addss xmm0, dword [ebp - 0x1d4]
movss dword [ebp - 0x120], xmm0
mov cl, byte [ebp - 0xd3]
mov byte [ebp - 0xc9], cl
mov dl, byte [ebp - 0xc6]
mov byte [ebp - 0xdc], dl
cmp dword [ebp - 0xf4], 0
jle 0x4faeb5
movsx ax, byte [ebp - 0xdc]
mov ecx, dword [ebp - 0xf4]
mov word [ebp + ecx*2 - 0x56], ax
mov edx, dword [ebp - 0xf4]
add edx, 1
mov dword [ebp - 0xf4], edx
mov eax, dword [ebp - 0x140]
add eax, 1
mov dword [ebp - 0x140], eax
mov ecx, dword [ebp - 0xf4]
shl ecx, 1
mov dword [ebp - 0x1d0], ecx
mov edx, dword [ebp - 0x1cc]
add edx, dword [ebp - 0x1d0]
movzx eax, byte [edx]
mov dword [ebp - 0x194], eax
mov dword [ebp - 0x198], 0xa2
mov ecx, dword [ebp - 0xf4]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x1c8], edx
mov eax, dword [ebp - 0x1cc]
add eax, dword [ebp - 0x1c8]
movzx ecx, byte [eax]
mov dword [ebp - 0x19c], ecx
mov dword [ebp - 0x1a0], 0x7e
mov edx, dword [ebp - 0x194]
sub edx, dword [ebp - 0x198]
mov dword [ebp - 0x1a4], edx
mov eax, dword [ebp - 0x19c]
sub eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a8], eax
mov ecx, dword [ebp - 0x1a4]
shl ecx, 4
mov dword [ebp - 0x1c4], ecx
mov edx, dword [ebp - 0x1a8]
mov dword [ebp - 0x1c0], edx
mov eax, dword [ebp - 0x1c4]
or eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x1b8], eax
mov cl, byte [ebp - 0x1b8]
mov byte [ebp - 0xd3], cl
movzx edx, byte [ebp - 0xc9]
mov al, byte [ebp + edx - 0x760]
mov byte [ebp - 0xd1], al
movzx ecx, byte [ebp - 0xc2]
movzx edx, byte [ebp + ecx - 0x760]
mov dword [ebp - 0x918], edx
mov al, byte [ebp - 0xc2]
add al, 1
mov byte [ebp - 0xc2], al
movzx ecx, byte [ebp - 0xc5]
add ecx, dword [ebp - 0x918]
mov byte [ebp - 0xc5], cl
movzx edx, byte [ebp - 0xc5]
movzx eax, byte [ebp - 0xc9]
mov cl, byte [ebp + edx - 0x760]
mov byte [ebp + eax - 0x760], cl
movzx edx, byte [ebp - 0xc6]
movzx eax, byte [ebp - 0xc5]
mov cl, byte [ebp + edx - 0x760]
mov byte [ebp + eax - 0x760], cl
movzx edx, byte [ebp - 0xc2]
movzx eax, byte [ebp - 0xc6]
mov cl, byte [ebp + edx - 0x760]
mov byte [ebp + eax - 0x760], cl
movzx edx, byte [ebp - 0xc2]
mov al, byte [ebp - 0xd1]
mov byte [ebp + edx - 0x760], al
movzx ecx, byte [ebp - 0xd1]
movzx edx, byte [ebp + ecx - 0x760]
movzx eax, byte [ebp - 0xd2]
add eax, edx
mov byte [ebp - 0xd2], al
movzx ecx, byte [ebp - 0xd3]
movzx edx, byte [ebp - 0xc5]
movzx eax, byte [ebp + edx - 0x760]
movzx edx, byte [ebp - 0xc2]
movzx edx, byte [ebp + edx - 0x760]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x760]
xor ecx, eax
movzx edx, byte [ebp - 0xc6]
movzx eax, byte [ebp + edx - 0x760]
movzx edx, byte [ebp - 0xc9]
movzx edx, byte [ebp + edx - 0x760]
add eax, edx
movzx edx, byte [ebp - 0xd2]
movzx edx, byte [ebp + edx - 0x760]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x760]
movzx edx, byte [ebp + eax - 0x760]
xor ecx, edx
mov byte [ebp - 0xc6], cl
mov al, byte [ebp - 0xd3]
mov byte [ebp - 0xc9], al
mov cl, byte [ebp - 0xc6]
mov byte [ebp - 0xdc], cl
cmp dword [ebp - 0xf4], 0
jle 0x4fb114
movsx dx, byte [ebp - 0xdc]
mov eax, dword [ebp - 0xf4]
mov word [ebp + eax*2 - 0x56], dx
mov ecx, dword [ebp - 0xf4]
add ecx, 1
mov dword [ebp - 0xf4], ecx
mov edx, dword [ebp - 0x140]
add edx, 1
mov dword [ebp - 0x140], edx
mov eax, dword [ebp - 0xf4]
shl eax, 1
mov dword [ebp - 0x1d0], eax
mov ecx, dword [ebp - 0x1cc]
add ecx, dword [ebp - 0x1d0]
movzx edx, byte [ecx]
mov dword [ebp - 0x194], edx
mov dword [ebp - 0x198], 0xa2
mov eax, dword [ebp - 0xf4]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x1c8], ecx
mov edx, dword [ebp - 0x1cc]
add edx, dword [ebp - 0x1c8]
movzx eax, byte [edx]
mov dword [ebp - 0x19c], eax
mov dword [ebp - 0x1a0], 0x7e
mov ecx, dword [ebp - 0x194]
sub ecx, dword [ebp - 0x198]
mov dword [ebp - 0x1a4], ecx
mov edx, dword [ebp - 0x19c]
sub edx, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a8], edx
mov eax, dword [ebp - 0x1a4]
shl eax, 4
mov dword [ebp - 0x1c4], eax
mov ecx, dword [ebp - 0x1a8]
mov dword [ebp - 0x1c0], ecx
mov edx, dword [ebp - 0x1c4]
or edx, dword [ebp - 0x1c0]
mov dword [ebp - 0x1b8], edx
mov al, byte [ebp - 0x1b8]
mov byte [ebp - 0xd3], al
movzx ecx, byte [ebp - 0xc9]
mov dl, byte [ebp + ecx - 0x760]
mov byte [ebp - 0xd1], dl
movzx eax, byte [ebp - 0xc2]
movzx ecx, byte [ebp + eax - 0x760]
mov dword [ebp - 0x910], ecx
mov dl, byte [ebp - 0xc2]
add dl, 1
mov byte [ebp - 0xc2], dl
movzx eax, byte [ebp - 0xc5]
add eax, dword [ebp - 0x910]
mov byte [ebp - 0xc5], al
movzx ecx, byte [ebp - 0xc5]
movzx edx, byte [ebp - 0xc9]
mov al, byte [ebp + ecx - 0x760]
mov byte [ebp + edx - 0x760], al
movzx ecx, byte [ebp - 0xc6]
movzx edx, byte [ebp - 0xc5]
mov al, byte [ebp + ecx - 0x760]
mov byte [ebp + edx - 0x760], al
movzx ecx, byte [ebp - 0xc2]
movzx edx, byte [ebp - 0xc6]
mov al, byte [ebp + ecx - 0x760]
mov byte [ebp + edx - 0x760], al
movzx ecx, byte [ebp - 0xc2]
mov dl, byte [ebp - 0xd1]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xd1]
movzx ecx, byte [ebp + eax - 0x760]
movzx edx, byte [ebp - 0xd2]
add edx, ecx
mov byte [ebp - 0xd2], dl
movzx eax, byte [ebp - 0xd3]
movzx ecx, byte [ebp - 0xc5]
movzx edx, byte [ebp + ecx - 0x760]
movzx ecx, byte [ebp - 0xc2]
movzx ecx, byte [ebp + ecx - 0x760]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x760]
xor eax, edx
movzx ecx, byte [ebp - 0xc6]
movzx edx, byte [ebp + ecx - 0x760]
movzx ecx, byte [ebp - 0xc9]
movzx ecx, byte [ebp + ecx - 0x760]
add edx, ecx
movzx ecx, byte [ebp - 0xd2]
movzx ecx, byte [ebp + ecx - 0x760]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x760]
movzx ecx, byte [ebp + edx - 0x760]
xor eax, ecx
mov byte [ebp - 0xc6], al
mov dl, byte [ebp - 0xd3]
mov byte [ebp - 0xc9], dl
mov al, byte [ebp - 0xc6]
mov byte [ebp - 0xdc], al
cmp dword [ebp - 0xf4], 0
jle 0x4fb376
movsx cx, byte [ebp - 0xdc]
mov edx, dword [ebp - 0xf4]
mov word [ebp + edx*2 - 0x56], cx
mov eax, dword [ebp - 0xf4]
add eax, 1
mov dword [ebp - 0xf4], eax
mov ecx, dword [ebp - 0x140]
add ecx, 1
mov dword [ebp - 0x140], ecx
movsd xmm0, qword [0x531158]
movsd qword [ebp - 0x494], xmm0
movsd xmm0, qword [0x531088]
movsd qword [ebp - 0x46c], xmm0
movsd xmm0, qword [0x530fd8]
movsd qword [ebp - 0x314], xmm0
movsd xmm0, qword [0x530f18]
movsd qword [ebp - 0x3b8], xmm0
movsd xmm0, qword [0x530dd0]
movsd qword [ebp - 0x4e8], xmm0
movsd xmm0, qword [0x530cd8]
movsd qword [ebp - 0x3d0], xmm0
movsd xmm0, qword [ebp - 0x494]
subsd xmm0, qword [ebp - 0x3d0]
movsd qword [ebp - 0x494], xmm0
movsd xmm0, qword [ebp - 0x4e8]
addsd xmm0, qword [ebp - 0x3d0]
movsd qword [ebp - 0x4e8], xmm0
movsd xmm0, qword [ebp - 0x46c]
subsd xmm0, qword [ebp - 0x3d0]
movsd qword [ebp - 0x46c], xmm0
movsd xmm0, qword [ebp - 0x494]
addsd xmm0, qword [ebp - 0x3d0]
movsd qword [ebp - 0x494], xmm0
movsd xmm0, qword [ebp - 0x3b8]
mulsd xmm0, qword [ebp - 0x3d0]
movsd qword [ebp - 0x3b8], xmm0
movsd xmm0, qword [ebp - 0x494]
mulsd xmm0, qword [ebp - 0x3d0]
movsd qword [ebp - 0x494], xmm0
movsd xmm0, qword [ebp - 0x3d0]
comisd xmm0, xmmword [ebp - 0x494]
jbe 0x4fb52f
movsd xmm0, qword [ebp - 0x314]
mulsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x314], xmm0
movsd xmm0, qword [ebp - 0x3b8]
divsd xmm0, qword [ebp - 0x4e8]
movsd qword [ebp - 0x3b8], xmm0
movsd xmm0, qword [ebp - 0x46c]
addsd xmm0, qword [ebp - 0x314]
movsd qword [ebp - 0x46c], xmm0
movsd xmm0, qword [ebp - 0x4e8]
subsd xmm0, qword [ebp - 0x3d0]
movsd qword [ebp - 0x4e8], xmm0
movsd xmm0, qword [ebp - 0x314]
addsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x314], xmm0
movsd xmm0, qword [ebp - 0x46c]
mulsd xmm0, qword [ebp - 0x314]
movsd qword [ebp - 0x46c], xmm0
jmp 0x4fb5cd
movsd xmm0, qword [ebp - 0x314]
mulsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x314], xmm0
movsd xmm0, qword [ebp - 0x3d0]
subsd xmm0, qword [ebp - 0x494]
movsd qword [ebp - 0x3d0], xmm0
movsd xmm0, qword [ebp - 0x46c]
addsd xmm0, qword [ebp - 0x314]
movsd qword [ebp - 0x46c], xmm0
movsd xmm0, qword [ebp - 0x3b8]
mulsd xmm0, qword [ebp - 0x4e8]
movsd qword [ebp - 0x3b8], xmm0
movsd xmm0, qword [ebp - 0x314]
subsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x314], xmm0
movsd xmm0, qword [ebp - 0x314]
addsd xmm0, qword [ebp - 0x3b8]
movsd qword [ebp - 0x314], xmm0
mov edx, dword [ebp - 0xf4]
shl edx, 1
mov dword [ebp - 0x1d0], edx
mov eax, dword [ebp - 0x1cc]
add eax, dword [ebp - 0x1d0]
movzx ecx, byte [eax]
mov dword [ebp - 0x194], ecx
mov dword [ebp - 0x198], 0xa2
mov edx, dword [ebp - 0xf4]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x1c8], eax
mov ecx, dword [ebp - 0x1cc]
add ecx, dword [ebp - 0x1c8]
movzx edx, byte [ecx]
mov dword [ebp - 0x19c], edx
mov dword [ebp - 0x1a0], 0x7e
mov eax, dword [ebp - 0x194]
sub eax, dword [ebp - 0x198]
mov dword [ebp - 0x1a4], eax
mov ecx, dword [ebp - 0x19c]
sub ecx, dword [ebp - 0x1a0]
mov dword [ebp - 0x1a8], ecx
mov edx, dword [ebp - 0x1a4]
shl edx, 4
mov dword [ebp - 0x1c4], edx
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x1c0], eax
mov ecx, dword [ebp - 0x1c4]
or ecx, dword [ebp - 0x1c0]
mov dword [ebp - 0x1b8], ecx
mov dl, byte [ebp - 0x1b8]
mov byte [ebp - 0xd3], dl
movzx eax, byte [ebp - 0xc9]
mov cl, byte [ebp + eax - 0x760]
mov byte [ebp - 0xd1], cl
movzx edx, byte [ebp - 0xc2]
movzx eax, byte [ebp + edx - 0x760]
mov dword [ebp - 0x90c], eax
mov cl, byte [ebp - 0xc2]
add cl, 1
mov byte [ebp - 0xc2], cl
movzx edx, byte [ebp - 0xc5]
add edx, dword [ebp - 0x90c]
mov byte [ebp - 0xc5], dl
movzx eax, byte [ebp - 0xc5]
movzx ecx, byte [ebp - 0xc9]
mov dl, byte [ebp + eax - 0x760]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xc6]
movzx ecx, byte [ebp - 0xc5]
mov dl, byte [ebp + eax - 0x760]
mov byte [ebp + ecx - 0x760], dl
movzx eax, byte [ebp - 0xc2]
movzx ecx, byte [ebp - 0xc6]
mov dl, byte [ebp + eax - 0x760]
mov byte [ebp + ecx - 0x760], dl
movsd xmm0, qword [0x531280]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [0x5310c8]
movsd qword [ebp - 0x270], xmm0
movsd xmm0, qword [0x530ea8]
movsd qword [ebp - 0x33c], xmm0
movsd xmm0, qword [ebp - 0x270]
addsd xmm0, qword [ebp - 0x33c]
movsd qword [ebp - 0x270], xmm0
movsd xmm0, qword [ebp - 0x270]
subsd xmm0, qword [ebp - 0x33c]
movsd qword [ebp - 0x270], xmm0
movsd xmm0, qword [ebp - 0x270]
mulsd xmm0, qword [ebp - 0x33c]
movsd qword [ebp - 0x270], xmm0
movsd xmm0, qword [ebp - 0x33c]
comisd xmm0, xmmword [ebp - 0x270]
jbe 0x4fb8db
movsd xmm0, qword [ebp - 0x240]
subsd xmm0, qword [ebp - 0x270]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x240]
addsd xmm0, qword [ebp - 0x270]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x33c]
divsd xmm0, qword [ebp - 0x240]
movsd qword [ebp - 0x33c], xmm0
movsd xmm0, qword [ebp - 0x270]
addsd xmm0, qword [ebp - 0x33c]
movsd qword [ebp - 0x270], xmm0
movsd xmm0, qword [ebp - 0x240]
addsd xmm0, qword [ebp - 0x270]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x240]
subsd xmm0, qword [ebp - 0x270]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x270]
comisd xmm0, xmmword [ebp - 0x240]
jbe 0x4fb891
movsd xmm0, qword [ebp - 0x240]
addsd xmm0, qword [ebp - 0x33c]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x33c]
addsd xmm0, qword [ebp - 0x270]
movsd qword [ebp - 0x33c], xmm0
movsd xmm0, qword [ebp - 0x270]
addsd xmm0, qword [ebp - 0x240]
movsd qword [ebp - 0x270], xmm0
jmp 0x4fb8d9
movsd xmm0, qword [ebp - 0x240]
addsd xmm0, qword [ebp - 0x270]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x240]
mulsd xmm0, qword [ebp - 0x270]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x240]
addsd xmm0, qword [ebp - 0x270]
movsd qword [ebp - 0x240], xmm0
jmp 0x4fb937
movsd xmm0, qword [ebp - 0x33c]
mulsd xmm0, qword [ebp - 0x240]
movsd qword [ebp - 0x33c], xmm0
movsd xmm0, qword [ebp - 0x240]
mulsd xmm0, qword [ebp - 0x270]
movsd qword [ebp - 0x240], xmm0
movsd xmm0, qword [ebp - 0x240]
addsd xmm0, qword [ebp - 0x270]
movsd qword [ebp - 0x240], xmm0
movzx eax, byte [ebp - 0xc2]
mov cl, byte [ebp - 0xd1]
mov byte [ebp + eax - 0x760], cl
movzx edx, byte [ebp - 0xd1]
movzx eax, byte [ebp + edx - 0x760]
movzx ecx, byte [ebp - 0xd2]
add ecx, eax
mov byte [ebp - 0xd2], cl
movss xmm0, dword [0x531528]
movss dword [ebp - 0x2ac], xmm0
movss xmm0, dword [0x5314f0]
movss dword [ebp - 0x200], xmm0
movss xmm0, dword [0x5314b4]
movss dword [ebp - 0x2a0], xmm0
movss xmm0, dword [0x531468]
movss dword [ebp - 0x2c4], xmm0
movss xmm0, dword [0x531434]
movss dword [ebp - 0x620], xmm0
movss xmm0, dword [0x5313dc]
movss dword [ebp - 0x274], xmm0
movss xmm0, dword [0x53139c]
movss dword [ebp - 0x228], xmm0
movss xmm0, dword [ebp - 0x2ac]
addss xmm0, dword [ebp - 0x228]
movss dword [ebp - 0x2ac], xmm0
movss xmm0, dword [ebp - 0x200]
addss xmm0, dword [ebp - 0x228]
movss dword [ebp - 0x200], xmm0
movss xmm0, dword [ebp - 0x2a0]
addss xmm0, dword [ebp - 0x228]
movss dword [ebp - 0x2a0], xmm0
movss xmm0, dword [ebp - 0x274]
subss xmm0, dword [ebp - 0x228]
movss dword [ebp - 0x274], xmm0
movss xmm0, dword [ebp - 0x2c4]
subss xmm0, dword [ebp - 0x228]
movss dword [ebp - 0x2c4], xmm0
movss xmm0, dword [ebp - 0x2c4]
addss xmm0, dword [ebp - 0x228]
movss dword [ebp - 0x2c4], xmm0
movss xmm0, dword [ebp - 0x200]
addss xmm0, dword [ebp - 0x228]
movss dword [ebp - 0x200], xmm0
movss xmm0, dword [ebp - 0x274]
comiss xmm0, dword [ebp - 0x200]
jbe 0x4fbb2f
movss xmm0, dword [ebp - 0x620]
subss xmm0, dword [ebp - 0x274]
movss dword [ebp - 0x620], xmm0
movss xmm0, dword [ebp - 0x2ac]
addss xmm0, dword [ebp - 0x200]
movss dword [ebp - 0x2ac], xmm0
movss xmm0, dword [ebp - 0x200]
addss xmm0, dword [ebp - 0x2a0]
movss dword [ebp - 0x200], xmm0
movss xmm0, dword [ebp - 0x2a0]
addss xmm0, dword [ebp - 0x2c4]
movss dword [ebp - 0x2a0], xmm0
movss xmm0, dword [ebp - 0x274]
subss xmm0, dword [ebp - 0x228]
movss dword [ebp - 0x274], xmm0
movss xmm0, dword [ebp - 0x200]
addss xmm0, dword [ebp - 0x2a0]
movss dword [ebp - 0x200], xmm0
movss xmm0, dword [ebp - 0x2a0]
divss xmm0, dword [ebp - 0x2c4]
movss dword [ebp - 0x2a0], xmm0
jmp 0x4fbc5d
movss xmm0, dword [ebp - 0x274]
addss xmm0, dword [ebp - 0x2ac]
movss dword [ebp - 0x274], xmm0
movss xmm0, dword [ebp - 0x228]
addss xmm0, dword [ebp - 0x200]
movss dword [ebp - 0x228], xmm0
movss xmm0, dword [ebp - 0x228]
subss xmm0, dword [ebp - 0x200]
movss dword [ebp - 0x228], xmm0
movss xmm0, dword [ebp - 0x228]
addss xmm0, dword [ebp - 0x200]
movss dword [ebp - 0x228], xmm0
movss xmm0, dword [ebp - 0x2ac]
subss xmm0, dword [ebp - 0x2a0]
movss dword [ebp - 0x2ac], xmm0
movss xmm0, dword [ebp - 0x200]
mulss xmm0, dword [ebp - 0x2c4]
movss dword [ebp - 0x200], xmm0
movss xmm0, dword [ebp - 0x274]
subss xmm0, dword [ebp - 0x2ac]
movss dword [ebp - 0x274], xmm0
movzx edx, byte [ebp - 0xd3]
movzx eax, byte [ebp - 0xc5]
movzx ecx, byte [ebp + eax - 0x760]
movzx eax, byte [ebp - 0xc2]
movzx eax, byte [ebp + eax - 0x760]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x760]
xor edx, ecx
movzx eax, byte [ebp - 0xc6]
movzx ecx, byte [ebp + eax - 0x760]
movzx eax, byte [ebp - 0xc9]
movzx eax, byte [ebp + eax - 0x760]
add ecx, eax
movzx eax, byte [ebp - 0xd2]
movzx eax, byte [ebp + eax - 0x760]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x760]
movzx eax, byte [ebp + ecx - 0x760]
xor edx, eax
mov byte [ebp - 0xc6], dl
mov cl, byte [ebp - 0xd3]
mov byte [ebp - 0xc9], cl
mov dl, byte [ebp - 0xc6]
mov byte [ebp - 0xdc], dl
cmp dword [ebp - 0xf4], 0
jle 0x4fbc91
movsx ax, byte [ebp - 0xdc]
mov ecx, dword [ebp - 0xf4]
mov word [ebp + ecx*2 - 0x56], ax
mov edx, 2
imul eax, edx, 0xc
mov dword [ebp - 0x61c], eax
cmp dword [ebp - 0x61c], 0x1a
jae 0x4fbcaa
jmp 0x4fbcb0
call fcn.0051da65
nop
xor ecx, ecx
mov edx, dword [ebp - 0x61c]
mov word [ebp + edx - 0x54], cx
jmp 0x4fbd11
mov dword [ebp - 0x438], 0
jmp 0x4fbcda
mov eax, dword [ebp - 0x438]
add eax, 1
mov dword [ebp - 0x438], eax
cmp dword [ebp - 0x438], 0xd
jge 0x4fbd11
mov ecx, dword [ebp - 0x438]
shl ecx, 1
mov dword [ebp - 0x618], ecx
cmp dword [ebp - 0x618], 0x1a
jae 0x4fbcfc
jmp 0x4fbd02
call fcn.0051da65
nop
xor edx, edx
mov eax, dword [ebp - 0x618]
mov word [ebp + eax - 0x54], dx
jmp 0x4fbccb
push 4
call fcn.0051d8c5
add esp, 4
mov dword [ebp - 0x4a4], eax
mov dword [ebp - 4], 0
cmp dword [ebp - 0x4a4], 0
je 0x4fbd55
push 4
mov ecx, dword [ebp - 0x4a4]
call fcn.004aa380
lea ecx, [ebp - 0x54]
push ecx
mov ecx, dword [ebp - 0x4a4]
call fcn.004d9910
mov dword [ebp - 0x614], eax
jmp 0x4fbd5f
mov dword [ebp - 0x614], 0
mov edx, dword [ebp - 0x614]
mov dword [ebp - 0x908], edx
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x908]
mov dword [ebp - 0x65c], eax
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0x9c], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x3e8], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x3b0], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x3b0], xmm0
jmp 0x4fbdcd
movsd xmm0, qword [ebp - 0x3b0]
addsd xmm0, qword [0x52f8c8]
movsd qword [ebp - 0x3b0], xmm0
movsd xmm0, qword [0x532370]
comisd xmm0, xmmword [ebp - 0x3b0]
jbe 0x4fbe7e
movsd xmm0, qword [0x5322d8]
mulsd xmm0, qword [ebp - 0x3b0]
mulsd xmm0, qword [ebp - 0x3b0]
movsd xmm1, qword [ebp - 0x3b0]
mulsd xmm1, qword [ebp - 0x3b0]
subsd xmm0, xmm1
movsd xmm1, qword [0x530a68]
mulsd xmm1, qword [ebp - 0x3b0]
mulsd xmm1, qword [ebp - 0x3b0]
addsd xmm1, qword [0x532298]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x3e8]
movsd qword [ebp - 0x3e8], xmm0
movsd xmm0, qword [ebp - 0x3e8]
comisd xmm0, xmmword [0x5322a8]
jbe 0x4fbe79
movsd xmm0, qword [0x532250]
mulsd xmm0, qword [ebp - 0x3b0]
movsd xmm1, qword [ebp - 0x3e8]
subsd xmm1, xmm0
movsd qword [ebp - 0x3e8], xmm1
jmp 0x4fbdb5
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x3e8]
jbe 0x4fbed6
inc eax
xlatb
inc edi
salc
inc ebp
salc
dec esi
xlatb
inc ebx
int 0x45
fld dword [esp + ebx*8 + 0x4f]
fmul qword [ecx - 0x2e]
dec esp
ror dword [edi - 0x24], cl
dec edx
ror byte [eax - 0x33], 1
inc ebp
aam 0x4b
rol dword [ebp - 0x30], 1
inc esp
ror dword [edx - 0x2d], 1
inc eax
aam 0x44
into
inc esi
iretd
mov dword [ebp - 0xc0], 0x4fbe8b
mov dword [ebp - 0x9c], 0x4fbeb7
mov ecx, dword [ebp - 0xc0]
mov dword [ebp - 0x230], ecx
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x8a8], edx
mov byte [ebp - 0x242], 0x1e
mov dword [ebp - 0x1e4], 0
jmp 0x4fbf24
mov eax, dword [ebp - 0x1e4]
add eax, 1
mov dword [ebp - 0x1e4], eax
cmp dword [ebp - 0x1e4], 0x100
jae 0x4fbf45
mov ecx, dword [ebp - 0x1e4]
mov dl, byte [ebp - 0x1e4]
mov byte [ebp + ecx - 0x880], dl
jmp 0x4fbf15
movsd xmm0, qword [0x5324c8]
movsd qword [ebp - 0x3a8], xmm0
movsd xmm0, qword [0x5324a0]
movsd qword [ebp - 0x780], xmm0
movsd xmm0, qword [0x532460]
movsd qword [ebp - 0x3f0], xmm0
movsd xmm0, qword [0x5323f0]
movsd qword [ebp - 0x2ec], xmm0
movsd xmm0, qword [0x532360]
movsd qword [ebp - 0x48c], xmm0
movsd xmm0, qword [ebp - 0x2ec]
subsd xmm0, qword [ebp - 0x48c]
movsd qword [ebp - 0x2ec], xmm0
movsd xmm0, qword [ebp - 0x2ec]
addsd xmm0, qword [ebp - 0x48c]
movsd qword [ebp - 0x2ec], xmm0
movsd xmm0, qword [ebp - 0x3f0]
subsd xmm0, qword [ebp - 0x48c]
movsd qword [ebp - 0x3f0], xmm0
movsd xmm0, qword [ebp - 0x3a8]
subsd xmm0, qword [ebp - 0x48c]
movsd qword [ebp - 0x3a8], xmm0
movsd xmm0, qword [ebp - 0x2ec]
mulsd xmm0, qword [ebp - 0x48c]
movsd qword [ebp - 0x2ec], xmm0
movsd xmm0, qword [ebp - 0x2ec]
comisd xmm0, xmmword [ebp - 0x48c]
jbe 0x4fc0ae
movsd xmm0, qword [ebp - 0x3f0]
addsd xmm0, qword [ebp - 0x2ec]
movsd qword [ebp - 0x3f0], xmm0
movsd xmm0, qword [ebp - 0x3f0]
addsd xmm0, qword [ebp - 0x2ec]
movsd qword [ebp - 0x3f0], xmm0
movsd xmm0, qword [ebp - 0x3a8]
mulsd xmm0, qword [ebp - 0x780]
movsd qword [ebp - 0x3a8], xmm0
movsd xmm0, qword [ebp - 0x3a8]
subsd xmm0, qword [ebp - 0x780]
movsd qword [ebp - 0x3a8], xmm0
movsd xmm0, qword [ebp - 0x2ec]
mulsd xmm0, qword [ebp - 0x48c]
movsd qword [ebp - 0x2ec], xmm0
mov dword [ebp - 0x324], 0
mov byte [ebp - 0xe9], 0
jmp 0x4fc126
movsd xmm0, qword [ebp - 0x3a8]
divsd xmm0, qword [ebp - 0x3f0]
movsd qword [ebp - 0x3a8], xmm0
movsd xmm0, qword [ebp - 0x2ec]
divsd xmm0, qword [ebp - 0x3a8]
movsd qword [ebp - 0x2ec], xmm0
movsd xmm0, qword [ebp - 0x780]
divsd xmm0, qword [ebp - 0x2ec]
movsd qword [ebp - 0x780], xmm0
movsd xmm0, qword [ebp - 0x3f0]
divsd xmm0, qword [ebp - 0x48c]
movsd qword [ebp - 0x3f0], xmm0
movsd xmm0, qword [ebp - 0x3a8]
divsd xmm0, qword [ebp - 0x3f0]
movsd qword [ebp - 0x3a8], xmm0
mov dword [ebp - 0x1e4], 0xff
jmp 0x4fc141
mov eax, dword [ebp - 0x1e4]
sub eax, 1
mov dword [ebp - 0x1e4], eax
cmp dword [ebp - 0x1e4], 0
jbe 0x4fc3b1
mov dword [ebp - 0x4a8], 0
mov dword [ebp - 0x434], 1
mov ecx, dword [ebp - 0x434]
cmp ecx, dword [ebp - 0x1e4]
jae 0x4fc182
mov edx, dword [ebp - 0x434]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x434], eax
jmp 0x4fc162
mov ecx, dword [ebp - 0x324]
mov dword [ebp - 0x610], ecx
cmp dword [ebp - 0x610], 3
ja case.default.0x4fc1a1
mov edx, dword [ebp - 0x610]
jmp dword [edx*4 + 0x503694]
movzx eax, byte [ebp - 0xe9]
movzx ebx, byte [ebp + eax - 0x880]
movsd xmm0, qword [ebp - 0x3e8]
call fcn.0051dea0
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xe9], bl
jmp 0x4fc28a
movzx ecx, byte [ebp - 0xe9]
movzx ebx, byte [ebp + ecx - 0x880]
movsd xmm0, qword [ebp - 0x3e8]
call fcn.0051dea0
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xe9], bl
jmp 0x4fc28a
movzx edx, byte [ebp - 0xe9]
movzx ebx, byte [ebp + edx - 0x880]
movsd xmm0, qword [ebp - 0x3e8]
call fcn.0051dea0
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xe9], bl
jmp 0x4fc28a
movzx eax, byte [ebp - 0xe9]
movzx ebx, byte [ebp + eax - 0x880]
movsd xmm0, qword [ebp - 0x3e8]
call fcn.0051dea0
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xe9], bl
jmp 0x4fc28a
movzx ecx, byte [ebp - 0xe9]
movzx edx, byte [ebp + ecx - 0x880]
mov eax, dword [ebp - 0x8a8]
add eax, dword [ebp - 0x324]
movzx ecx, byte [eax - 4]
add edx, ecx
mov byte [ebp - 0xe9], dl
mov edx, dword [ebp - 0x324]
add edx, 1
mov dword [ebp - 0x324], edx
movzx eax, byte [ebp - 0x242]
cmp dword [ebp - 0x324], eax
jb 0x4fc2c8
mov dword [ebp - 0x324], 0
movzx ecx, byte [ebp - 0x242]
movzx edx, byte [ebp - 0xe9]
add edx, ecx
mov byte [ebp - 0xe9], dl
movzx eax, byte [ebp - 0xe9]
and eax, dword [ebp - 0x434]
mov dword [ebp - 0x2b0], eax
mov ecx, dword [ebp - 0x4a8]
add ecx, 1
mov dword [ebp - 0x4a8], ecx
cmp dword [ebp - 0x4a8], 0xb
jbe 0x4fc307
mov eax, dword [ebp - 0x2b0]
xor edx, edx
div dword [ebp - 0x1e4]
mov dword [ebp - 0x2b0], edx
mov edx, dword [ebp - 0x2b0]
cmp edx, dword [ebp - 0x1e4]
ja 0x4fc182
mov eax, dword [ebp - 0x1e4]
cmp eax, dword [ebp - 0x2b0]
je 0x4fc3ac
mov ecx, dword [ebp - 0x2b0]
movzx edx, byte [ebp + ecx - 0x880]
mov eax, dword [ebp - 0x1e4]
movzx ecx, byte [ebp + eax - 0x880]
xor ecx, edx
mov edx, dword [ebp - 0x1e4]
mov byte [ebp + edx - 0x880], cl
mov eax, dword [ebp - 0x1e4]
movzx ecx, byte [ebp + eax - 0x880]
mov edx, dword [ebp - 0x2b0]
movzx eax, byte [ebp + edx - 0x880]
xor eax, ecx
mov ecx, dword [ebp - 0x2b0]
mov byte [ebp + ecx - 0x880], al
mov edx, dword [ebp - 0x2b0]
movzx eax, byte [ebp + edx - 0x880]
mov ecx, dword [ebp - 0x1e4]
movzx edx, byte [ebp + ecx - 0x880]
xor edx, eax
mov eax, dword [ebp - 0x1e4]
mov byte [ebp + eax - 0x880], dl
jmp 0x4fc132
mov ecx, 1
shl ecx, 0
mov dl, byte [ebp + ecx - 0x880]
mov byte [ebp - 0xc7], dl
mov eax, 1
imul ecx, eax, 3
mov dl, byte [ebp + ecx - 0x880]
mov byte [ebp - 0xca], dl
mov eax, 1
imul ecx, eax, 5
mov dl, byte [ebp + ecx - 0x880]
mov byte [ebp - 0xd7], dl
mov eax, 1
imul ecx, eax, 7
mov dl, byte [ebp + ecx - 0x880]
mov byte [ebp - 0xcb], dl
movzx eax, byte [ebp - 0xe9]
mov cl, byte [ebp + eax - 0x880]
mov byte [ebp - 0xd0], cl
mov dword [ebp - 0x60c], 0x2c
cmp dword [ebp - 0x60c], 2
jle 0x4fda26
mov edx, dword [ebp - 0x60c]
and edx, 1
jne 0x4fda26
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0x190], 0
mov eax, dword [ebp - 0x190]
add eax, 1
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x22c], 0
mov ecx, dword [ebp - 0xfc]
shl ecx, 1
mov dword [ebp - 0x22c], ecx
mov dword [ebp - 0x204], 0
mov edx, dword [ebp - 0x230]
add edx, dword [ebp - 0x22c]
movzx eax, byte [edx]
add eax, dword [ebp - 0x204]
mov dword [ebp - 0x204], eax
mov dword [ebp - 0x208], 0
mov ecx, dword [ebp - 0x208]
add ecx, 0x40
mov dword [ebp - 0x208], ecx
mov dword [ebp - 0x214], 0
mov edx, dword [ebp - 0xfc]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x214], eax
mov dword [ebp - 0x20c], 0
mov ecx, dword [ebp - 0x230]
add ecx, dword [ebp - 0x214]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x20c]
mov dword [ebp - 0x20c], edx
mov dword [ebp - 0x210], 0
mov eax, dword [ebp - 0x210]
add eax, 0xcd
mov dword [ebp - 0x210], eax
mov dword [ebp - 0x1f8], 0
mov ecx, dword [ebp - 0x204]
sub ecx, dword [ebp - 0x208]
add ecx, dword [ebp - 0x1f8]
mov dword [ebp - 0x1f8], ecx
mov dword [ebp - 0x1fc], 0
mov edx, dword [ebp - 0x20c]
sub edx, dword [ebp - 0x210]
add edx, dword [ebp - 0x1fc]
mov dword [ebp - 0x1fc], edx
mov dword [ebp - 0x21c], 0
mov eax, dword [ebp - 0x1f8]
shl eax, 4
mov dword [ebp - 0x21c], eax
mov dword [ebp - 0x220], 0
mov ecx, dword [ebp - 0x1fc]
mov dword [ebp - 0x220], ecx
mov dword [ebp - 0x224], 0
mov edx, dword [ebp - 0x21c]
or edx, dword [ebp - 0x220]
mov dword [ebp - 0x224], edx
mov byte [ebp - 0xd8], 0
mov al, byte [ebp - 0x224]
mov byte [ebp - 0xd8], al
mov byte [ebp - 0xd6], 0
movzx ecx, byte [ebp - 0xd0]
mov dl, byte [ebp + ecx - 0x880]
mov byte [ebp - 0xd6], dl
movzx eax, byte [ebp - 0xc7]
movzx ecx, byte [ebp + eax - 0x880]
mov dword [ebp - 0x904], ecx
mov dl, byte [ebp - 0xc7]
add dl, 1
mov byte [ebp - 0xc7], dl
movzx eax, byte [ebp - 0xca]
add eax, dword [ebp - 0x904]
mov byte [ebp - 0xca], al
movzx ecx, byte [ebp - 0xca]
movzx edx, byte [ebp - 0xd0]
mov al, byte [ebp + ecx - 0x880]
mov byte [ebp + edx - 0x880], al
movzx ecx, byte [ebp - 0xcb]
movzx edx, byte [ebp - 0xca]
mov al, byte [ebp + ecx - 0x880]
mov byte [ebp + edx - 0x880], al
movzx ecx, byte [ebp - 0xc7]
movzx edx, byte [ebp - 0xcb]
mov al, byte [ebp + ecx - 0x880]
mov byte [ebp + edx - 0x880], al
movzx ecx, byte [ebp - 0xc7]
mov dl, byte [ebp - 0xd6]
mov byte [ebp + ecx - 0x880], dl
movzx eax, byte [ebp - 0xd6]
movzx ecx, byte [ebp + eax - 0x880]
movzx edx, byte [ebp - 0xd7]
add edx, ecx
mov byte [ebp - 0xd7], dl
movzx eax, byte [ebp - 0xd8]
movzx ecx, byte [ebp - 0xca]
movzx edx, byte [ebp + ecx - 0x880]
movzx ecx, byte [ebp - 0xc7]
movzx ecx, byte [ebp + ecx - 0x880]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x880]
xor eax, edx
movzx ecx, byte [ebp - 0xcb]
movzx edx, byte [ebp + ecx - 0x880]
movzx ecx, byte [ebp - 0xd0]
movzx ecx, byte [ebp + ecx - 0x880]
add edx, ecx
movzx ecx, byte [ebp - 0xd7]
movzx ecx, byte [ebp + ecx - 0x880]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x880]
movzx ecx, byte [ebp + edx - 0x880]
xor eax, ecx
mov byte [ebp - 0xcb], al
mov dl, byte [ebp - 0xd8]
mov byte [ebp - 0xd0], dl
mov al, byte [ebp - 0xcb]
mov byte [ebp - 0xee], al
cmp dword [ebp - 0xfc], 0
jle 0x4fc743
mov ecx, dword [ebp - 0xfc]
mov dl, byte [ebp - 0xee]
mov byte [ebp + ecx - 0x6d], dl
mov eax, dword [ebp - 0xfc]
add eax, 1
mov dword [ebp - 0xfc], eax
mov ecx, dword [ebp - 0x190]
add ecx, 1
mov dword [ebp - 0x190], ecx
mov edx, dword [ebp - 0xfc]
shl edx, 1
mov dword [ebp - 0x22c], edx
mov eax, dword [ebp - 0x230]
add eax, dword [ebp - 0x22c]
movzx ecx, byte [eax]
mov dword [ebp - 0x204], ecx
mov dword [ebp - 0x208], 0x40
mov edx, dword [ebp - 0xfc]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x214], eax
mov ecx, dword [ebp - 0x230]
add ecx, dword [ebp - 0x214]
movzx edx, byte [ecx]
mov dword [ebp - 0x20c], edx
movsd xmm0, qword [0x532480]
movsd qword [ebp - 0x2e4], xmm0
movsd xmm0, qword [0x532448]
movsd qword [ebp - 0x4c4], xmm0
movsd xmm0, qword [0x532418]
movsd qword [ebp - 0x3c8], xmm0
movsd xmm0, qword [0x5323e0]
movsd qword [ebp - 0x770], xmm0
movsd xmm0, qword [0x5323b0]
movsd qword [ebp - 0x34c], xmm0
movsd xmm0, qword [0x532350]
movsd qword [ebp - 0x778], xmm0
movsd xmm0, qword [0x532318]
movsd qword [ebp - 0x2f4], xmm0
movsd xmm0, qword [ebp - 0x770]
addsd xmm0, qword [ebp - 0x2f4]
movsd qword [ebp - 0x770], xmm0
movsd xmm0, qword [ebp - 0x34c]
subsd xmm0, qword [ebp - 0x2f4]
movsd qword [ebp - 0x34c], xmm0
movsd xmm0, qword [ebp - 0x2e4]
addsd xmm0, qword [ebp - 0x2f4]
movsd qword [ebp - 0x2e4], xmm0
movsd xmm0, qword [ebp - 0x3c8]
mulsd xmm0, qword [ebp - 0x2f4]
movsd qword [ebp - 0x3c8], xmm0
movsd xmm0, qword [ebp - 0x4c4]
addsd xmm0, qword [ebp - 0x2f4]
movsd qword [ebp - 0x4c4], xmm0
movsd xmm0, qword [ebp - 0x2e4]
subsd xmm0, qword [ebp - 0x2f4]
movsd qword [ebp - 0x2e4], xmm0
movsd xmm0, qword [ebp - 0x2e4]
addsd xmm0, qword [ebp - 0x2f4]
movsd qword [ebp - 0x2e4], xmm0
movsd xmm0, qword [ebp - 0x3c8]
comisd xmm0, xmmword [ebp - 0x2f4]
jbe 0x4fc998
movsd xmm0, qword [ebp - 0x2e4]
subsd xmm0, qword [ebp - 0x3c8]
movsd qword [ebp - 0x2e4], xmm0
movsd xmm0, qword [ebp - 0x4c4]
mulsd xmm0, qword [ebp - 0x770]
movsd qword [ebp - 0x4c4], xmm0
movsd xmm0, qword [ebp - 0x3c8]
addsd xmm0, qword [ebp - 0x34c]
movsd qword [ebp - 0x3c8], xmm0
movsd xmm0, qword [ebp - 0x4c4]
mulsd xmm0, qword [ebp - 0x770]
movsd qword [ebp - 0x4c4], xmm0
movsd xmm0, qword [ebp - 0x34c]
addsd xmm0, qword [ebp - 0x2f4]
movsd qword [ebp - 0x34c], xmm0
movsd xmm0, qword [ebp - 0x2e4]
subsd xmm0, qword [ebp - 0x3c8]
movsd qword [ebp - 0x2e4], xmm0
movsd xmm0, qword [ebp - 0x2e4]
subsd xmm0, qword [ebp - 0x3c8]
movsd qword [ebp - 0x2e4], xmm0
mov dword [ebp - 0x210], 0xcd
jmp 0x4fca40
movsd xmm0, qword [ebp - 0x2f4]
subsd xmm0, qword [ebp - 0x4c4]
movsd qword [ebp - 0x2f4], xmm0
movsd xmm0, qword [ebp - 0x34c]
addsd xmm0, qword [ebp - 0x2f4]
movsd qword [ebp - 0x34c], xmm0
movsd xmm0, qword [ebp - 0x778]
addsd xmm0, qword [ebp - 0x2e4]
movsd qword [ebp - 0x778], xmm0
movsd xmm0, qword [ebp - 0x3c8]
addsd xmm0, qword [ebp - 0x34c]
movsd qword [ebp - 0x3c8], xmm0
movsd xmm0, qword [ebp - 0x34c]
subsd xmm0, qword [ebp - 0x2f4]
movsd qword [ebp - 0x34c], xmm0
movsd xmm0, qword [ebp - 0x778]
addsd xmm0, qword [ebp - 0x2e4]
movsd qword [ebp - 0x778], xmm0
movsd xmm0, qword [ebp - 0x34c]
subsd xmm0, qword [ebp - 0x2f4]
movsd qword [ebp - 0x34c], xmm0
mov eax, dword [ebp - 0x204]
sub eax, dword [ebp - 0x208]
mov dword [ebp - 0x1f8], eax
mov ecx, dword [ebp - 0x20c]
sub ecx, dword [ebp - 0x210]
mov dword [ebp - 0x1fc], ecx
mov edx, dword [ebp - 0x1f8]
shl edx, 4
mov dword [ebp - 0x21c], edx
mov eax, dword [ebp - 0x1fc]
mov dword [ebp - 0x220], eax
mov ecx, dword [ebp - 0x21c]
or ecx, dword [ebp - 0x220]
mov dword [ebp - 0x224], ecx
mov dl, byte [ebp - 0x224]
mov byte [ebp - 0xd8], dl
movzx eax, byte [ebp - 0xd0]
mov cl, byte [ebp + eax - 0x880]
mov byte [ebp - 0xd6], cl
movzx edx, byte [ebp - 0xc7]
movzx eax, byte [ebp + edx - 0x880]
mov dword [ebp - 0x900], eax
mov cl, byte [ebp - 0xc7]
add cl, 1
mov byte [ebp - 0xc7], cl
movzx edx, byte [ebp - 0xca]
add edx, dword [ebp - 0x900]
mov byte [ebp - 0xca], dl
movzx eax, byte [ebp - 0xca]
movzx ecx, byte [ebp - 0xd0]
mov dl, byte [ebp + eax - 0x880]
mov byte [ebp + ecx - 0x880], dl
movzx eax, byte [ebp - 0xcb]
movzx ecx, byte [ebp - 0xca]
mov dl, byte [ebp + eax - 0x880]
mov byte [ebp + ecx - 0x880], dl
movzx eax, byte [ebp - 0xc7]
movzx ecx, byte [ebp - 0xcb]
mov dl, byte [ebp + eax - 0x880]
mov byte [ebp + ecx - 0x880], dl
movzx eax, byte [ebp - 0xc7]
mov cl, byte [ebp - 0xd6]
mov byte [ebp + eax - 0x880], cl
movzx edx, byte [ebp - 0xd6]
movzx eax, byte [ebp + edx - 0x880]
movzx ecx, byte [ebp - 0xd7]
add ecx, eax
mov byte [ebp - 0xd7], cl
movzx edx, byte [ebp - 0xd8]
movzx eax, byte [ebp - 0xca]
movzx ecx, byte [ebp + eax - 0x880]
movzx eax, byte [ebp - 0xc7]
movzx eax, byte [ebp + eax - 0x880]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x880]
xor edx, ecx
movzx eax, byte [ebp - 0xcb]
movzx ecx, byte [ebp + eax - 0x880]
movzx eax, byte [ebp - 0xd0]
movzx eax, byte [ebp + eax - 0x880]
add ecx, eax
movzx eax, byte [ebp - 0xd7]
movzx eax, byte [ebp + eax - 0x880]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x880]
movzx eax, byte [ebp + ecx - 0x880]
xor edx, eax
mov byte [ebp - 0xcb], dl
mov cl, byte [ebp - 0xd8]
mov byte [ebp - 0xd0], cl
mov dl, byte [ebp - 0xcb]
mov byte [ebp - 0xee], dl
cmp dword [ebp - 0xfc], 0
jle 0x4fcc25
mov eax, dword [ebp - 0xfc]
mov cl, byte [ebp - 0xee]
mov byte [ebp + eax - 0x6d], cl
mov edx, dword [ebp - 0x190]
add edx, 8
mov dword [ebp - 0x190], edx
mov eax, dword [ebp - 0xfc]
add eax, 1
mov dword [ebp - 0x4ac], eax
jmp 0x4fcc54
mov ecx, dword [ebp - 0x4ac]
add ecx, 1
mov dword [ebp - 0x4ac], ecx
mov edx, dword [ebp - 0x4ac]
cmp edx, dword [ebp - 0x190]
jge 0x4fceb8
mov eax, dword [ebp - 0xfc]
add eax, 1
mov dword [ebp - 0xfc], eax
mov ecx, dword [ebp - 0xfc]
shl ecx, 1
mov dword [ebp - 0x22c], ecx
mov edx, dword [ebp - 0x230]
add edx, dword [ebp - 0x22c]
movzx eax, byte [edx]
mov dword [ebp - 0x204], eax
mov dword [ebp - 0x208], 0x40
mov ecx, dword [ebp - 0xfc]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x214], edx
mov eax, dword [ebp - 0x230]
add eax, dword [ebp - 0x214]
movzx ecx, byte [eax]
mov dword [ebp - 0x20c], ecx
mov dword [ebp - 0x210], 0xcd
mov edx, dword [ebp - 0x204]
sub edx, dword [ebp - 0x208]
mov dword [ebp - 0x1f8], edx
mov eax, dword [ebp - 0x20c]
sub eax, dword [ebp - 0x210]
mov dword [ebp - 0x1fc], eax
mov ecx, dword [ebp - 0x1f8]
shl ecx, 4
mov dword [ebp - 0x21c], ecx
mov edx, dword [ebp - 0x1fc]
mov dword [ebp - 0x220], edx
mov eax, dword [ebp - 0x21c]
or eax, dword [ebp - 0x220]
mov dword [ebp - 0x224], eax
mov cl, byte [ebp - 0x224]
mov byte [ebp - 0xd8], cl
movzx edx, byte [ebp - 0xd0]
mov al, byte [ebp + edx - 0x880]
mov byte [ebp - 0xd6], al
movzx ecx, byte [ebp - 0xc7]
movzx edx, byte [ebp + ecx - 0x880]
mov dword [ebp - 0x88c], edx
mov al, byte [ebp - 0xc7]
add al, 1
mov byte [ebp - 0xc7], al
movzx ecx, byte [ebp - 0xca]
add ecx, dword [ebp - 0x88c]
mov byte [ebp - 0xca], cl
movzx edx, byte [ebp - 0xca]
movzx eax, byte [ebp - 0xd0]
mov cl, byte [ebp + edx - 0x880]
mov byte [ebp + eax - 0x880], cl
movzx edx, byte [ebp - 0xcb]
movzx eax, byte [ebp - 0xca]
mov cl, byte [ebp + edx - 0x880]
mov byte [ebp + eax - 0x880], cl
movzx edx, byte [ebp - 0xc7]
movzx eax, byte [ebp - 0xcb]
mov cl, byte [ebp + edx - 0x880]
mov byte [ebp + eax - 0x880], cl
movzx edx, byte [ebp - 0xc7]
mov al, byte [ebp - 0xd6]
mov byte [ebp + edx - 0x880], al
movzx ecx, byte [ebp - 0xd6]
movzx edx, byte [ebp + ecx - 0x880]
movzx eax, byte [ebp - 0xd7]
add eax, edx
mov byte [ebp - 0xd7], al
movzx ecx, byte [ebp - 0xd8]
movzx edx, byte [ebp - 0xca]
movzx eax, byte [ebp + edx - 0x880]
movzx edx, byte [ebp - 0xc7]
movzx edx, byte [ebp + edx - 0x880]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x880]
xor ecx, eax
movzx edx, byte [ebp - 0xcb]
movzx eax, byte [ebp + edx - 0x880]
movzx edx, byte [ebp - 0xd0]
movzx edx, byte [ebp + edx - 0x880]
add eax, edx
movzx edx, byte [ebp - 0xd7]
movzx edx, byte [ebp + edx - 0x880]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x880]
movzx edx, byte [ebp + eax - 0x880]
xor ecx, edx
mov byte [ebp - 0xcb], cl
mov al, byte [ebp - 0xd8]
mov byte [ebp - 0xd0], al
mov cl, byte [ebp - 0xcb]
mov byte [ebp - 0xee], cl
cmp dword [ebp - 0xfc], 0
jle 0x4fceb3
mov edx, dword [ebp - 0xfc]
mov al, byte [ebp - 0xee]
mov byte [ebp + edx - 0x6d], al
jmp 0x4fcc45
mov ecx, dword [ebp - 0x190]
add ecx, 1
mov dword [ebp - 0x190], ecx
mov edx, dword [ebp - 0xfc]
add edx, 1
mov dword [ebp - 0xfc], edx
movsd xmm0, qword [0x532440]
movsd qword [ebp - 0x4f0], xmm0
movsd xmm0, qword [0x5323e8]
movsd qword [ebp - 0x344], xmm0
movsd xmm0, qword [0x52fed0]
movsd qword [ebp - 0x3a0], xmm0
movsd xmm0, qword [0x532330]
movsd qword [ebp - 0x420], xmm0
movsd xmm0, qword [ebp - 0x3a0]
mulsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x3a0], xmm0
movsd xmm0, qword [ebp - 0x4f0]
mulsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x4f0], xmm0
movsd xmm0, qword [ebp - 0x344]
subsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x344], xmm0
movsd xmm0, qword [ebp - 0x344]
subsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x344], xmm0
movsd xmm0, qword [ebp - 0x344]
comisd xmm0, xmmword [ebp - 0x4f0]
jbe 0x4fcfea
movsd xmm0, qword [ebp - 0x344]
subsd xmm0, qword [ebp - 0x3a0]
movsd qword [ebp - 0x344], xmm0
movsd xmm0, qword [ebp - 0x3a0]
mulsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x3a0], xmm0
movsd xmm0, qword [ebp - 0x344]
subsd xmm0, qword [ebp - 0x3a0]
movsd qword [ebp - 0x344], xmm0
movsd xmm0, qword [ebp - 0x3a0]
divsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x3a0], xmm0
jmp 0x4fd059
movsd xmm0, qword [ebp - 0x3a0]
addsd xmm0, qword [ebp - 0x4f0]
movsd qword [ebp - 0x3a0], xmm0
movsd xmm0, qword [ebp - 0x420]
addsd xmm0, qword [ebp - 0x344]
movsd qword [ebp - 0x420], xmm0
movsd xmm0, qword [ebp - 0x344]
subsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x344], xmm0
movsd xmm0, qword [ebp - 0x4f0]
subsd xmm0, qword [ebp - 0x3a0]
movsd qword [ebp - 0x4f0], xmm0
mov eax, dword [ebp - 0x190]
add eax, 1
mov dword [ebp - 0x190], eax
mov ecx, dword [ebp - 0xfc]
shl ecx, 1
mov dword [ebp - 0x22c], ecx
mov edx, dword [ebp - 0x230]
add edx, dword [ebp - 0x22c]
movzx eax, byte [edx]
mov dword [ebp - 0x204], eax
mov dword [ebp - 0x208], 0x40
mov ecx, dword [ebp - 0xfc]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x214], edx
mov eax, dword [ebp - 0x230]
add eax, dword [ebp - 0x214]
movzx ecx, byte [eax]
mov dword [ebp - 0x20c], ecx
mov dword [ebp - 0x210], 0xcd
mov edx, dword [ebp - 0x204]
sub edx, dword [ebp - 0x208]
mov dword [ebp - 0x1f8], edx
mov eax, dword [ebp - 0x20c]
sub eax, dword [ebp - 0x210]
mov dword [ebp - 0x1fc], eax
mov ecx, dword [ebp - 0x1f8]
shl ecx, 4
mov dword [ebp - 0x21c], ecx
mov edx, dword [ebp - 0x1fc]
mov dword [ebp - 0x220], edx
mov eax, dword [ebp - 0x21c]
or eax, dword [ebp - 0x220]
mov dword [ebp - 0x224], eax
mov cl, byte [ebp - 0x224]
mov byte [ebp - 0xd8], cl
movzx edx, byte [ebp - 0xd0]
mov al, byte [ebp + edx - 0x880]
mov byte [ebp - 0xd6], al
movzx ecx, byte [ebp - 0xc7]
movzx edx, byte [ebp + ecx - 0x880]
mov dword [ebp - 0x914], edx
mov al, byte [ebp - 0xc7]
add al, 1
mov byte [ebp - 0xc7], al
movzx ecx, byte [ebp - 0xca]
add ecx, dword [ebp - 0x914]
mov byte [ebp - 0xca], cl
movzx edx, byte [ebp - 0xca]
movzx eax, byte [ebp - 0xd0]
mov cl, byte [ebp + edx - 0x880]
mov byte [ebp + eax - 0x880], cl
movzx edx, byte [ebp - 0xcb]
movzx eax, byte [ebp - 0xca]
mov cl, byte [ebp + edx - 0x880]
mov byte [ebp + eax - 0x880], cl
movzx edx, byte [ebp - 0xc7]
movzx eax, byte [ebp - 0xcb]
mov cl, byte [ebp + edx - 0x880]
mov byte [ebp + eax - 0x880], cl
movzx edx, byte [ebp - 0xc7]
mov al, byte [ebp - 0xd6]
mov byte [ebp + edx - 0x880], al
movzx ecx, byte [ebp - 0xd6]
movzx edx, byte [ebp + ecx - 0x880]
movzx eax, byte [ebp - 0xd7]
add eax, edx
mov byte [ebp - 0xd7], al
movzx ecx, byte [ebp - 0xd8]
movzx edx, byte [ebp - 0xca]
movzx eax, byte [ebp + edx - 0x880]
movzx edx, byte [ebp - 0xc7]
movzx edx, byte [ebp + edx - 0x880]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x880]
xor ecx, eax
movzx edx, byte [ebp - 0xcb]
movzx eax, byte [ebp + edx - 0x880]
movzx edx, byte [ebp - 0xd0]
movzx edx, byte [ebp + edx - 0x880]
add eax, edx
movzx edx, byte [ebp - 0xd7]
movzx edx, byte [ebp + edx - 0x880]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x880]
movzx edx, byte [ebp + eax - 0x880]
xor ecx, edx
mov byte [ebp - 0xcb], cl
mov al, byte [ebp - 0xd8]
mov byte [ebp - 0xd0], al
mov cl, byte [ebp - 0xcb]
mov byte [ebp - 0xee], cl
cmp dword [ebp - 0xfc], 0
jle 0x4fd297
mov edx, dword [ebp - 0xfc]
mov al, byte [ebp - 0xee]
mov byte [ebp + edx - 0x6d], al
mov ecx, dword [ebp - 0xfc]
add ecx, 1
mov dword [ebp - 0xfc], ecx
mov edx, dword [ebp - 0x190]
add edx, 1
mov dword [ebp - 0x190], edx
mov eax, dword [ebp - 0xfc]
shl eax, 1
mov dword [ebp - 0x22c], eax
mov ecx, dword [ebp - 0x230]
add ecx, dword [ebp - 0x22c]
movzx edx, byte [ecx]
mov dword [ebp - 0x204], edx
mov dword [ebp - 0x208], 0x40
mov eax, dword [ebp - 0xfc]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x214], ecx
mov edx, dword [ebp - 0x230]
add edx, dword [ebp - 0x214]
movzx eax, byte [edx]
mov dword [ebp - 0x20c], eax
mov dword [ebp - 0x210], 0xcd
mov ecx, dword [ebp - 0x204]
sub ecx, dword [ebp - 0x208]
mov dword [ebp - 0x1f8], ecx
mov edx, dword [ebp - 0x20c]
sub edx, dword [ebp - 0x210]
mov dword [ebp - 0x1fc], edx
mov eax, dword [ebp - 0x1f8]
shl eax, 4
mov dword [ebp - 0x21c], eax
mov ecx, dword [ebp - 0x1fc]
mov dword [ebp - 0x220], ecx
mov edx, dword [ebp - 0x21c]
or edx, dword [ebp - 0x220]
mov dword [ebp - 0x224], edx
mov al, byte [ebp - 0x224]
mov byte [ebp - 0xd8], al
movzx ecx, byte [ebp - 0xd0]
mov dl, byte [ebp + ecx - 0x880]
mov byte [ebp - 0xd6], dl
movzx eax, byte [ebp - 0xc7]
movzx ecx, byte [ebp + eax - 0x880]
mov dword [ebp - 0x8dc], ecx
mov dl, byte [ebp - 0xc7]
add dl, 1
mov byte [ebp - 0xc7], dl
movzx eax, byte [ebp - 0xca]
add eax, dword [ebp - 0x8dc]
mov byte [ebp - 0xca], al
movzx ecx, byte [ebp - 0xca]
movzx edx, byte [ebp - 0xd0]
mov al, byte [ebp + ecx - 0x880]
mov byte [ebp + edx - 0x880], al
movzx ecx, byte [ebp - 0xcb]
movzx edx, byte [ebp - 0xca]
mov al, byte [ebp + ecx - 0x880]
mov byte [ebp + edx - 0x880], al
movzx ecx, byte [ebp - 0xc7]
movzx edx, byte [ebp - 0xcb]
mov al, byte [ebp + ecx - 0x880]
mov byte [ebp + edx - 0x880], al
movzx ecx, byte [ebp - 0xc7]
mov dl, byte [ebp - 0xd6]
mov byte [ebp + ecx - 0x880], dl
movzx eax, byte [ebp - 0xd6]
movzx ecx, byte [ebp + eax - 0x880]
movzx edx, byte [ebp - 0xd7]
add edx, ecx
mov byte [ebp - 0xd7], dl
movzx eax, byte [ebp - 0xd8]
movzx ecx, byte [ebp - 0xca]
movzx edx, byte [ebp + ecx - 0x880]
movzx ecx, byte [ebp - 0xc7]
movzx ecx, byte [ebp + ecx - 0x880]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x880]
xor eax, edx
movzx ecx, byte [ebp - 0xcb]
movzx edx, byte [ebp + ecx - 0x880]
movzx ecx, byte [ebp - 0xd0]
movzx ecx, byte [ebp + ecx - 0x880]
add edx, ecx
movzx ecx, byte [ebp - 0xd7]
movzx ecx, byte [ebp + ecx - 0x880]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x880]
movzx ecx, byte [ebp + edx - 0x880]
xor eax, ecx
mov byte [ebp - 0xcb], al
mov dl, byte [ebp - 0xd8]
mov byte [ebp - 0xd0], dl
mov al, byte [ebp - 0xcb]
mov byte [ebp - 0xee], al
cmp dword [ebp - 0xfc], 0
jle 0x4fd4f6
mov ecx, dword [ebp - 0xfc]
mov dl, byte [ebp - 0xee]
mov byte [ebp + ecx - 0x6d], dl
mov eax, dword [ebp - 0x190]
add eax, 9
mov dword [ebp - 0x190], eax
mov ecx, dword [ebp - 0xfc]
add ecx, 1
mov dword [ebp - 0x4b0], ecx
jmp 0x4fd525
mov edx, dword [ebp - 0x4b0]
add edx, 1
mov dword [ebp - 0x4b0], edx
mov eax, dword [ebp - 0x4b0]
cmp eax, dword [ebp - 0x190]
jge 0x4fd78c
mov ecx, dword [ebp - 0xfc]
add ecx, 1
mov dword [ebp - 0xfc], ecx
mov edx, dword [ebp - 0xfc]
shl edx, 1
mov dword [ebp - 0x22c], edx
mov eax, dword [ebp - 0x230]
add eax, dword [ebp - 0x22c]
movzx ecx, byte [eax]
mov dword [ebp - 0x204], ecx
mov dword [ebp - 0x208], 0x40
mov edx, dword [ebp - 0xfc]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x214], eax
mov ecx, dword [ebp - 0x230]
add ecx, dword [ebp - 0x214]
movzx edx, byte [ecx]
mov dword [ebp - 0x20c], edx
mov dword [ebp - 0x210], 0xcd
mov eax, dword [ebp - 0x204]
sub eax, dword [ebp - 0x208]
mov dword [ebp - 0x1f8], eax
mov ecx, dword [ebp - 0x20c]
sub ecx, dword [ebp - 0x210]
mov dword [ebp - 0x1fc], ecx
mov edx, dword [ebp - 0x1f8]
shl edx, 4
mov dword [ebp - 0x21c], edx
mov eax, dword [ebp - 0x1fc]
mov dword [ebp - 0x220], eax
mov ecx, dword [ebp - 0x21c]
or ecx, dword [ebp - 0x220]
mov dword [ebp - 0x224], ecx
mov dl, byte [ebp - 0x224]
mov byte [ebp - 0xd8], dl
movzx eax, byte [ebp - 0xd0]
mov cl, byte [ebp + eax - 0x880]
mov byte [ebp - 0xd6], cl
movzx edx, byte [ebp - 0xc7]
movzx eax, byte [ebp + edx - 0x880]
mov dword [ebp - 0x8e0], eax
mov cl, byte [ebp - 0xc7]
add cl, 1
mov byte [ebp - 0xc7], cl
movzx edx, byte [ebp - 0xca]
add edx, dword [ebp - 0x8e0]
mov byte [ebp - 0xca], dl
movzx eax, byte [ebp - 0xca]
movzx ecx, byte [ebp - 0xd0]
mov dl, byte [ebp + eax - 0x880]
mov byte [ebp + ecx - 0x880], dl
movzx eax, byte [ebp - 0xcb]
movzx ecx, byte [ebp - 0xca]
mov dl, byte [ebp + eax - 0x880]
mov byte [ebp + ecx - 0x880], dl
movzx eax, byte [ebp - 0xc7]
movzx ecx, byte [ebp - 0xcb]
mov dl, byte [ebp + eax - 0x880]
mov byte [ebp + ecx - 0x880], dl
movzx eax, byte [ebp - 0xc7]
mov cl, byte [ebp - 0xd6]
mov byte [ebp + eax - 0x880], cl
movzx edx, byte [ebp - 0xd6]
movzx eax, byte [ebp + edx - 0x880]
movzx ecx, byte [ebp - 0xd7]
add ecx, eax
mov byte [ebp - 0xd7], cl
movzx edx, byte [ebp - 0xd8]
movzx eax, byte [ebp - 0xca]
movzx ecx, byte [ebp + eax - 0x880]
movzx eax, byte [ebp - 0xc7]
movzx eax, byte [ebp + eax - 0x880]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x880]
xor edx, ecx
movzx eax, byte [ebp - 0xcb]
movzx ecx, byte [ebp + eax - 0x880]
movzx eax, byte [ebp - 0xd0]
movzx eax, byte [ebp + eax - 0x880]
add ecx, eax
movzx eax, byte [ebp - 0xd7]
movzx eax, byte [ebp + eax - 0x880]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x880]
movzx eax, byte [ebp + ecx - 0x880]
xor edx, eax
mov byte [ebp - 0xcb], dl
mov cl, byte [ebp - 0xd8]
mov byte [ebp - 0xd0], cl
mov dl, byte [ebp - 0xcb]
mov byte [ebp - 0xee], dl
cmp dword [ebp - 0xfc], 0
jle 0x4fd787
mov eax, dword [ebp - 0xfc]
mov cl, byte [ebp - 0xee]
mov byte [ebp + eax - 0x6d], cl
jmp 0x4fd516
mov edx, dword [ebp - 0x190]
add edx, 1
mov dword [ebp - 0x190], edx
mov eax, dword [ebp - 0xfc]
add eax, 1
mov dword [ebp - 0xfc], eax
mov ecx, dword [ebp - 0x190]
add ecx, 1
mov dword [ebp - 0x190], ecx
mov edx, dword [ebp - 0xfc]
shl edx, 1
mov dword [ebp - 0x22c], edx
mov eax, dword [ebp - 0x230]
add eax, dword [ebp - 0x22c]
movzx ecx, byte [eax]
mov dword [ebp - 0x204], ecx
mov dword [ebp - 0x208], 0x40
mov edx, dword [ebp - 0xfc]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x214], eax
mov ecx, dword [ebp - 0x230]
add ecx, dword [ebp - 0x214]
movzx edx, byte [ecx]
mov dword [ebp - 0x20c], edx
mov dword [ebp - 0x210], 0xcd
mov eax, dword [ebp - 0x204]
sub eax, dword [ebp - 0x208]
mov dword [ebp - 0x1f8], eax
mov ecx, dword [ebp - 0x20c]
sub ecx, dword [ebp - 0x210]
mov dword [ebp - 0x1fc], ecx
mov edx, dword [ebp - 0x1f8]
shl edx, 4
mov dword [ebp - 0x21c], edx
mov eax, dword [ebp - 0x1fc]
mov dword [ebp - 0x220], eax
mov ecx, dword [ebp - 0x21c]
or ecx, dword [ebp - 0x220]
mov dword [ebp - 0x224], ecx
mov dl, byte [ebp - 0x224]
mov byte [ebp - 0xd8], dl
movzx eax, byte [ebp - 0xd0]
mov cl, byte [ebp + eax - 0x880]
mov byte [ebp - 0xd6], cl
movzx edx, byte [ebp - 0xc7]
movzx eax, byte [ebp + edx - 0x880]
mov dword [ebp - 0x8e8], eax
mov cl, byte [ebp - 0xc7]
add cl, 1
mov byte [ebp - 0xc7], cl
movzx edx, byte [ebp - 0xca]
add edx, dword [ebp - 0x8e8]
mov byte [ebp - 0xca], dl
movzx eax, byte [ebp - 0xca]
movzx ecx, byte [ebp - 0xd0]
mov dl, byte [ebp + eax - 0x880]
mov byte [ebp + ecx - 0x880], dl
movzx eax, byte [ebp - 0xcb]
movzx ecx, byte [ebp - 0xca]
mov dl, byte [ebp + eax - 0x880]
mov byte [ebp + ecx - 0x880], dl
movzx eax, byte [ebp - 0xc7]
movzx ecx, byte [ebp - 0xcb]
mov dl, byte [ebp + eax - 0x880]
mov byte [ebp + ecx - 0x880], dl
movzx eax, byte [ebp - 0xc7]
mov cl, byte [ebp - 0xd6]
mov byte [ebp + eax - 0x880], cl
movzx edx, byte [ebp - 0xd6]
movzx eax, byte [ebp + edx - 0x880]
movzx ecx, byte [ebp - 0xd7]
add ecx, eax
mov byte [ebp - 0xd7], cl
movzx edx, byte [ebp - 0xd8]
movzx eax, byte [ebp - 0xca]
movzx ecx, byte [ebp + eax - 0x880]
movzx eax, byte [ebp - 0xc7]
movzx eax, byte [ebp + eax - 0x880]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x880]
xor edx, ecx
movzx eax, byte [ebp - 0xcb]
movzx ecx, byte [ebp + eax - 0x880]
movzx eax, byte [ebp - 0xd0]
movzx eax, byte [ebp + eax - 0x880]
add ecx, eax
movzx eax, byte [ebp - 0xd7]
movzx eax, byte [ebp + eax - 0x880]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x880]
movzx eax, byte [ebp + ecx - 0x880]
xor edx, eax
mov byte [ebp - 0xcb], dl
mov cl, byte [ebp - 0xd8]
mov byte [ebp - 0xd0], cl
mov dl, byte [ebp - 0xcb]
mov byte [ebp - 0xee], dl
cmp dword [ebp - 0xfc], 0
jle 0x4fd9fa
mov eax, dword [ebp - 0xfc]
mov cl, byte [ebp - 0xee]
mov byte [ebp + eax - 0x6d], cl
mov edx, 1
imul eax, edx, 0x15
mov dword [ebp - 0x608], eax
cmp dword [ebp - 0x608], 0x16
jae 0x4fda13
jmp 0x4fda19
call fcn.0051da65
nop
mov ecx, dword [ebp - 0x608]
mov byte [ebp + ecx - 0x6c], 0
jmp 0x4fda74
mov dword [ebp - 0x428], 0
jmp 0x4fda41
mov edx, dword [ebp - 0x428]
add edx, 1
mov dword [ebp - 0x428], edx
cmp dword [ebp - 0x428], 0x16
jge 0x4fda74
mov eax, dword [ebp - 0x428]
mov dword [ebp - 0x604], eax
cmp dword [ebp - 0x604], 0x16
jae 0x4fda61
jmp 0x4fda67
call fcn.0051da65
nop
mov ecx, dword [ebp - 0x604]
mov byte [ebp + ecx - 0x6c], 0
jmp 0x4fda32
lea edx, [ebp - 0x6c]
push edx
mov ecx, dword [ebp - 0x65c]
call fcn.004d9930
mov dword [ebp - 0x8ec], eax
mov eax, dword [ebp - 0x8ec]
mov dword [ebp - 0x8f0], eax
lea ecx, [ebp - 0x88]
push ecx
mov edx, dword [ebp + 0xc]
push edx
push 0
call dword [ebp - 0x8f0]
test eax, eax
jne 0x4fdab3
xor eax, eax
jmp 0x503664
mov dword [ebp - 0x98], 1
mov eax, 0xc
imul ecx, eax, 0
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x84]
mov dword [ebp + ecx - 0x94], edx
mov dword [ebp + ecx - 0x90], eax
cmp dword [ebp + 0x10], 0
je 0x4fdafa
mov ecx, 0xc
imul edx, ecx, 0
mov dword [ebp + edx - 0x8c], 2
jmp 0x4fdb0d
mov eax, 0xc
imul ecx, eax, 0
mov dword [ebp + ecx - 0x8c], 0
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xb8], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x410], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x398], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x398], xmm0
jmp 0x4fdb5c
movsd xmm0, qword [ebp - 0x398]
addsd xmm0, qword [0x52f8c8]
movsd qword [ebp - 0x398], xmm0
movsd xmm0, qword [0x532358]
comisd xmm0, xmmword [ebp - 0x398]
jbe 0x4fdc0d
movsd xmm0, qword [0x5322e0]
mulsd xmm0, qword [ebp - 0x398]
mulsd xmm0, qword [ebp - 0x398]
movsd xmm1, qword [ebp - 0x398]
mulsd xmm1, qword [ebp - 0x398]
subsd xmm0, xmm1
movsd xmm1, qword [0x5316b0]
mulsd xmm1, qword [ebp - 0x398]
mulsd xmm1, qword [ebp - 0x398]
addsd xmm1, qword [0x5322a0]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x410]
movsd qword [ebp - 0x410], xmm0
movsd xmm0, qword [ebp - 0x410]
comisd xmm0, xmmword [0x5322d0]
jbe 0x4fdc08
movsd xmm0, qword [0x532258]
mulsd xmm0, qword [ebp - 0x398]
movsd xmm1, qword [ebp - 0x410]
subsd xmm1, xmm0
movsd qword [ebp - 0x410], xmm1
jmp 0x4fdb44
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x410]
jbe 0x4fdc60
and al, 0x64
imul edi, dword [ecx], 0x4f6e7e32
jl 0x4fdc45
jp 0x4fdc9d
cmp eax, dword [ecx + 0x39]
sub byte [edi], dh
jno 0x4fdc56
je 0x4fdca7
jnp 0x4fdc72
jle 0x4fdc71
je 0x4fdc6d
jns 0x4fdc79
jl 0x4fdc6f
jne 0x4fdc7b
jge 0x4fdc74
jg 0x4fdc75
je 0x4fdc81
je 0x4fdc7c
add byte [edx + 0x74], 0x3a
je 0x4fdc81
add dword [edx + 0x7e], 0x37
jg 0x4fdc88
jp 0x4fdc89
cmp byte [ecx], 0x76
aas
ja 0x4fdc8a
jp 0x4fdc8a
xor esi, dword [ebp + 0x3f]
jne 0x4fdc98
jle 0x4fdc95
jmp 0x5012e9
mov dword [ebp - 0xa4], 0x4fdc2f
mov dword [ebp - 0xb8], 0x4fdc1a
invalid
call [edx]
fmul qword [edi]
dec edi
add byte [ebx - 0xa36b], cl
mov edx, dword [ebp - 0xa4]
mov dword [ebp - 0x18c], edx
mov eax, dword [ebp - 0xb8]
mov dword [ebp - 0x93c], eax
mov byte [ebp - 0x243], 0x19
xchg ebp, eax
pop esp
invalid
dec dword [ecx - 0x18b6b]
dec dword [ebx - 0xb77b]
dec dword [ecx - 0x93b7b]
xchg ebp, eax
je 0x4fdc7c
invalid
test dword [eax - 1], ecx
invalid
invalid
idiv bh
invalid
inc esi
test dword [ebp + 0x19fffffd], edi
mov dword [ebp - 0x1dc], 0
and al, 0xfe
invalid
inc dword [eax]
add byte [eax], al
add bl, ch
jnp 0x4e0131
jmp 0x4fdcae
mov ecx, dword [ebp - 0x1dc]
add ecx, 1
mov dword [ebp - 0x1dc], ecx
inc dword [ebx - 0x7276fe3f]
and al, 0xfe
invalid
add dword [ecx - 0x1db73], ecx
inc dword [ecx - 0x1db43]
inc dword [eax]
add dword [eax], eax
add byte [ebx + 0x15], dh
cmp dword [ebp - 0x1dc], 0x100
jae 0x4fdccf
mov edx, dword [ebp - 0x1dc]
mov al, byte [ebp - 0x1dc]
mov byte [ebp + edx - 0x5f8], al
jmp 0x4fdc9f
mov dword [ebp - 0x328], 0
mov byte [ebp - 0xed], 0
mov dword [ebp - 0x1dc], 0xff
jmp 0x4fdcfb
mov ecx, dword [ebp - 0x1dc]
sub ecx, 1
mov dword [ebp - 0x1dc], ecx
cmp dword [ebp - 0x1dc], 0
jbe 0x4fdf6b
mov dword [ebp - 0x4b4], 0
mov dword [ebp - 0x424], 1
mov edx, dword [ebp - 0x424]
cmp edx, dword [ebp - 0x1dc]
jae 0x4fdd3c
mov eax, dword [ebp - 0x424]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x424], ecx
jmp 0x4fdd1c
mov edx, dword [ebp - 0x328]
mov dword [ebp - 0x600], edx
cmp dword [ebp - 0x600], 3
ja case.default.0x4fdd5b
mov eax, dword [ebp - 0x600]
jmp dword [eax*4 + 0x5036a4]
movzx ecx, byte [ebp - 0xed]
movzx ebx, byte [ebp + ecx - 0x5f8]
movsd xmm0, qword [ebp - 0x410]
call fcn.0051dea0
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xed], bl
jmp 0x4fde44
movzx edx, byte [ebp - 0xed]
movzx ebx, byte [ebp + edx - 0x5f8]
movsd xmm0, qword [ebp - 0x410]
call fcn.0051dea0
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xed], bl
jmp 0x4fde44
movzx eax, byte [ebp - 0xed]
movzx ebx, byte [ebp + eax - 0x5f8]
movsd xmm0, qword [ebp - 0x410]
call fcn.0051dea0
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xed], bl
jmp 0x4fde44
movzx ecx, byte [ebp - 0xed]
movzx ebx, byte [ebp + ecx - 0x5f8]
movsd xmm0, qword [ebp - 0x410]
call fcn.0051dea0
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xed], bl
jmp 0x4fde44
movzx edx, byte [ebp - 0xed]
movzx eax, byte [ebp + edx - 0x5f8]
mov ecx, dword [ebp - 0x93c]
add ecx, dword [ebp - 0x328]
movzx edx, byte [ecx - 4]
add eax, edx
mov byte [ebp - 0xed], al
mov eax, dword [ebp - 0x328]
add eax, 1
mov dword [ebp - 0x328], eax
movzx ecx, byte [ebp - 0x243]
cmp dword [ebp - 0x328], ecx
jb 0x4fde82
mov dword [ebp - 0x328], 0
movzx edx, byte [ebp - 0x243]
movzx eax, byte [ebp - 0xed]
add eax, edx
mov byte [ebp - 0xed], al
movzx ecx, byte [ebp - 0xed]
and ecx, dword [ebp - 0x424]
mov dword [ebp - 0x2b4], ecx
mov edx, dword [ebp - 0x4b4]
add edx, 1
mov dword [ebp - 0x4b4], edx
cmp dword [ebp - 0x4b4], 0xb
jbe 0x4fdec1
mov eax, dword [ebp - 0x2b4]
xor edx, edx
div dword [ebp - 0x1dc]
mov dword [ebp - 0x2b4], edx
mov eax, dword [ebp - 0x2b4]
cmp eax, dword [ebp - 0x1dc]
ja 0x4fdd3c
mov ecx, dword [ebp - 0x1dc]
cmp ecx, dword [ebp - 0x2b4]
je 0x4fdf66
mov edx, dword [ebp - 0x2b4]
movzx eax, byte [ebp + edx - 0x5f8]
mov ecx, dword [ebp - 0x1dc]
movzx edx, byte [ebp + ecx - 0x5f8]
xor edx, eax
mov eax, dword [ebp - 0x1dc]
mov byte [ebp + eax - 0x5f8], dl
mov ecx, dword [ebp - 0x1dc]
movzx edx, byte [ebp + ecx - 0x5f8]
mov eax, dword [ebp - 0x2b4]
movzx ecx, byte [ebp + eax - 0x5f8]
xor ecx, edx
mov edx, dword [ebp - 0x2b4]
mov byte [ebp + edx - 0x5f8], cl
mov eax, dword [ebp - 0x2b4]
movzx ecx, byte [ebp + eax - 0x5f8]
mov edx, dword [ebp - 0x1dc]
movzx eax, byte [ebp + edx - 0x5f8]
xor eax, ecx
mov ecx, dword [ebp - 0x1dc]
mov byte [ebp + ecx - 0x5f8], al
jmp 0x4fdcec
mov edx, 1
shl edx, 0
mov al, byte [ebp + edx - 0x5f8]
mov byte [ebp - 0xc1], al
mov ecx, 1
imul edx, ecx, 3
mov al, byte [ebp + edx - 0x5f8]
mov byte [ebp - 0xc3], al
mov ecx, 1
imul edx, ecx, 5
mov al, byte [ebp + edx - 0x5f8]
mov byte [ebp - 0xcd], al
mov ecx, 1
imul edx, ecx, 7
mov al, byte [ebp + edx - 0x5f8]
mov byte [ebp - 0xc4], al
movzx ecx, byte [ebp - 0xed]
mov dl, byte [ebp + ecx - 0x5f8]
mov byte [ebp - 0xc8], dl
mov dword [ebp - 0x5fc], 0x2c
cmp dword [ebp - 0x5fc], 2
jle 0x50129b
mov eax, dword [ebp - 0x5fc]
and eax, 1
jne 0x50129b
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0x134], 0
mov ecx, dword [ebp - 0x134]
add ecx, 1
mov dword [ebp - 0x134], ecx
mov dword [ebp - 0x188], 0
mov edx, dword [ebp - 0xe8]
shl edx, 1
mov dword [ebp - 0x188], edx
mov dword [ebp - 0x170], 0
mov eax, dword [ebp - 0x18c]
add eax, dword [ebp - 0x188]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x170]
mov dword [ebp - 0x170], ecx
mov dword [ebp - 0x16c], 0
mov edx, dword [ebp - 0x16c]
add edx, 0x74
mov dword [ebp - 0x16c], edx
mov dword [ebp - 0x178], 0
mov eax, dword [ebp - 0xe8]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x178], ecx
mov dword [ebp - 0x168], 0
mov edx, dword [ebp - 0x18c]
add edx, dword [ebp - 0x178]
movzx eax, byte [edx]
add eax, dword [ebp - 0x168]
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x154], 0
mov ecx, dword [ebp - 0x154]
add ecx, 0x33
mov dword [ebp - 0x154], ecx
mov dword [ebp - 0x164], 0
mov edx, dword [ebp - 0x170]
sub edx, dword [ebp - 0x16c]
add edx, dword [ebp - 0x164]
mov dword [ebp - 0x164], edx
mov dword [ebp - 0x160], 0
mov eax, dword [ebp - 0x168]
sub eax, dword [ebp - 0x154]
add eax, dword [ebp - 0x160]
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x17c], 0
mov ecx, dword [ebp - 0x164]
shl ecx, 4
mov dword [ebp - 0x17c], ecx
mov dword [ebp - 0x180], 0
mov edx, dword [ebp - 0x160]
mov dword [ebp - 0x180], edx
mov dword [ebp - 0x184], 0
mov eax, dword [ebp - 0x17c]
or eax, dword [ebp - 0x180]
mov dword [ebp - 0x184], eax
mov byte [ebp - 0xce], 0
mov cl, byte [ebp - 0x184]
mov byte [ebp - 0xce], cl
mov byte [ebp - 0xcc], 0
movzx edx, byte [ebp - 0xc8]
mov al, byte [ebp + edx - 0x5f8]
mov byte [ebp - 0xcc], al
movzx ecx, byte [ebp - 0xc1]
movzx edx, byte [ebp + ecx - 0x5f8]
mov dword [ebp - 0x884], edx
mov al, byte [ebp - 0xc1]
add al, 1
mov byte [ebp - 0xc1], al
movzx ecx, byte [ebp - 0xc3]
add ecx, dword [ebp - 0x884]
mov byte [ebp - 0xc3], cl
movzx edx, byte [ebp - 0xc3]
movzx eax, byte [ebp - 0xc8]
mov cl, byte [ebp + edx - 0x5f8]
mov byte [ebp + eax - 0x5f8], cl
movzx edx, byte [ebp - 0xc4]
movzx eax, byte [ebp - 0xc3]
mov cl, byte [ebp + edx - 0x5f8]
mov byte [ebp + eax - 0x5f8], cl
movzx edx, byte [ebp - 0xc1]
movzx eax, byte [ebp - 0xc4]
mov cl, byte [ebp + edx - 0x5f8]
mov byte [ebp + eax - 0x5f8], cl
movzx edx, byte [ebp - 0xc1]
mov al, byte [ebp - 0xcc]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xcc]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx eax, byte [ebp - 0xcd]
add eax, edx
mov byte [ebp - 0xcd], al
movzx ecx, byte [ebp - 0xce]
movzx edx, byte [ebp - 0xc3]
movzx eax, byte [ebp + edx - 0x5f8]
movzx edx, byte [ebp - 0xc1]
movzx edx, byte [ebp + edx - 0x5f8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5f8]
xor ecx, eax
movzx edx, byte [ebp - 0xc4]
movzx eax, byte [ebp + edx - 0x5f8]
movzx edx, byte [ebp - 0xc8]
movzx edx, byte [ebp + edx - 0x5f8]
add eax, edx
movzx edx, byte [ebp - 0xcd]
movzx edx, byte [ebp + edx - 0x5f8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5f8]
movzx edx, byte [ebp + eax - 0x5f8]
xor ecx, edx
mov byte [ebp - 0xc4], cl
mov al, byte [ebp - 0xce]
mov byte [ebp - 0xc8], al
mov cl, byte [ebp - 0xc4]
mov byte [ebp - 0xda], cl
cmp dword [ebp - 0xe8], 0
jle 0x4fe2f8
mov edx, dword [ebp - 0xe8]
mov al, byte [ebp - 0xda]
mov byte [ebp + edx - 0x39], al
mov ecx, dword [ebp - 0x134]
add ecx, 7
mov dword [ebp - 0x134], ecx
mov edx, dword [ebp - 0xe8]
add edx, 1
mov dword [ebp - 0x4b8], edx
jmp 0x4fe327
mov eax, dword [ebp - 0x4b8]
add eax, 1
mov dword [ebp - 0x4b8], eax
mov ecx, dword [ebp - 0x4b8]
cmp ecx, dword [ebp - 0x134]
jge 0x4fe58e
mov edx, dword [ebp - 0xe8]
add edx, 1
mov dword [ebp - 0xe8], edx
mov eax, dword [ebp - 0xe8]
shl eax, 1
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x18c]
add ecx, dword [ebp - 0x188]
movzx edx, byte [ecx]
mov dword [ebp - 0x170], edx
mov dword [ebp - 0x16c], 0x74
mov eax, dword [ebp - 0xe8]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x178], ecx
mov edx, dword [ebp - 0x18c]
add edx, dword [ebp - 0x178]
movzx eax, byte [edx]
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x154], 0x33
mov ecx, dword [ebp - 0x170]
sub ecx, dword [ebp - 0x16c]
mov dword [ebp - 0x164], ecx
mov edx, dword [ebp - 0x168]
sub edx, dword [ebp - 0x154]
mov dword [ebp - 0x160], edx
mov eax, dword [ebp - 0x164]
shl eax, 4
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x160]
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x17c]
or edx, dword [ebp - 0x180]
mov dword [ebp - 0x184], edx
mov al, byte [ebp - 0x184]
mov byte [ebp - 0xce], al
movzx ecx, byte [ebp - 0xc8]
mov dl, byte [ebp + ecx - 0x5f8]
mov byte [ebp - 0xcc], dl
movzx eax, byte [ebp - 0xc1]
movzx ecx, byte [ebp + eax - 0x5f8]
mov dword [ebp - 0x938], ecx
mov dl, byte [ebp - 0xc1]
add dl, 1
mov byte [ebp - 0xc1], dl
movzx eax, byte [ebp - 0xc3]
add eax, dword [ebp - 0x938]
mov byte [ebp - 0xc3], al
movzx ecx, byte [ebp - 0xc3]
movzx edx, byte [ebp - 0xc8]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc4]
movzx edx, byte [ebp - 0xc3]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc1]
movzx edx, byte [ebp - 0xc4]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc1]
mov dl, byte [ebp - 0xcc]
mov byte [ebp + ecx - 0x5f8], dl
movzx eax, byte [ebp - 0xcc]
movzx ecx, byte [ebp + eax - 0x5f8]
movzx edx, byte [ebp - 0xcd]
add edx, ecx
mov byte [ebp - 0xcd], dl
movzx eax, byte [ebp - 0xce]
movzx ecx, byte [ebp - 0xc3]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx ecx, byte [ebp - 0xc1]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5f8]
xor eax, edx
movzx ecx, byte [ebp - 0xc4]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx ecx, byte [ebp - 0xc8]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
movzx ecx, byte [ebp - 0xcd]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5f8]
movzx ecx, byte [ebp + edx - 0x5f8]
xor eax, ecx
mov byte [ebp - 0xc4], al
mov dl, byte [ebp - 0xce]
mov byte [ebp - 0xc8], dl
mov al, byte [ebp - 0xc4]
mov byte [ebp - 0xda], al
cmp dword [ebp - 0xe8], 0
jle 0x4fe589
mov ecx, dword [ebp - 0xe8]
mov dl, byte [ebp - 0xda]
mov byte [ebp + ecx - 0x39], dl
jmp 0x4fe318
mov eax, dword [ebp - 0x134]
add eax, 1
mov dword [ebp - 0x134], eax
mov ecx, dword [ebp - 0xe8]
add ecx, 1
mov dword [ebp - 0xe8], ecx
mov edx, dword [ebp - 0x134]
add edx, 1
mov dword [ebp - 0x134], edx
mov eax, dword [ebp - 0xe8]
shl eax, 1
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x18c]
add ecx, dword [ebp - 0x188]
movzx edx, byte [ecx]
mov dword [ebp - 0x170], edx
mov dword [ebp - 0x16c], 0x74
mov eax, dword [ebp - 0xe8]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x178], ecx
mov edx, dword [ebp - 0x18c]
add edx, dword [ebp - 0x178]
movzx eax, byte [edx]
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x154], 0x33
mov ecx, dword [ebp - 0x170]
sub ecx, dword [ebp - 0x16c]
mov dword [ebp - 0x164], ecx
mov edx, dword [ebp - 0x168]
sub edx, dword [ebp - 0x154]
mov dword [ebp - 0x160], edx
mov eax, dword [ebp - 0x164]
shl eax, 4
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x160]
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x17c]
or edx, dword [ebp - 0x180]
mov dword [ebp - 0x184], edx
mov al, byte [ebp - 0x184]
mov byte [ebp - 0xce], al
movzx ecx, byte [ebp - 0xc8]
mov dl, byte [ebp + ecx - 0x5f8]
mov byte [ebp - 0xcc], dl
movzx eax, byte [ebp - 0xc1]
movzx ecx, byte [ebp + eax - 0x5f8]
mov dword [ebp - 0x888], ecx
mov dl, byte [ebp - 0xc1]
add dl, 1
mov byte [ebp - 0xc1], dl
movzx eax, byte [ebp - 0xc3]
add eax, dword [ebp - 0x888]
mov byte [ebp - 0xc3], al
movzx ecx, byte [ebp - 0xc3]
movzx edx, byte [ebp - 0xc8]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc4]
movzx edx, byte [ebp - 0xc3]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc1]
movzx edx, byte [ebp - 0xc4]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc1]
mov dl, byte [ebp - 0xcc]
mov byte [ebp + ecx - 0x5f8], dl
movzx eax, byte [ebp - 0xcc]
movzx ecx, byte [ebp + eax - 0x5f8]
movzx edx, byte [ebp - 0xcd]
add edx, ecx
mov byte [ebp - 0xcd], dl
movzx eax, byte [ebp - 0xce]
movzx ecx, byte [ebp - 0xc3]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx ecx, byte [ebp - 0xc1]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5f8]
xor eax, edx
movzx ecx, byte [ebp - 0xc4]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx ecx, byte [ebp - 0xc8]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
movzx ecx, byte [ebp - 0xcd]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5f8]
movzx ecx, byte [ebp + edx - 0x5f8]
xor eax, ecx
mov byte [ebp - 0xc4], al
mov dl, byte [ebp - 0xce]
mov byte [ebp - 0xc8], dl
mov al, byte [ebp - 0xc4]
mov byte [ebp - 0xda], al
cmp dword [ebp - 0xe8], 0
jle 0x4fe7fc
mov ecx, dword [ebp - 0xe8]
mov dl, byte [ebp - 0xda]
mov byte [ebp + ecx - 0x39], dl
mov eax, dword [ebp - 0xe8]
add eax, 1
mov dword [ebp - 0xe8], eax
mov ecx, dword [ebp - 0x134]
add ecx, 1
mov dword [ebp - 0x134], ecx
mov edx, dword [ebp - 0xe8]
shl edx, 1
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x18c]
add eax, dword [ebp - 0x188]
movzx ecx, byte [eax]
mov dword [ebp - 0x170], ecx
mov dword [ebp - 0x16c], 0x74
mov edx, dword [ebp - 0xe8]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x178], eax
mov ecx, dword [ebp - 0x18c]
add ecx, dword [ebp - 0x178]
movzx edx, byte [ecx]
mov dword [ebp - 0x168], edx
mov dword [ebp - 0x154], 0x33
mov eax, dword [ebp - 0x170]
sub eax, dword [ebp - 0x16c]
mov dword [ebp - 0x164], eax
mov ecx, dword [ebp - 0x168]
sub ecx, dword [ebp - 0x154]
mov dword [ebp - 0x160], ecx
mov edx, dword [ebp - 0x164]
shl edx, 4
mov dword [ebp - 0x17c], edx
movsd xmm0, qword [0x5324a8]
movsd qword [ebp - 0x4f8], xmm0
movsd xmm0, qword [0x532490]
movsd qword [ebp - 0x374], xmm0
movsd xmm0, qword [0x532430]
movsd qword [ebp - 0x418], xmm0
movsd xmm0, qword [0x5323c8]
movsd qword [ebp - 0x408], xmm0
movsd xmm0, qword [0x532340]
movsd qword [ebp - 0x400], xmm0
movsd xmm0, qword [ebp - 0x418]
mulsd xmm0, qword [ebp - 0x400]
movsd qword [ebp - 0x418], xmm0
movsd xmm0, qword [ebp - 0x408]
subsd xmm0, qword [ebp - 0x400]
movsd qword [ebp - 0x408], xmm0
movsd xmm0, qword [ebp - 0x374]
mulsd xmm0, qword [ebp - 0x400]
movsd qword [ebp - 0x374], xmm0
movsd xmm0, qword [ebp - 0x374]
addsd xmm0, qword [ebp - 0x400]
movsd qword [ebp - 0x374], xmm0
movsd xmm0, qword [ebp - 0x408]
subsd xmm0, qword [ebp - 0x400]
movsd qword [ebp - 0x408], xmm0
movsd xmm0, qword [ebp - 0x408]
comisd xmm0, xmmword [ebp - 0x374]
jbe 0x4fea00
movsd xmm0, qword [ebp - 0x408]
addsd xmm0, qword [ebp - 0x400]
movsd qword [ebp - 0x408], xmm0
movsd xmm0, qword [ebp - 0x418]
mulsd xmm0, qword [ebp - 0x408]
movsd qword [ebp - 0x418], xmm0
movsd xmm0, qword [ebp - 0x418]
addsd xmm0, qword [ebp - 0x408]
movsd qword [ebp - 0x418], xmm0
movsd xmm0, qword [ebp - 0x374]
divsd xmm0, qword [ebp - 0x418]
movsd qword [ebp - 0x374], xmm0
movsd xmm0, qword [ebp - 0x4f8]
subsd xmm0, qword [ebp - 0x374]
movsd qword [ebp - 0x4f8], xmm0
jmp 0x4fea84
movsd xmm0, qword [ebp - 0x374]
addsd xmm0, qword [ebp - 0x408]
movsd qword [ebp - 0x374], xmm0
movsd xmm0, qword [ebp - 0x400]
subsd xmm0, qword [ebp - 0x374]
movsd qword [ebp - 0x400], xmm0
movsd xmm0, qword [ebp - 0x4f8]
mulsd xmm0, qword [ebp - 0x418]
movsd qword [ebp - 0x4f8], xmm0
movsd xmm0, qword [ebp - 0x4f8]
mulsd xmm0, qword [ebp - 0x418]
movsd qword [ebp - 0x4f8], xmm0
movsd xmm0, qword [ebp - 0x400]
subsd xmm0, qword [ebp - 0x374]
movsd qword [ebp - 0x400], xmm0
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x180], eax
mov ecx, dword [ebp - 0x17c]
or ecx, dword [ebp - 0x180]
mov dword [ebp - 0x184], ecx
mov dl, byte [ebp - 0x184]
mov byte [ebp - 0xce], dl
movzx eax, byte [ebp - 0xc8]
mov cl, byte [ebp + eax - 0x5f8]
mov byte [ebp - 0xcc], cl
movzx edx, byte [ebp - 0xc1]
movzx eax, byte [ebp + edx - 0x5f8]
mov dword [ebp - 0x894], eax
mov cl, byte [ebp - 0xc1]
add cl, 1
mov byte [ebp - 0xc1], cl
movzx edx, byte [ebp - 0xc3]
add edx, dword [ebp - 0x894]
mov byte [ebp - 0xc3], dl
movzx eax, byte [ebp - 0xc3]
movzx ecx, byte [ebp - 0xc8]
mov dl, byte [ebp + eax - 0x5f8]
mov byte [ebp + ecx - 0x5f8], dl
movzx eax, byte [ebp - 0xc4]
movzx ecx, byte [ebp - 0xc3]
mov dl, byte [ebp + eax - 0x5f8]
mov byte [ebp + ecx - 0x5f8], dl
movzx eax, byte [ebp - 0xc1]
movzx ecx, byte [ebp - 0xc4]
mov dl, byte [ebp + eax - 0x5f8]
mov byte [ebp + ecx - 0x5f8], dl
movzx eax, byte [ebp - 0xc1]
mov cl, byte [ebp - 0xcc]
mov byte [ebp + eax - 0x5f8], cl
movzx edx, byte [ebp - 0xcc]
movzx eax, byte [ebp + edx - 0x5f8]
movzx ecx, byte [ebp - 0xcd]
add ecx, eax
mov byte [ebp - 0xcd], cl
movzx edx, byte [ebp - 0xce]
movzx eax, byte [ebp - 0xc3]
movzx ecx, byte [ebp + eax - 0x5f8]
movzx eax, byte [ebp - 0xc1]
movzx eax, byte [ebp + eax - 0x5f8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5f8]
xor edx, ecx
movzx eax, byte [ebp - 0xc4]
movzx ecx, byte [ebp + eax - 0x5f8]
movzx eax, byte [ebp - 0xc8]
movzx eax, byte [ebp + eax - 0x5f8]
add ecx, eax
movzx eax, byte [ebp - 0xcd]
movzx eax, byte [ebp + eax - 0x5f8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5f8]
movzx eax, byte [ebp + ecx - 0x5f8]
xor edx, eax
mov byte [ebp - 0xc4], dl
mov cl, byte [ebp - 0xce]
mov byte [ebp - 0xc8], cl
mov dl, byte [ebp - 0xc4]
mov byte [ebp - 0xda], dl
cmp dword [ebp - 0xe8], 0
jle 0x4fec2a
mov eax, dword [ebp - 0xe8]
mov cl, byte [ebp - 0xda]
mov byte [ebp + eax - 0x39], cl
mov edx, dword [ebp - 0xe8]
add edx, 1
mov dword [ebp - 0xe8], edx
mov eax, dword [ebp - 0x134]
add eax, 1
mov dword [ebp - 0x134], eax
mov ecx, dword [ebp - 0xe8]
shl ecx, 1
mov dword [ebp - 0x188], ecx
mov edx, dword [ebp - 0x18c]
add edx, dword [ebp - 0x188]
movzx eax, byte [edx]
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x16c], 0x74
mov ecx, dword [ebp - 0xe8]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x178], edx
mov eax, dword [ebp - 0x18c]
add eax, dword [ebp - 0x178]
movzx ecx, byte [eax]
mov dword [ebp - 0x168], ecx
mov dword [ebp - 0x154], 0x33
mov edx, dword [ebp - 0x170]
sub edx, dword [ebp - 0x16c]
mov dword [ebp - 0x164], edx
mov eax, dword [ebp - 0x168]
sub eax, dword [ebp - 0x154]
mov dword [ebp - 0x160], eax
mov ecx, dword [ebp - 0x164]
shl ecx, 4
mov dword [ebp - 0x17c], ecx
mov edx, dword [ebp - 0x160]
mov dword [ebp - 0x180], edx
mov eax, dword [ebp - 0x17c]
or eax, dword [ebp - 0x180]
mov dword [ebp - 0x184], eax
mov cl, byte [ebp - 0x184]
mov byte [ebp - 0xce], cl
movsd xmm0, qword [0x532468]
movsd qword [ebp - 0x36c], xmm0
movsd xmm0, qword [0x5323f8]
movsd qword [ebp - 0x640], xmm0
movsd xmm0, qword [0x532368]
movsd qword [ebp - 0x364], xmm0
movsd xmm0, qword [ebp - 0x36c]
mulsd xmm0, qword [ebp - 0x364]
movsd qword [ebp - 0x36c], xmm0
movsd xmm0, qword [ebp - 0x36c]
subsd xmm0, qword [ebp - 0x364]
movsd qword [ebp - 0x36c], xmm0
movsd xmm0, qword [ebp - 0x36c]
subsd xmm0, qword [ebp - 0x364]
movsd qword [ebp - 0x36c], xmm0
movsd xmm0, qword [ebp - 0x364]
comisd xmm0, xmmword [ebp - 0x36c]
jbe 0x4fedd5
movsd xmm0, qword [ebp - 0x640]
subsd xmm0, qword [ebp - 0x364]
movsd qword [ebp - 0x640], xmm0
movsd xmm0, qword [ebp - 0x640]
addsd xmm0, qword [ebp - 0x364]
movsd qword [ebp - 0x640], xmm0
movsd xmm0, qword [ebp - 0x364]
addsd xmm0, qword [ebp - 0x36c]
movsd qword [ebp - 0x364], xmm0
jmp 0x4fee31
movsd xmm0, qword [ebp - 0x36c]
addsd xmm0, qword [ebp - 0x364]
movsd qword [ebp - 0x36c], xmm0
movsd xmm0, qword [ebp - 0x36c]
subsd xmm0, qword [ebp - 0x364]
movsd qword [ebp - 0x36c], xmm0
movsd xmm0, qword [ebp - 0x364]
addsd xmm0, qword [ebp - 0x640]
movsd qword [ebp - 0x364], xmm0
movzx edx, byte [ebp - 0xc8]
mov al, byte [ebp + edx - 0x5f8]
mov byte [ebp - 0xcc], al
movzx ecx, byte [ebp - 0xc1]
movzx edx, byte [ebp + ecx - 0x5f8]
mov dword [ebp - 0x890], edx
mov al, byte [ebp - 0xc1]
add al, 1
mov byte [ebp - 0xc1], al
movzx ecx, byte [ebp - 0xc3]
add ecx, dword [ebp - 0x890]
mov byte [ebp - 0xc3], cl
movzx edx, byte [ebp - 0xc3]
movzx eax, byte [ebp - 0xc8]
mov cl, byte [ebp + edx - 0x5f8]
mov byte [ebp + eax - 0x5f8], cl
movzx edx, byte [ebp - 0xc4]
movzx eax, byte [ebp - 0xc3]
mov cl, byte [ebp + edx - 0x5f8]
mov byte [ebp + eax - 0x5f8], cl
movzx edx, byte [ebp - 0xc1]
movzx eax, byte [ebp - 0xc4]
mov cl, byte [ebp + edx - 0x5f8]
mov byte [ebp + eax - 0x5f8], cl
movzx edx, byte [ebp - 0xc1]
mov al, byte [ebp - 0xcc]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xcc]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx eax, byte [ebp - 0xcd]
add eax, edx
mov byte [ebp - 0xcd], al
movzx ecx, byte [ebp - 0xce]
movzx edx, byte [ebp - 0xc3]
movzx eax, byte [ebp + edx - 0x5f8]
movzx edx, byte [ebp - 0xc1]
movzx edx, byte [ebp + edx - 0x5f8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5f8]
xor ecx, eax
movzx edx, byte [ebp - 0xc4]
movzx eax, byte [ebp + edx - 0x5f8]
movzx edx, byte [ebp - 0xc8]
movzx edx, byte [ebp + edx - 0x5f8]
add eax, edx
movzx edx, byte [ebp - 0xcd]
movzx edx, byte [ebp + edx - 0x5f8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5f8]
movzx edx, byte [ebp + eax - 0x5f8]
xor ecx, edx
mov byte [ebp - 0xc4], cl
mov al, byte [ebp - 0xce]
mov byte [ebp - 0xc8], al
mov cl, byte [ebp - 0xc4]
mov byte [ebp - 0xda], cl
cmp dword [ebp - 0xe8], 0
jle 0x4fefa2
mov edx, dword [ebp - 0xe8]
mov al, byte [ebp - 0xda]
mov byte [ebp + edx - 0x39], al
mov ecx, dword [ebp - 0x134]
add ecx, 7
mov dword [ebp - 0x134], ecx
mov edx, dword [ebp - 0xe8]
add edx, 1
mov dword [ebp - 0x4bc], edx
jmp 0x4fefd1
mov eax, dword [ebp - 0x4bc]
add eax, 1
mov dword [ebp - 0x4bc], eax
mov ecx, dword [ebp - 0x4bc]
cmp ecx, dword [ebp - 0x134]
jge 0x4ffb61
mov edx, dword [ebp - 0xe8]
add edx, 1
mov dword [ebp - 0xe8], edx
mov eax, dword [ebp - 0xe8]
shl eax, 1
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x18c]
add ecx, dword [ebp - 0x188]
movzx edx, byte [ecx]
mov dword [ebp - 0x170], edx
mov dword [ebp - 0x16c], 0x74
movsd xmm0, qword [0x532470]
movsd qword [ebp - 0x35c], xmm0
movsd xmm0, qword [0x532438]
movsd qword [ebp - 0x448], xmm0
movsd xmm0, qword [0x532408]
movsd qword [ebp - 0x474], xmm0
movsd xmm0, qword [0x5323d0]
movsd qword [ebp - 0x768], xmm0
movsd xmm0, qword [0x5323a8]
movsd qword [ebp - 0x380], xmm0
movsd xmm0, qword [0x532348]
movsd qword [ebp - 0x47c], xmm0
movsd xmm0, qword [0x532310]
movsd qword [ebp - 0x30c], xmm0
movsd xmm0, qword [ebp - 0x448]
subsd xmm0, qword [ebp - 0x30c]
movsd qword [ebp - 0x448], xmm0
movsd xmm0, qword [ebp - 0x380]
addsd xmm0, qword [ebp - 0x30c]
movsd qword [ebp - 0x380], xmm0
movsd xmm0, qword [ebp - 0x448]
mulsd xmm0, qword [ebp - 0x30c]
movsd qword [ebp - 0x448], xmm0
movsd xmm0, qword [ebp - 0x448]
subsd xmm0, qword [ebp - 0x30c]
movsd qword [ebp - 0x448], xmm0
movsd xmm0, qword [ebp - 0x47c]
mulsd xmm0, qword [ebp - 0x30c]
movsd qword [ebp - 0x47c], xmm0
movsd xmm0, qword [ebp - 0x47c]
subsd xmm0, qword [ebp - 0x30c]
movsd qword [ebp - 0x47c], xmm0
movsd xmm0, qword [ebp - 0x35c]
mulsd xmm0, qword [ebp - 0x30c]
movsd qword [ebp - 0x35c], xmm0
movsd xmm0, qword [ebp - 0x30c]
comisd xmm0, xmmword [ebp - 0x35c]
jbe 0x4ff1fa
movsd xmm0, qword [ebp - 0x380]
divsd xmm0, qword [ebp - 0x30c]
movsd qword [ebp - 0x380], xmm0
movsd xmm0, qword [ebp - 0x448]
divsd xmm0, qword [ebp - 0x768]
movsd qword [ebp - 0x448], xmm0
movsd xmm0, qword [ebp - 0x47c]
divsd xmm0, qword [ebp - 0x35c]
movsd qword [ebp - 0x47c], xmm0
movsd xmm0, qword [ebp - 0x35c]
divsd xmm0, qword [ebp - 0x474]
movsd qword [ebp - 0x35c], xmm0
movsd xmm0, qword [ebp - 0x474]
divsd xmm0, qword [ebp - 0x380]
movsd qword [ebp - 0x474], xmm0
movsd xmm0, qword [ebp - 0x474]
divsd xmm0, qword [ebp - 0x380]
movsd qword [ebp - 0x474], xmm0
movsd xmm0, qword [ebp - 0x35c]
subsd xmm0, qword [ebp - 0x474]
movsd qword [ebp - 0x35c], xmm0
jmp 0x4ff2b2
movsd xmm0, qword [ebp - 0x30c]
subsd xmm0, qword [ebp - 0x35c]
movsd qword [ebp - 0x30c], xmm0
movsd xmm0, qword [ebp - 0x35c]
mulsd xmm0, qword [ebp - 0x448]
movsd qword [ebp - 0x35c], xmm0
movsd xmm0, qword [ebp - 0x380]
subsd xmm0, qword [ebp - 0x47c]
movsd qword [ebp - 0x380], xmm0
movsd xmm0, qword [ebp - 0x474]
mulsd xmm0, qword [ebp - 0x768]
movsd qword [ebp - 0x474], xmm0
movsd xmm0, qword [ebp - 0x30c]
mulsd xmm0, qword [ebp - 0x35c]
movsd qword [ebp - 0x30c], xmm0
movsd xmm0, qword [ebp - 0x380]
addsd xmm0, qword [ebp - 0x47c]
movsd qword [ebp - 0x380], xmm0
movsd xmm0, qword [ebp - 0x768]
subsd xmm0, qword [ebp - 0x380]
movsd qword [ebp - 0x768], xmm0
mov eax, dword [ebp - 0xe8]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x178], ecx
mov edx, dword [ebp - 0x18c]
add edx, dword [ebp - 0x178]
movzx eax, byte [edx]
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x154], 0x33
mov ecx, dword [ebp - 0x170]
sub ecx, dword [ebp - 0x16c]
mov dword [ebp - 0x164], ecx
mov edx, dword [ebp - 0x168]
sub edx, dword [ebp - 0x154]
mov dword [ebp - 0x160], edx
mov eax, dword [ebp - 0x164]
shl eax, 4
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x160]
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x17c]
or edx, dword [ebp - 0x180]
mov dword [ebp - 0x184], edx
movss xmm0, dword [0x532578]
movss dword [ebp - 0x1ac], xmm0
movss xmm0, dword [0x53255c]
movss dword [ebp - 0x12c], xmm0
movss xmm0, dword [0x53254c]
movss dword [ebp - 0x128], xmm0
movss xmm0, dword [0x532530]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [0x53250c]
movss dword [ebp - 0x11c], xmm0
movss xmm0, dword [0x5324f4]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [0x5324d4]
movss dword [ebp - 0x110], xmm0
movss xmm0, dword [ebp - 0x11c]
subss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x11c], xmm0
movss xmm0, dword [ebp - 0x118]
mulss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [ebp - 0x11c]
mulss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x11c], xmm0
movss xmm0, dword [ebp - 0x1ac]
mulss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x1ac], xmm0
movss xmm0, dword [ebp - 0x12c]
subss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x12c], xmm0
movss xmm0, dword [ebp - 0x10c]
mulss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0x12c]
addss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x12c], xmm0
movss xmm0, dword [ebp - 0x1ac]
comiss xmm0, dword [ebp - 0x110]
jbe 0x4ff508
movss xmm0, dword [ebp - 0x11c]
addss xmm0, dword [ebp - 0x10c]
movss dword [ebp - 0x11c], xmm0
movss xmm0, dword [ebp - 0x12c]
subss xmm0, dword [ebp - 0x128]
movss dword [ebp - 0x12c], xmm0
movss xmm0, dword [ebp - 0x110]
addss xmm0, dword [ebp - 0x1ac]
movss dword [ebp - 0x110], xmm0
movss xmm0, dword [ebp - 0x128]
mulss xmm0, dword [ebp - 0x118]
movss dword [ebp - 0x128], xmm0
movss xmm0, dword [ebp - 0x1ac]
addss xmm0, dword [ebp - 0x12c]
movss dword [ebp - 0x1ac], xmm0
movss xmm0, dword [ebp - 0x118]
subss xmm0, dword [ebp - 0x11c]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [ebp - 0x10c]
mulss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x10c], xmm0
mov al, byte [ebp - 0x184]
mov byte [ebp - 0xce], al
jmp 0x4ff9d4
movss xmm0, dword [ebp - 0x118]
mulss xmm0, dword [ebp - 0x11c]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [ebp - 0x11c]
subss xmm0, dword [ebp - 0x10c]
movss dword [ebp - 0x11c], xmm0
movss xmm0, dword [ebp - 0x128]
mulss xmm0, dword [ebp - 0x118]
movss dword [ebp - 0x128], xmm0
movss xmm0, dword [ebp - 0x118]
addss xmm0, dword [ebp - 0x11c]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [ebp - 0x10c]
mulss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0x11c]
divss xmm0, dword [ebp - 0x10c]
movss dword [ebp - 0x11c], xmm0
movss xmm0, dword [ebp - 0x11c]
subss xmm0, dword [ebp - 0x10c]
movss dword [ebp - 0x11c], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [ebp - 0x118]
movss dword [ebp - 0x128], xmm0
movss xmm0, dword [ebp - 0x110]
addss xmm0, dword [ebp - 0x1ac]
movss dword [ebp - 0x110], xmm0
movss xmm0, dword [ebp - 0x118]
addss xmm0, dword [ebp - 0x11c]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [ebp - 0x11c]
addss xmm0, dword [ebp - 0x10c]
movss dword [ebp - 0x11c], xmm0
movss xmm0, dword [ebp - 0x118]
addss xmm0, dword [ebp - 0x11c]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [ebp - 0x128]
addss xmm0, dword [ebp - 0x118]
movss dword [ebp - 0x128], xmm0
movss xmm0, dword [ebp - 0x12c]
mulss xmm0, dword [ebp - 0x128]
movss dword [ebp - 0x12c], xmm0
movss xmm0, dword [ebp - 0x118]
comiss xmm0, dword [ebp - 0x12c]
jbe 0x4ff71a
movss xmm0, dword [ebp - 0x110]
divss xmm0, dword [ebp - 0x12c]
movss dword [ebp - 0x110], xmm0
movss xmm0, dword [ebp - 0x10c]
subss xmm0, dword [ebp - 0x1ac]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0x128]
subss xmm0, dword [ebp - 0x11c]
movss dword [ebp - 0x128], xmm0
movss xmm0, dword [ebp - 0x128]
mulss xmm0, dword [ebp - 0x11c]
movss dword [ebp - 0x128], xmm0
movss xmm0, dword [ebp - 0x118]
mulss xmm0, dword [ebp - 0x10c]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [ebp - 0x1ac]
addss xmm0, dword [ebp - 0x128]
movss dword [ebp - 0x1ac], xmm0
movss xmm0, dword [ebp - 0x12c]
divss xmm0, dword [ebp - 0x118]
movss dword [ebp - 0x12c], xmm0
jmp 0x4ff9d4
movss xmm0, dword [ebp - 0x118]
addss xmm0, dword [ebp - 0x11c]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [ebp - 0x1ac]
mulss xmm0, dword [ebp - 0x12c]
movss dword [ebp - 0x1ac], xmm0
movss xmm0, dword [ebp - 0x12c]
mulss xmm0, dword [ebp - 0x128]
movss dword [ebp - 0x12c], xmm0
movss xmm0, dword [ebp - 0x11c]
subss xmm0, dword [ebp - 0x10c]
movss dword [ebp - 0x11c], xmm0
movss xmm0, dword [ebp - 0x10c]
addss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0x10c]
divss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0x110]
divss xmm0, dword [ebp - 0x1ac]
movss dword [ebp - 0x110], xmm0
movss xmm0, dword [ebp - 0x10c]
mulss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0x12c]
divss xmm0, dword [ebp - 0x128]
movss dword [ebp - 0x12c], xmm0
movss xmm0, dword [ebp - 0x128]
mulss xmm0, dword [ebp - 0x118]
movss dword [ebp - 0x128], xmm0
movss xmm0, dword [ebp - 0x12c]
divss xmm0, dword [ebp - 0x128]
movss dword [ebp - 0x12c], xmm0
movss xmm0, dword [ebp - 0x1ac]
mulss xmm0, dword [ebp - 0x12c]
movss dword [ebp - 0x1ac], xmm0
movss xmm0, dword [ebp - 0x128]
subss xmm0, dword [ebp - 0x118]
movss dword [ebp - 0x128], xmm0
movss xmm0, dword [ebp - 0x128]
divss xmm0, dword [ebp - 0x118]
movss dword [ebp - 0x128], xmm0
movss xmm0, dword [ebp - 0x110]
comiss xmm0, dword [ebp - 0x11c]
jbe 0x4ff92c
movss xmm0, dword [ebp - 0x10c]
subss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0x1ac]
addss xmm0, dword [ebp - 0x12c]
movss dword [ebp - 0x1ac], xmm0
movss xmm0, dword [ebp - 0x128]
subss xmm0, dword [ebp - 0x118]
movss dword [ebp - 0x128], xmm0
movss xmm0, dword [ebp - 0x12c]
mulss xmm0, dword [ebp - 0x128]
movss dword [ebp - 0x12c], xmm0
movss xmm0, dword [ebp - 0x12c]
divss xmm0, dword [ebp - 0x128]
movss dword [ebp - 0x12c], xmm0
movss xmm0, dword [ebp - 0x110]
mulss xmm0, dword [ebp - 0x1ac]
movss dword [ebp - 0x110], xmm0
movss xmm0, dword [ebp - 0x10c]
addss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x10c], xmm0
jmp 0x4ff9d4
movss xmm0, dword [ebp - 0x10c]
mulss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0x118]
divss xmm0, dword [ebp - 0x11c]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [ebp - 0x110]
addss xmm0, dword [ebp - 0x1ac]
movss dword [ebp - 0x110], xmm0
movss xmm0, dword [ebp - 0x118]
subss xmm0, dword [ebp - 0x11c]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [ebp - 0x10c]
divss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0x10c]
mulss xmm0, dword [ebp - 0x110]
movss dword [ebp - 0x10c], xmm0
movss xmm0, dword [ebp - 0x11c]
divss xmm0, dword [ebp - 0x10c]
movss dword [ebp - 0x11c], xmm0
movzx ecx, byte [ebp - 0xc8]
mov dl, byte [ebp + ecx - 0x5f8]
mov byte [ebp - 0xcc], dl
movzx eax, byte [ebp - 0xc1]
movzx ecx, byte [ebp + eax - 0x5f8]
mov dword [ebp - 0x898], ecx
mov dl, byte [ebp - 0xc1]
add dl, 1
mov byte [ebp - 0xc1], dl
movzx eax, byte [ebp - 0xc3]
add eax, dword [ebp - 0x898]
mov byte [ebp - 0xc3], al
movzx ecx, byte [ebp - 0xc3]
movzx edx, byte [ebp - 0xc8]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc4]
movzx edx, byte [ebp - 0xc3]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc1]
movzx edx, byte [ebp - 0xc4]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc1]
mov dl, byte [ebp - 0xcc]
mov byte [ebp + ecx - 0x5f8], dl
movzx eax, byte [ebp - 0xcc]
movzx ecx, byte [ebp + eax - 0x5f8]
movzx edx, byte [ebp - 0xcd]
add edx, ecx
mov byte [ebp - 0xcd], dl
movzx eax, byte [ebp - 0xce]
movzx ecx, byte [ebp - 0xc3]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx ecx, byte [ebp - 0xc1]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5f8]
xor eax, edx
movzx ecx, byte [ebp - 0xc4]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx ecx, byte [ebp - 0xc8]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
movzx ecx, byte [ebp - 0xcd]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5f8]
movzx ecx, byte [ebp + edx - 0x5f8]
xor eax, ecx
mov byte [ebp - 0xc4], al
mov dl, byte [ebp - 0xce]
mov byte [ebp - 0xc8], dl
mov al, byte [ebp - 0xc4]
mov byte [ebp - 0xda], al
cmp dword [ebp - 0xe8], 0
jle 0x4ffb5c
mov ecx, dword [ebp - 0xe8]
mov dl, byte [ebp - 0xda]
mov byte [ebp + ecx - 0x39], dl
jmp 0x4fefc2
mov eax, dword [ebp - 0x134]
add eax, 1
mov dword [ebp - 0x134], eax
mov ecx, dword [ebp - 0xe8]
add ecx, 1
mov dword [ebp - 0xe8], ecx
mov edx, dword [ebp - 0x134]
add edx, 1
mov dword [ebp - 0x134], edx
movss xmm0, dword [0x532594]
movss dword [ebp - 0x458], xmm0
movss xmm0, dword [0x532580]
movss dword [ebp - 0x278], xmm0
movss xmm0, dword [0x532568]
movss dword [ebp - 0x334], xmm0
movss xmm0, dword [0x53253c]
movss dword [ebp - 0x1e8], xmm0
movss xmm0, dword [0x532510]
movss dword [ebp - 0x2a4], xmm0
movss xmm0, dword [0x5324e4]
movss dword [ebp - 0x250], xmm0
movss xmm0, dword [ebp - 0x458]
mulss xmm0, dword [ebp - 0x250]
movss dword [ebp - 0x458], xmm0
movss xmm0, dword [ebp - 0x1e8]
subss xmm0, dword [ebp - 0x250]
movss dword [ebp - 0x1e8], xmm0
movss xmm0, dword [ebp - 0x2a4]
subss xmm0, dword [ebp - 0x250]
movss dword [ebp - 0x2a4], xmm0
movss xmm0, dword [ebp - 0x1e8]
mulss xmm0, dword [ebp - 0x250]
movss dword [ebp - 0x1e8], xmm0
movss xmm0, dword [ebp - 0x278]
subss xmm0, dword [ebp - 0x250]
movss dword [ebp - 0x278], xmm0
movss xmm0, dword [ebp - 0x1e8]
mulss xmm0, dword [ebp - 0x250]
movss dword [ebp - 0x1e8], xmm0
movss xmm0, dword [ebp - 0x1e8]
comiss xmm0, dword [ebp - 0x2a4]
jbe 0x4ffd36
movss xmm0, dword [ebp - 0x278]
subss xmm0, dword [ebp - 0x334]
movss dword [ebp - 0x278], xmm0
movss xmm0, dword [ebp - 0x2a4]
addss xmm0, dword [ebp - 0x250]
movss dword [ebp - 0x2a4], xmm0
movss xmm0, dword [ebp - 0x1e8]
subss xmm0, dword [ebp - 0x2a4]
movss dword [ebp - 0x1e8], xmm0
movss xmm0, dword [ebp - 0x334]
addss xmm0, dword [ebp - 0x1e8]
movss dword [ebp - 0x334], xmm0
movss xmm0, dword [ebp - 0x250]
addss xmm0, dword [ebp - 0x458]
movss dword [ebp - 0x250], xmm0
movss xmm0, dword [ebp - 0x278]
mulss xmm0, dword [ebp - 0x334]
movss dword [ebp - 0x278], xmm0
mov eax, dword [ebp - 0xe8]
shl eax, 1
mov dword [ebp - 0x188], eax
jmp 0x4ffdc6
movss xmm0, dword [ebp - 0x278]
divss xmm0, dword [ebp - 0x334]
movss dword [ebp - 0x278], xmm0
movss xmm0, dword [ebp - 0x278]
divss xmm0, dword [ebp - 0x334]
movss dword [ebp - 0x278], xmm0
movss xmm0, dword [ebp - 0x1e8]
mulss xmm0, dword [ebp - 0x2a4]
movss dword [ebp - 0x1e8], xmm0
movss xmm0, dword [ebp - 0x250]
subss xmm0, dword [ebp - 0x458]
movss dword [ebp - 0x250], xmm0
movss xmm0, dword [ebp - 0x1e8]
mulss xmm0, dword [ebp - 0x2a4]
movss dword [ebp - 0x1e8], xmm0
movss xmm0, dword [ebp - 0x1e8]
subss xmm0, dword [ebp - 0x2a4]
movss dword [ebp - 0x1e8], xmm0
mov ecx, dword [ebp - 0x18c]
add ecx, dword [ebp - 0x188]
movzx edx, byte [ecx]
mov dword [ebp - 0x170], edx
mov dword [ebp - 0x16c], 0x74
mov eax, dword [ebp - 0xe8]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x178], ecx
mov edx, dword [ebp - 0x18c]
add edx, dword [ebp - 0x178]
movzx eax, byte [edx]
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x154], 0x33
mov ecx, dword [ebp - 0x170]
sub ecx, dword [ebp - 0x16c]
mov dword [ebp - 0x164], ecx
mov edx, dword [ebp - 0x168]
sub edx, dword [ebp - 0x154]
mov dword [ebp - 0x160], edx
mov eax, dword [ebp - 0x164]
shl eax, 4
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x160]
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x17c]
or edx, dword [ebp - 0x180]
mov dword [ebp - 0x184], edx
mov al, byte [ebp - 0x184]
mov byte [ebp - 0xce], al
movzx ecx, byte [ebp - 0xc8]
mov dl, byte [ebp + ecx - 0x5f8]
mov byte [ebp - 0xcc], dl
movzx eax, byte [ebp - 0xc1]
movzx ecx, byte [ebp + eax - 0x5f8]
mov dword [ebp - 0x89c], ecx
mov dl, byte [ebp - 0xc1]
add dl, 1
mov byte [ebp - 0xc1], dl
movzx eax, byte [ebp - 0xc3]
add eax, dword [ebp - 0x89c]
mov byte [ebp - 0xc3], al
movzx ecx, byte [ebp - 0xc3]
movzx edx, byte [ebp - 0xc8]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc4]
movzx edx, byte [ebp - 0xc3]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc1]
movzx edx, byte [ebp - 0xc4]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc1]
mov dl, byte [ebp - 0xcc]
mov byte [ebp + ecx - 0x5f8], dl
movzx eax, byte [ebp - 0xcc]
movzx ecx, byte [ebp + eax - 0x5f8]
movzx edx, byte [ebp - 0xcd]
add edx, ecx
mov byte [ebp - 0xcd], dl
movzx eax, byte [ebp - 0xce]
movzx ecx, byte [ebp - 0xc3]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx ecx, byte [ebp - 0xc1]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5f8]
xor eax, edx
movzx ecx, byte [ebp - 0xc4]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx ecx, byte [ebp - 0xc8]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
movzx ecx, byte [ebp - 0xcd]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5f8]
movzx ecx, byte [ebp + edx - 0x5f8]
xor eax, ecx
mov byte [ebp - 0xc4], al
mov dl, byte [ebp - 0xce]
mov byte [ebp - 0xc8], dl
mov al, byte [ebp - 0xc4]
mov byte [ebp - 0xda], al
cmp dword [ebp - 0xe8], 0
jle 0x4ffff9
mov ecx, dword [ebp - 0xe8]
mov dl, byte [ebp - 0xda]
mov byte [ebp + ecx - 0x39], dl
mov eax, dword [ebp - 0xe8]
add eax, 1
mov dword [ebp - 0xe8], eax
movss xmm0, dword [0x532558]
movss dword [ebp - 0x144], xmm0
movss xmm0, dword [0x532540]
movss dword [ebp - 0x108], xmm0
movss xmm0, dword [0x53252c]
movss dword [ebp - 0x13c], xmm0
movss xmm0, dword [0x532514]
movss dword [ebp - 0x130], xmm0
movss xmm0, dword [0x5324fc]
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [0x5324e8]
movss dword [ebp - 0x148], xmm0
movss xmm0, dword [0x5324d0]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0x124]
subss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [ebp - 0x148]
mulss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x148], xmm0
movss xmm0, dword [ebp - 0x124]
addss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [ebp - 0x13c]
subss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x13c], xmm0
movss xmm0, dword [ebp - 0x124]
addss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [ebp - 0x130]
subss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x130], xmm0
movss xmm0, dword [ebp - 0x148]
subss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x148], xmm0
movss xmm0, dword [ebp - 0x104]
comiss xmm0, dword [ebp - 0x148]
jbe 0x500606
movss xmm0, dword [ebp - 0x13c]
subss xmm0, dword [ebp - 0x130]
movss dword [ebp - 0x13c], xmm0
movss xmm0, dword [ebp - 0x130]
addss xmm0, dword [ebp - 0x124]
movss dword [ebp - 0x130], xmm0
movss xmm0, dword [ebp - 0x124]
subss xmm0, dword [ebp - 0x148]
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [ebp - 0x13c]
addss xmm0, dword [ebp - 0x130]
movss dword [ebp - 0x13c], xmm0
movss xmm0, dword [ebp - 0x124]
subss xmm0, dword [ebp - 0x148]
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [ebp - 0x108]
mulss xmm0, dword [ebp - 0x13c]
movss dword [ebp - 0x108], xmm0
movss xmm0, dword [ebp - 0x144]
subss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x144], xmm0
movss xmm0, dword [ebp - 0x130]
mulss xmm0, dword [ebp - 0x124]
movss dword [ebp - 0x130], xmm0
movss xmm0, dword [ebp - 0x13c]
divss xmm0, dword [ebp - 0x130]
movss dword [ebp - 0x13c], xmm0
movss xmm0, dword [ebp - 0x104]
mulss xmm0, dword [ebp - 0x144]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0x104]
subss xmm0, dword [ebp - 0x144]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0x130]
addss xmm0, dword [ebp - 0x124]
movss dword [ebp - 0x130], xmm0
movss xmm0, dword [ebp - 0x13c]
subss xmm0, dword [ebp - 0x130]
movss dword [ebp - 0x13c], xmm0
movss xmm0, dword [ebp - 0x148]
subss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x148], xmm0
movss xmm0, dword [ebp - 0x144]
comiss xmm0, dword [ebp - 0x148]
jbe 0x500347
movss xmm0, dword [ebp - 0x124]
subss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [ebp - 0x108]
mulss xmm0, dword [ebp - 0x130]
movss dword [ebp - 0x108], xmm0
movss xmm0, dword [ebp - 0x130]
subss xmm0, dword [ebp - 0x148]
movss dword [ebp - 0x130], xmm0
movss xmm0, dword [ebp - 0x144]
divss xmm0, dword [ebp - 0x13c]
movss dword [ebp - 0x144], xmm0
movss xmm0, dword [ebp - 0x148]
addss xmm0, dword [ebp - 0x144]
movss dword [ebp - 0x148], xmm0
movss xmm0, dword [ebp - 0x108]
addss xmm0, dword [ebp - 0x130]
movss dword [ebp - 0x108], xmm0
movss xmm0, dword [ebp - 0x108]
divss xmm0, dword [ebp - 0x130]
movss dword [ebp - 0x108], xmm0
jmp 0x500601
movss xmm0, dword [ebp - 0x104]
addss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0x104]
mulss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0x144]
addss xmm0, dword [ebp - 0x13c]
movss dword [ebp - 0x144], xmm0
movss xmm0, dword [ebp - 0x104]
divss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0x104]
subss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0x104]
mulss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0x124]
mulss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [ebp - 0x124]
mulss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [ebp - 0x13c]
divss xmm0, dword [ebp - 0x124]
movss dword [ebp - 0x13c], xmm0
movss xmm0, dword [ebp - 0x130]
mulss xmm0, dword [ebp - 0x148]
movss dword [ebp - 0x130], xmm0
movss xmm0, dword [ebp - 0x124]
subss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [ebp - 0x148]
addss xmm0, dword [ebp - 0x144]
movss dword [ebp - 0x148], xmm0
movss xmm0, dword [ebp - 0x144]
subss xmm0, dword [ebp - 0x13c]
movss dword [ebp - 0x144], xmm0
movss xmm0, dword [ebp - 0x104]
mulss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0x108]
comiss xmm0, dword [ebp - 0x130]
jbe 0x500559
movss xmm0, dword [ebp - 0x104]
mulss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0x130]
subss xmm0, dword [ebp - 0x148]
movss dword [ebp - 0x130], xmm0
movss xmm0, dword [ebp - 0x13c]
addss xmm0, dword [ebp - 0x124]
movss dword [ebp - 0x13c], xmm0
movss xmm0, dword [ebp - 0x104]
mulss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0x148]
addss xmm0, dword [ebp - 0x144]
movss dword [ebp - 0x148], xmm0
movss xmm0, dword [ebp - 0x148]
addss xmm0, dword [ebp - 0x144]
movss dword [ebp - 0x148], xmm0
movss xmm0, dword [ebp - 0x13c]
addss xmm0, dword [ebp - 0x124]
movss dword [ebp - 0x13c], xmm0
jmp 0x500601
movss xmm0, dword [ebp - 0x124]
mulss xmm0, dword [ebp - 0x148]
movss dword [ebp - 0x124], xmm0
movss xmm0, dword [ebp - 0x148]
subss xmm0, dword [ebp - 0x104]
movss dword [ebp - 0x148], xmm0
movss xmm0, dword [ebp - 0x108]
mulss xmm0, dword [ebp - 0x13c]
movss dword [ebp - 0x108], xmm0
movss xmm0, dword [ebp - 0x108]
mulss xmm0, dword [ebp - 0x13c]
movss dword [ebp - 0x108], xmm0
movss xmm0, dword [ebp - 0x144]
addss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x144], xmm0
movss xmm0, dword [ebp - 0x108]
divss xmm0, dword [ebp - 0x13c]
movss dword [ebp - 0x108], xmm0
movss xmm0, dword [ebp - 0x130]
mulss xmm0, dword [ebp - 0x124]
movss dword [ebp - 0x130], xmm0
jmp 0x5006bd
movss xmm0, dword [ebp - 0x130]
mulss xmm0, dword [ebp - 0x124]
movss dword [ebp - 0x130], xmm0
movss xmm0, dword [ebp - 0x144]
subss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x144], xmm0
movss xmm0, dword [ebp - 0x108]
addss xmm0, dword [ebp - 0x13c]
movss dword [ebp - 0x108], xmm0
movss xmm0, dword [ebp - 0x108]
mulss xmm0, dword [ebp - 0x13c]
movss dword [ebp - 0x108], xmm0
movss xmm0, dword [ebp - 0x104]
subss xmm0, dword [ebp - 0x144]
movss dword [ebp - 0x104], xmm0
movss xmm0, dword [ebp - 0x144]
addss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x144], xmm0
movss xmm0, dword [ebp - 0x144]
mulss xmm0, dword [ebp - 0x108]
movss dword [ebp - 0x144], xmm0
mov ecx, dword [ebp - 0x134]
add ecx, 1
mov dword [ebp - 0x134], ecx
mov edx, dword [ebp - 0xe8]
shl edx, 1
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 0x18c]
add eax, dword [ebp - 0x188]
movzx ecx, byte [eax]
mov dword [ebp - 0x170], ecx
mov dword [ebp - 0x16c], 0x74
mov edx, dword [ebp - 0xe8]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x178], eax
mov ecx, dword [ebp - 0x18c]
add ecx, dword [ebp - 0x178]
movzx edx, byte [ecx]
mov dword [ebp - 0x168], edx
mov dword [ebp - 0x154], 0x33
mov eax, dword [ebp - 0x170]
sub eax, dword [ebp - 0x16c]
mov dword [ebp - 0x164], eax
mov ecx, dword [ebp - 0x168]
sub ecx, dword [ebp - 0x154]
mov dword [ebp - 0x160], ecx
mov edx, dword [ebp - 0x164]
shl edx, 4
mov dword [ebp - 0x17c], edx
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x180], eax
mov ecx, dword [ebp - 0x17c]
or ecx, dword [ebp - 0x180]
mov dword [ebp - 0x184], ecx
mov dl, byte [ebp - 0x184]
mov byte [ebp - 0xce], dl
movzx eax, byte [ebp - 0xc8]
mov cl, byte [ebp + eax - 0x5f8]
mov byte [ebp - 0xcc], cl
movzx edx, byte [ebp - 0xc1]
movzx eax, byte [ebp + edx - 0x5f8]
mov dword [ebp - 0x8a0], eax
mov cl, byte [ebp - 0xc1]
add cl, 1
mov byte [ebp - 0xc1], cl
movzx edx, byte [ebp - 0xc3]
add edx, dword [ebp - 0x8a0]
mov byte [ebp - 0xc3], dl
movzx eax, byte [ebp - 0xc3]
movzx ecx, byte [ebp - 0xc8]
mov dl, byte [ebp + eax - 0x5f8]
mov byte [ebp + ecx - 0x5f8], dl
movzx eax, byte [ebp - 0xc4]
movzx ecx, byte [ebp - 0xc3]
mov dl, byte [ebp + eax - 0x5f8]
mov byte [ebp + ecx - 0x5f8], dl
movss xmm0, dword [0x532598]
movss dword [ebp - 0x1ec], xmm0
movss xmm0, dword [0x53256c]
movss dword [ebp - 0x158], xmm0
movss xmm0, dword [0x532518]
movss dword [ebp - 0x174], xmm0
movss xmm0, dword [ebp - 0x158]
addss xmm0, dword [ebp - 0x174]
movss dword [ebp - 0x158], xmm0
movss xmm0, dword [ebp - 0x1ec]
subss xmm0, dword [ebp - 0x174]
movss dword [ebp - 0x1ec], xmm0
movss xmm0, dword [ebp - 0x158]
addss xmm0, dword [ebp - 0x174]
movss dword [ebp - 0x158], xmm0
movss xmm0, dword [ebp - 0x158]
comiss xmm0, dword [ebp - 0x174]
jbe 0x5008eb
movss xmm0, dword [ebp - 0x174]
mulss xmm0, dword [ebp - 0x158]
movss dword [ebp - 0x174], xmm0
movss xmm0, dword [ebp - 0x158]
subss xmm0, dword [ebp - 0x1ec]
movss dword [ebp - 0x158], xmm0
movss xmm0, dword [ebp - 0x158]
subss xmm0, dword [ebp - 0x1ec]
movss dword [ebp - 0x158], xmm0
movzx eax, byte [ebp - 0xc1]
movzx ecx, byte [ebp - 0xc4]
mov dl, byte [ebp + eax - 0x5f8]
mov byte [ebp + ecx - 0x5f8], dl
jmp 0x500a1e
movss xmm0, dword [ebp - 0x174]
divss xmm0, dword [ebp - 0x158]
movss dword [ebp - 0x174], xmm0
movss xmm0, dword [ebp - 0x158]
subss xmm0, dword [ebp - 0x1ec]
movss dword [ebp - 0x158], xmm0
movss xmm0, dword [ebp - 0x1ec]
divss xmm0, dword [ebp - 0x174]
movss dword [ebp - 0x1ec], xmm0
movss xmm0, dword [ebp - 0x158]
mulss xmm0, dword [ebp - 0x1ec]
movss dword [ebp - 0x158], xmm0
movss xmm0, dword [ebp - 0x158]
subss xmm0, dword [ebp - 0x1ec]
movss dword [ebp - 0x158], xmm0
movss xmm0, dword [ebp - 0x158]
divss xmm0, dword [ebp - 0x1ec]
movss dword [ebp - 0x158], xmm0
movss xmm0, dword [ebp - 0x174]
comiss xmm0, dword [ebp - 0x1ec]
jbe 0x5009d6
movss xmm0, dword [ebp - 0x174]
mulss xmm0, dword [ebp - 0x158]
movss dword [ebp - 0x174], xmm0
movss xmm0, dword [ebp - 0x1ec]
subss xmm0, dword [ebp - 0x174]
movss dword [ebp - 0x1ec], xmm0
movss xmm0, dword [ebp - 0x174]
addss xmm0, dword [ebp - 0x158]
movss dword [ebp - 0x174], xmm0
jmp 0x500a1e
movss xmm0, dword [ebp - 0x174]
mulss xmm0, dword [ebp - 0x1ec]
movss dword [ebp - 0x174], xmm0
movss xmm0, dword [ebp - 0x174]
subss xmm0, dword [ebp - 0x1ec]
movss dword [ebp - 0x174], xmm0
movss xmm0, dword [ebp - 0x174]
addss xmm0, dword [ebp - 0x1ec]
movss dword [ebp - 0x174], xmm0
movzx eax, byte [ebp - 0xc1]
mov cl, byte [ebp - 0xcc]
mov byte [ebp + eax - 0x5f8], cl
movzx edx, byte [ebp - 0xcc]
movzx eax, byte [ebp + edx - 0x5f8]
movzx ecx, byte [ebp - 0xcd]
add ecx, eax
mov byte [ebp - 0xcd], cl
movzx edx, byte [ebp - 0xce]
movzx eax, byte [ebp - 0xc3]
movzx ecx, byte [ebp + eax - 0x5f8]
movzx eax, byte [ebp - 0xc1]
movzx eax, byte [ebp + eax - 0x5f8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5f8]
xor edx, ecx
movzx eax, byte [ebp - 0xc4]
movzx ecx, byte [ebp + eax - 0x5f8]
movzx eax, byte [ebp - 0xc8]
movzx eax, byte [ebp + eax - 0x5f8]
add ecx, eax
movzx eax, byte [ebp - 0xcd]
movzx eax, byte [ebp + eax - 0x5f8]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x5f8]
movzx eax, byte [ebp + ecx - 0x5f8]
xor edx, eax
mov byte [ebp - 0xc4], dl
mov cl, byte [ebp - 0xce]
mov byte [ebp - 0xc8], cl
mov dl, byte [ebp - 0xc4]
mov byte [ebp - 0xda], dl
cmp dword [ebp - 0xe8], 0
jle 0x500b07
mov eax, dword [ebp - 0xe8]
mov cl, byte [ebp - 0xda]
mov byte [ebp + eax - 0x39], cl
mov edx, dword [ebp - 0xe8]
add edx, 1
mov dword [ebp - 0xe8], edx
mov eax, dword [ebp - 0x134]
add eax, 1
mov dword [ebp - 0x134], eax
mov ecx, dword [ebp - 0xe8]
shl ecx, 1
mov dword [ebp - 0x188], ecx
mov edx, dword [ebp - 0x18c]
add edx, dword [ebp - 0x188]
movzx eax, byte [edx]
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x16c], 0x74
mov ecx, dword [ebp - 0xe8]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x178], edx
mov eax, dword [ebp - 0x18c]
add eax, dword [ebp - 0x178]
movzx ecx, byte [eax]
mov dword [ebp - 0x168], ecx
mov dword [ebp - 0x154], 0x33
mov edx, dword [ebp - 0x170]
sub edx, dword [ebp - 0x16c]
mov dword [ebp - 0x164], edx
mov eax, dword [ebp - 0x168]
sub eax, dword [ebp - 0x154]
mov dword [ebp - 0x160], eax
mov ecx, dword [ebp - 0x164]
shl ecx, 4
mov dword [ebp - 0x17c], ecx
mov edx, dword [ebp - 0x160]
mov dword [ebp - 0x180], edx
mov eax, dword [ebp - 0x17c]
or eax, dword [ebp - 0x180]
mov dword [ebp - 0x184], eax
mov cl, byte [ebp - 0x184]
mov byte [ebp - 0xce], cl
movzx edx, byte [ebp - 0xc8]
mov al, byte [ebp + edx - 0x5f8]
mov byte [ebp - 0xcc], al
movzx ecx, byte [ebp - 0xc1]
movzx edx, byte [ebp + ecx - 0x5f8]
mov dword [ebp - 0x8a4], edx
mov al, byte [ebp - 0xc1]
add al, 1
mov byte [ebp - 0xc1], al
movzx ecx, byte [ebp - 0xc3]
add ecx, dword [ebp - 0x8a4]
mov byte [ebp - 0xc3], cl
movzx edx, byte [ebp - 0xc3]
movzx eax, byte [ebp - 0xc8]
mov cl, byte [ebp + edx - 0x5f8]
mov byte [ebp + eax - 0x5f8], cl
movzx edx, byte [ebp - 0xc4]
movzx eax, byte [ebp - 0xc3]
mov cl, byte [ebp + edx - 0x5f8]
mov byte [ebp + eax - 0x5f8], cl
movzx edx, byte [ebp - 0xc1]
movzx eax, byte [ebp - 0xc4]
mov cl, byte [ebp + edx - 0x5f8]
mov byte [ebp + eax - 0x5f8], cl
movzx edx, byte [ebp - 0xc1]
mov al, byte [ebp - 0xcc]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xcc]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx eax, byte [ebp - 0xcd]
add eax, edx
mov byte [ebp - 0xcd], al
movzx ecx, byte [ebp - 0xce]
movzx edx, byte [ebp - 0xc3]
movzx eax, byte [ebp + edx - 0x5f8]
movzx edx, byte [ebp - 0xc1]
movzx edx, byte [ebp + edx - 0x5f8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5f8]
xor ecx, eax
movzx edx, byte [ebp - 0xc4]
movzx eax, byte [ebp + edx - 0x5f8]
movzx edx, byte [ebp - 0xc8]
movzx edx, byte [ebp + edx - 0x5f8]
add eax, edx
movzx edx, byte [ebp - 0xcd]
movzx edx, byte [ebp + edx - 0x5f8]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x5f8]
movzx edx, byte [ebp + eax - 0x5f8]
xor ecx, edx
mov byte [ebp - 0xc4], cl
mov al, byte [ebp - 0xce]
mov byte [ebp - 0xc8], al
mov cl, byte [ebp - 0xc4]
mov byte [ebp - 0xda], cl
cmp dword [ebp - 0xe8], 0
jle 0x500d63
mov edx, dword [ebp - 0xe8]
mov al, byte [ebp - 0xda]
mov byte [ebp + edx - 0x39], al
mov ecx, dword [ebp - 0xe8]
add ecx, 1
mov dword [ebp - 0xe8], ecx
mov edx, dword [ebp - 0x134]
add edx, 1
mov dword [ebp - 0x134], edx
mov eax, dword [ebp - 0xe8]
shl eax, 1
mov dword [ebp - 0x188], eax
mov ecx, dword [ebp - 0x18c]
add ecx, dword [ebp - 0x188]
movzx edx, byte [ecx]
mov dword [ebp - 0x170], edx
mov dword [ebp - 0x16c], 0x74
mov eax, dword [ebp - 0xe8]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x178], ecx
mov edx, dword [ebp - 0x18c]
add edx, dword [ebp - 0x178]
movzx eax, byte [edx]
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x154], 0x33
mov ecx, dword [ebp - 0x170]
sub ecx, dword [ebp - 0x16c]
mov dword [ebp - 0x164], ecx
mov edx, dword [ebp - 0x168]
sub edx, dword [ebp - 0x154]
mov dword [ebp - 0x160], edx
mov eax, dword [ebp - 0x164]
shl eax, 4
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x160]
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x17c]
or edx, dword [ebp - 0x180]
mov dword [ebp - 0x184], edx
mov al, byte [ebp - 0x184]
mov byte [ebp - 0xce], al
movzx ecx, byte [ebp - 0xc8]
mov dl, byte [ebp + ecx - 0x5f8]
mov byte [ebp - 0xcc], dl
movzx eax, byte [ebp - 0xc1]
movzx ecx, byte [ebp + eax - 0x5f8]
mov dword [ebp - 0x8ac], ecx
mov dl, byte [ebp - 0xc1]
add dl, 1
mov byte [ebp - 0xc1], dl
movzx eax, byte [ebp - 0xc3]
add eax, dword [ebp - 0x8ac]
mov byte [ebp - 0xc3], al
movzx ecx, byte [ebp - 0xc3]
movzx edx, byte [ebp - 0xc8]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movzx ecx, byte [ebp - 0xc4]
movzx edx, byte [ebp - 0xc3]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
movss xmm0, dword [0x53258c]
movss dword [ebp - 0x150], xmm0
movss xmm0, dword [0x532574]
movss dword [ebp - 0x15c], xmm0
movss xmm0, dword [0x532538]
movss dword [ebp - 0x234], xmm0
movss xmm0, dword [0x5324f8]
movss dword [ebp - 0x1b0], xmm0
movss xmm0, dword [ebp - 0x15c]
subss xmm0, dword [ebp - 0x1b0]
movss dword [ebp - 0x15c], xmm0
movss xmm0, dword [ebp - 0x150]
mulss xmm0, dword [ebp - 0x1b0]
movss dword [ebp - 0x150], xmm0
movss xmm0, dword [ebp - 0x15c]
addss xmm0, dword [ebp - 0x1b0]
movss dword [ebp - 0x15c], xmm0
movss xmm0, dword [ebp - 0x15c]
subss xmm0, dword [ebp - 0x1b0]
movss dword [ebp - 0x15c], xmm0
movss xmm0, dword [ebp - 0x150]
comiss xmm0, dword [ebp - 0x1b0]
jbe 0x500ff3
movss xmm0, dword [ebp - 0x1b0]
subss xmm0, dword [ebp - 0x150]
movss dword [ebp - 0x1b0], xmm0
movss xmm0, dword [ebp - 0x1b0]
addss xmm0, dword [ebp - 0x150]
movss dword [ebp - 0x1b0], xmm0
movss xmm0, dword [ebp - 0x1b0]
mulss xmm0, dword [ebp - 0x150]
movss dword [ebp - 0x1b0], xmm0
movss xmm0, dword [ebp - 0x234]
subss xmm0, dword [ebp - 0x1b0]
movss dword [ebp - 0x234], xmm0
movzx ecx, byte [ebp - 0xc1]
movzx edx, byte [ebp - 0xc4]
mov al, byte [ebp + ecx - 0x5f8]
mov byte [ebp + edx - 0x5f8], al
jmp 0x501186
movss xmm0, dword [ebp - 0x150]
addss xmm0, dword [ebp - 0x15c]
movss dword [ebp - 0x150], xmm0
movss xmm0, dword [ebp - 0x234]
mulss xmm0, dword [ebp - 0x1b0]
movss dword [ebp - 0x234], xmm0
movss xmm0, dword [ebp - 0x150]
mulss xmm0, dword [ebp - 0x15c]
movss dword [ebp - 0x150], xmm0
movss xmm0, dword [ebp - 0x15c]
divss xmm0, dword [ebp - 0x234]
movss dword [ebp - 0x15c], xmm0
movss xmm0, dword [ebp - 0x150]
addss xmm0, dword [ebp - 0x15c]
movss dword [ebp - 0x150], xmm0
movss xmm0, dword [ebp - 0x1b0]
addss xmm0, dword [ebp - 0x150]
movss dword [ebp - 0x1b0], xmm0
movss xmm0, dword [ebp - 0x150]
addss xmm0, dword [ebp - 0x15c]
movss dword [ebp - 0x150], xmm0
movss xmm0, dword [ebp - 0x150]
addss xmm0, dword [ebp - 0x15c]
movss dword [ebp - 0x150], xmm0
movss xmm0, dword [ebp - 0x150]
comiss xmm0, dword [ebp - 0x234]
jbe 0x501126
movss xmm0, dword [ebp - 0x234]
mulss xmm0, dword [ebp - 0x1b0]
movss dword [ebp - 0x234], xmm0
movss xmm0, dword [ebp - 0x234]
subss xmm0, dword [ebp - 0x1b0]
movss dword [ebp - 0x234], xmm0
movss xmm0, dword [ebp - 0x1b0]
mulss xmm0, dword [ebp - 0x150]
movss dword [ebp - 0x1b0], xmm0
movss xmm0, dword [ebp - 0x15c]
addss xmm0, dword [ebp - 0x234]
movss dword [ebp - 0x15c], xmm0
jmp 0x501186
movss xmm0, dword [ebp - 0x150]
addss xmm0, dword [ebp - 0x15c]
movss dword [ebp - 0x150], xmm0
movss xmm0, dword [ebp - 0x15c]
mulss xmm0, dword [ebp - 0x234]
movss dword [ebp - 0x15c], xmm0
movss xmm0, dword [ebp - 0x15c]
mulss xmm0, dword [ebp - 0x234]
movss dword [ebp - 0x15c], xmm0
movss xmm0, dword [ebp - 0x150]
divss xmm0, dword [ebp - 0x15c]
movss dword [ebp - 0x150], xmm0
movzx ecx, byte [ebp - 0xc1]
mov dl, byte [ebp - 0xcc]
mov byte [ebp + ecx - 0x5f8], dl
movzx eax, byte [ebp - 0xcc]
movzx ecx, byte [ebp + eax - 0x5f8]
movzx edx, byte [ebp - 0xcd]
add edx, ecx
mov byte [ebp - 0xcd], dl
movzx eax, byte [ebp - 0xce]
movzx ecx, byte [ebp - 0xc3]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx ecx, byte [ebp - 0xc1]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5f8]
xor eax, edx
movzx ecx, byte [ebp - 0xc4]
movzx edx, byte [ebp + ecx - 0x5f8]
movzx ecx, byte [ebp - 0xc8]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
movzx ecx, byte [ebp - 0xcd]
movzx ecx, byte [ebp + ecx - 0x5f8]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x5f8]
movzx ecx, byte [ebp + edx - 0x5f8]
xor eax, ecx
mov byte [ebp - 0xc4], al
mov dl, byte [ebp - 0xce]
mov byte [ebp - 0xc8], dl
mov al, byte [ebp - 0xc4]
mov byte [ebp - 0xda], al
cmp dword [ebp - 0xe8], 0
jle 0x50126f
mov ecx, dword [ebp - 0xe8]
mov dl, byte [ebp - 0xda]
mov byte [ebp + ecx - 0x39], dl
mov eax, 1
imul ecx, eax, 0x15
mov dword [ebp - 0x634], ecx
cmp dword [ebp - 0x634], 0x16
jae 0x501288
jmp 0x50128e
call fcn.0051da65
nop
mov edx, dword [ebp - 0x634]
mov byte [ebp + edx - 0x38], 0
jmp 0x5012e9
mov dword [ebp - 0x454], 0
jmp 0x5012b6
mov eax, dword [ebp - 0x454]
add eax, 1
mov dword [ebp - 0x454], eax
cmp dword [ebp - 0x454], 0x16
jge 0x5012e9
mov ecx, dword [ebp - 0x454]
mov dword [ebp - 0x660], ecx
cmp dword [ebp - 0x660], 0x16
jae 0x5012d6
jmp 0x5012dc
call fcn.0051da65
nop
mov edx, dword [ebp - 0x660]
mov byte [ebp + edx - 0x38], 0
jmp 0x5012a7
lea eax, [ebp - 0x38]
push eax
mov ecx, dword [ebp - 0x65c]
call fcn.004d9930
mov dword [ebp - 0x8b0], eax
mov ecx, dword [ebp - 0x8b0]
mov dword [ebp - 0x8b4], ecx
push 0
push 0
push 0x10
lea edx, [ebp - 0x98]
push edx
push 0
mov eax, dword [ebp + 8]
push eax
call dword [ebp - 0x8b4]
test eax, eax
jne 0x50132e
xor eax, eax
jmp 0x503664
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xac], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x3f8], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x390], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x390], xmm0
jmp 0x50137d
movsd xmm0, qword [ebp - 0x390]
addsd xmm0, qword [0x52f560]
movsd qword [ebp - 0x390], xmm0
movsd xmm0, qword [0x532390]
comisd xmm0, xmmword [ebp - 0x390]
jbe 0x50142e
movsd xmm0, qword [0x5322f0]
mulsd xmm0, qword [ebp - 0x390]
mulsd xmm0, qword [ebp - 0x390]
movsd xmm1, qword [ebp - 0x390]
mulsd xmm1, qword [ebp - 0x390]
subsd xmm0, xmm1
movsd xmm1, qword [0x52f910]
mulsd xmm1, qword [ebp - 0x390]
mulsd xmm1, qword [ebp - 0x390]
addsd xmm1, qword [0x532278]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x3f8]
movsd qword [ebp - 0x3f8], xmm0
movsd xmm0, qword [ebp - 0x3f8]
push edx
movups xmm0, xmmword [ebp - 0x3f8]
comisd xmm0, xmmword [0x5322c0]
jbe 0x501429
movsd xmm0, qword [0x532260]
mulsd xmm0, qword [ebp - 0x390]
movsd xmm1, qword [ebp - 0x3f8]
subsd xmm1, xmm0
movsd qword [ebp - 0x3f8], xmm1
jmp 0x501365
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x3f8]
jbe 0x50146d
inc esi
push esi
jnp 0x501468
jl 0x501488
push esi
dec esp
pop esp
jno 0x5014bc
outsb dx, byte [esi]
push 0x3b664a70
je 0x5013f2
pop ss
scasd eax, dword es:[edi]
sbb eax, 0x1ba41daf
cmpsb byte [esi], byte es:[edi]
push ss
scasb al, byte es:[edi]
push ss
mov byte [0xad19b017], al
push ss
scasd eax, dword es:[edi]
and byte [ecx + 0x20b015ac], ah
jmp 0x5026fb
mov dword [ebp - 0xa8], 0x50144e
mov dword [ebp - 0xac], 0x50143b
mov ecx, dword [ebp - 0xa8]
mov dword [ebp - 0x280], ecx
mov edx, dword [ebp - 0xac]
mov dword [ebp - 0x8b8], edx
mov byte [ebp - 0x244], 0x17
mov dword [ebp - 0x1e0], 0
jmp 0x5014bb
lea eax, [eax - 0x74000003]
xchg ebp, eax
push esp
invalid
mov eax, dword [ebp - 0x1e0]
add eax, 1
mov dword [ebp - 0x1e0], eax
cmp dword [ebp - 0x1e0], 0x100
mov ebp, 0xfffffe20
add byte [ecx], al
add byte [eax], al
jae 0x5014dc
mov ecx, dword [ebp - 0x1e0]
mov dl, byte [ebp - 0x1e0]
mov byte [ebp + ecx - 0xa3c], dl
jmp 0x5014ac
mov dword [ebp - 0x2f8], 0
mov byte [ebp - 0xec], 0
mov dword [ebp - 0x1e0], 0xff
jmp 0x501508
mov eax, dword [ebp - 0x1e0]
sub eax, 1
mov dword [ebp - 0x1e0], eax
cmp dword [ebp - 0x1e0], 0
jbe 0x501778
mov dword [ebp - 0x4e0], 0
mov dword [ebp - 0x450], 1
mov ecx, dword [ebp - 0x450]
cmp ecx, dword [ebp - 0x1e0]
jae 0x501549
mov edx, dword [ebp - 0x450]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x450], eax
jmp 0x501529
mov ecx, dword [ebp - 0x2f8]
mov dword [ebp - 0x658], ecx
cmp dword [ebp - 0x658], 3
ja case.default.0x501568
mov edx, dword [ebp - 0x658]
jmp dword [edx*4 + 0x5036b4]
movzx eax, byte [ebp - 0xec]
movzx ebx, byte [ebp + eax - 0xa3c]
movsd xmm0, qword [ebp - 0x3f8]
call fcn.0051dea0
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xec], bl
jmp 0x501651
movzx ecx, byte [ebp - 0xec]
movzx ebx, byte [ebp + ecx - 0xa3c]
movsd xmm0, qword [ebp - 0x3f8]
call fcn.0051dea0
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xec], bl
jmp 0x501651
movzx edx, byte [ebp - 0xec]
movzx ebx, byte [ebp + edx - 0xa3c]
movsd xmm0, qword [ebp - 0x3f8]
call fcn.0051dea0
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xec], bl
jmp 0x501651
movzx eax, byte [ebp - 0xec]
movzx ebx, byte [ebp + eax - 0xa3c]
movsd xmm0, qword [ebp - 0x3f8]
call fcn.0051dea0
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xec], bl
jmp 0x501651
movzx ecx, byte [ebp - 0xec]
movzx edx, byte [ebp + ecx - 0xa3c]
mov eax, dword [ebp - 0x8b8]
add eax, dword [ebp - 0x2f8]
movzx ecx, byte [eax - 4]
add edx, ecx
mov byte [ebp - 0xec], dl
mov edx, dword [ebp - 0x2f8]
add edx, 1
mov dword [ebp - 0x2f8], edx
movzx eax, byte [ebp - 0x244]
cmp dword [ebp - 0x2f8], eax
jb 0x50168f
mov dword [ebp - 0x2f8], 0
movzx ecx, byte [ebp - 0x244]
movzx edx, byte [ebp - 0xec]
add edx, ecx
mov byte [ebp - 0xec], dl
movzx eax, byte [ebp - 0xec]
and eax, dword [ebp - 0x450]
mov dword [ebp - 0x2b8], eax
mov ecx, dword [ebp - 0x4e0]
add ecx, 1
mov dword [ebp - 0x4e0], ecx
cmp dword [ebp - 0x4e0], 0xb
jbe 0x5016ce
mov eax, dword [ebp - 0x2b8]
xor edx, edx
div dword [ebp - 0x1e0]
mov dword [ebp - 0x2b8], edx
mov edx, dword [ebp - 0x2b8]
cmp edx, dword [ebp - 0x1e0]
ja 0x501549
mov eax, dword [ebp - 0x1e0]
cmp eax, dword [ebp - 0x2b8]
je 0x501773
mov ecx, dword [ebp - 0x2b8]
movzx edx, byte [ebp + ecx - 0xa3c]
mov eax, dword [ebp - 0x1e0]
movzx ecx, byte [ebp + eax - 0xa3c]
xor ecx, edx
mov edx, dword [ebp - 0x1e0]
mov byte [ebp + edx - 0xa3c], cl
mov eax, dword [ebp - 0x1e0]
movzx ecx, byte [ebp + eax - 0xa3c]
mov edx, dword [ebp - 0x2b8]
movzx eax, byte [ebp + edx - 0xa3c]
xor eax, ecx
mov ecx, dword [ebp - 0x2b8]
mov byte [ebp + ecx - 0xa3c], al
mov edx, dword [ebp - 0x2b8]
movzx eax, byte [ebp + edx - 0xa3c]
mov ecx, dword [ebp - 0x1e0]
movzx edx, byte [ebp + ecx - 0xa3c]
xor edx, eax
mov eax, dword [ebp - 0x1e0]
mov byte [ebp + eax - 0xa3c], dl
jmp 0x5014f9
mov ecx, 1
shl ecx, 0
mov dl, byte [ebp + ecx - 0xa3c]
mov byte [ebp - 0xcf], dl
mov eax, 1
imul ecx, eax, 3
mov dl, byte [ebp + ecx - 0xa3c]
mov byte [ebp - 0xd4], dl
mov eax, 1
imul ecx, eax, 5
mov dl, byte [ebp + ecx - 0xa3c]
mov byte [ebp - 0xdd], dl
mov eax, 1
imul ecx, eax, 7
mov dl, byte [ebp + ecx - 0xa3c]
mov byte [ebp - 0xd5], dl
movzx eax, byte [ebp - 0xec]
mov cl, byte [ebp + eax - 0xa3c]
mov byte [ebp - 0xd9], cl
mov dword [ebp - 0x654], 0x1a
cmp dword [ebp - 0x654], 2
jle 0x5026ad
mov edx, dword [ebp - 0x654]
and edx, 1
jne 0x5026ad
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x1f0], 0
mov eax, dword [ebp - 0x1f0]
add eax, 1
mov dword [ebp - 0x1f0], eax
mov dword [ebp - 0x27c], 0
mov ecx, dword [ebp - 0x114]
shl ecx, 1
mov dword [ebp - 0x27c], ecx
mov dword [ebp - 0x254], 0
mov edx, dword [ebp - 0x280]
add edx, dword [ebp - 0x27c]
movzx eax, byte [edx]
add eax, dword [ebp - 0x254]
mov dword [ebp - 0x254], eax
mov dword [ebp - 0x268], 0
mov ecx, dword [ebp - 0x268]
add ecx, 0xa2
mov dword [ebp - 0x268], ecx
mov dword [ebp - 0x284], 0
mov edx, dword [ebp - 0x114]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x284], eax
mov dword [ebp - 0x258], 0
mov ecx, dword [ebp - 0x280]
add ecx, dword [ebp - 0x284]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x258]
mov dword [ebp - 0x258], edx
mov dword [ebp - 0x25c], 0
mov eax, dword [ebp - 0x25c]
add eax, 0x14
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x260], 0
mov ecx, dword [ebp - 0x254]
sub ecx, dword [ebp - 0x268]
add ecx, dword [ebp - 0x260]
mov dword [ebp - 0x260], ecx
mov dword [ebp - 0x264], 0
mov edx, dword [ebp - 0x258]
sub edx, dword [ebp - 0x25c]
add edx, dword [ebp - 0x264]
mov dword [ebp - 0x264], edx
mov dword [ebp - 0x288], 0
mov eax, dword [ebp - 0x260]
shl eax, 4
mov dword [ebp - 0x288], eax
mov dword [ebp - 0x28c], 0
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x28c], ecx
mov dword [ebp - 0x290], 0
mov edx, dword [ebp - 0x288]
or edx, dword [ebp - 0x28c]
mov dword [ebp - 0x290], edx
mov byte [ebp - 0xe1], 0
mov al, byte [ebp - 0x290]
mov byte [ebp - 0xe1], al
mov byte [ebp - 0xdf], 0
movzx ecx, byte [ebp - 0xd9]
mov dl, byte [ebp + ecx - 0xa3c]
mov byte [ebp - 0xdf], dl
movzx eax, byte [ebp - 0xcf]
movzx ecx, byte [ebp + eax - 0xa3c]
mov dword [ebp - 0x8bc], ecx
mov dl, byte [ebp - 0xcf]
add dl, 1
mov byte [ebp - 0xcf], dl
movzx eax, byte [ebp - 0xd4]
add eax, dword [ebp - 0x8bc]
mov byte [ebp - 0xd4], al
movzx ecx, byte [ebp - 0xd4]
movzx edx, byte [ebp - 0xd9]
mov al, byte [ebp + ecx - 0xa3c]
mov byte [ebp + edx - 0xa3c], al
movzx ecx, byte [ebp - 0xd5]
movzx edx, byte [ebp - 0xd4]
mov al, byte [ebp + ecx - 0xa3c]
mov byte [ebp + edx - 0xa3c], al
movzx ecx, byte [ebp - 0xcf]
movzx edx, byte [ebp - 0xd5]
mov al, byte [ebp + ecx - 0xa3c]
mov byte [ebp + edx - 0xa3c], al
movzx ecx, byte [ebp - 0xcf]
mov dl, byte [ebp - 0xdf]
mov byte [ebp + ecx - 0xa3c], dl
movzx eax, byte [ebp - 0xdf]
movzx ecx, byte [ebp + eax - 0xa3c]
movzx edx, byte [ebp - 0xdd]
add edx, ecx
mov byte [ebp - 0xdd], dl
movzx eax, byte [ebp - 0xe1]
movzx ecx, byte [ebp - 0xd4]
movzx edx, byte [ebp + ecx - 0xa3c]
movzx ecx, byte [ebp - 0xcf]
movzx ecx, byte [ebp + ecx - 0xa3c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0xa3c]
xor eax, edx
movzx ecx, byte [ebp - 0xd5]
movzx edx, byte [ebp + ecx - 0xa3c]
movzx ecx, byte [ebp - 0xd9]
movzx ecx, byte [ebp + ecx - 0xa3c]
add edx, ecx
movzx ecx, byte [ebp - 0xdd]
movzx ecx, byte [ebp + ecx - 0xa3c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0xa3c]
movzx ecx, byte [ebp + edx - 0xa3c]
xor eax, ecx
mov byte [ebp - 0xd5], al
mov dl, byte [ebp - 0xe1]
mov byte [ebp - 0xd9], dl
mov al, byte [ebp - 0xd5]
mov byte [ebp - 0x100], al
cmp dword [ebp - 0x114], 0
jle 0x501b0b
mov ecx, dword [ebp - 0x114]
mov dl, byte [ebp - 0x100]
mov byte [ebp + ecx - 0x21], dl
mov eax, dword [ebp - 0x114]
add eax, 1
mov dword [ebp - 0x114], eax
mov ecx, dword [ebp - 0x1f0]
add ecx, 1
mov dword [ebp - 0x1f0], ecx
mov edx, dword [ebp - 0x114]
shl edx, 1
mov dword [ebp - 0x27c], edx
mov eax, dword [ebp - 0x280]
add eax, dword [ebp - 0x27c]
movzx ecx, byte [eax]
mov dword [ebp - 0x254], ecx
mov dword [ebp - 0x268], 0xa2
mov edx, dword [ebp - 0x114]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x284], eax
mov ecx, dword [ebp - 0x280]
add ecx, dword [ebp - 0x284]
movzx edx, byte [ecx]
mov dword [ebp - 0x258], edx
mov dword [ebp - 0x25c], 0x14
mov eax, dword [ebp - 0x254]
sub eax, dword [ebp - 0x268]
mov dword [ebp - 0x260], eax
mov ecx, dword [ebp - 0x258]
sub ecx, dword [ebp - 0x25c]
mov dword [ebp - 0x264], ecx
mov edx, dword [ebp - 0x260]
shl edx, 4
mov dword [ebp - 0x288], edx
mov eax, dword [ebp - 0x264]
mov dword [ebp - 0x28c], eax
mov ecx, dword [ebp - 0x288]
or ecx, dword [ebp - 0x28c]
mov dword [ebp - 0x290], ecx
mov dl, byte [ebp - 0x290]
mov byte [ebp - 0xe1], dl
movzx eax, byte [ebp - 0xd9]
mov cl, byte [ebp + eax - 0xa3c]
mov byte [ebp - 0xdf], cl
movzx edx, byte [ebp - 0xcf]
movzx eax, byte [ebp + edx - 0xa3c]
mov dword [ebp - 0x8c0], eax
mov cl, byte [ebp - 0xcf]
add cl, 1
mov byte [ebp - 0xcf], cl
movzx edx, byte [ebp - 0xd4]
add edx, dword [ebp - 0x8c0]
mov byte [ebp - 0xd4], dl
movzx eax, byte [ebp - 0xd4]
movzx ecx, byte [ebp - 0xd9]
mov dl, byte [ebp + eax - 0xa3c]
mov byte [ebp + ecx - 0xa3c], dl
movzx eax, byte [ebp - 0xd5]
movzx ecx, byte [ebp - 0xd4]
mov dl, byte [ebp + eax - 0xa3c]
mov byte [ebp + ecx - 0xa3c], dl
movzx eax, byte [ebp - 0xcf]
movzx ecx, byte [ebp - 0xd5]
mov dl, byte [ebp + eax - 0xa3c]
mov byte [ebp + ecx - 0xa3c], dl
movzx eax, byte [ebp - 0xcf]
mov cl, byte [ebp - 0xdf]
mov byte [ebp + eax - 0xa3c], cl
movzx edx, byte [ebp - 0xdf]
movzx eax, byte [ebp + edx - 0xa3c]
movzx ecx, byte [ebp - 0xdd]
add ecx, eax
mov byte [ebp - 0xdd], cl
movzx edx, byte [ebp - 0xe1]
movzx eax, byte [ebp - 0xd4]
movzx ecx, byte [ebp + eax - 0xa3c]
movzx eax, byte [ebp - 0xcf]
movzx eax, byte [ebp + eax - 0xa3c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xa3c]
xor edx, ecx
movzx eax, byte [ebp - 0xd5]
movzx ecx, byte [ebp + eax - 0xa3c]
movzx eax, byte [ebp - 0xd9]
movzx eax, byte [ebp + eax - 0xa3c]
add ecx, eax
movzx eax, byte [ebp - 0xdd]
movzx eax, byte [ebp + eax - 0xa3c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xa3c]
movzx eax, byte [ebp + ecx - 0xa3c]
xor edx, eax
mov byte [ebp - 0xd5], dl
mov cl, byte [ebp - 0xe1]
mov byte [ebp - 0xd9], cl
mov dl, byte [ebp - 0xd5]
mov byte [ebp - 0x100], dl
cmp dword [ebp - 0x114], 0
jle 0x501d6a
mov eax, dword [ebp - 0x114]
mov cl, byte [ebp - 0x100]
mov byte [ebp + eax - 0x21], cl
mov edx, dword [ebp - 0x1f0]
add edx, 5
mov dword [ebp - 0x1f0], edx
mov eax, dword [ebp - 0x114]
add eax, 1
mov dword [ebp - 0x4dc], eax
jmp 0x501d99
mov ecx, dword [ebp - 0x4dc]
add ecx, 1
mov dword [ebp - 0x4dc], ecx
mov edx, dword [ebp - 0x4dc]
cmp edx, dword [ebp - 0x1f0]
jge 0x502171
mov eax, dword [ebp - 0x114]
add eax, 1
mov dword [ebp - 0x114], eax
mov ecx, dword [ebp - 0x114]
shl ecx, 1
mov dword [ebp - 0x27c], ecx
mov edx, dword [ebp - 0x280]
add edx, dword [ebp - 0x27c]
movzx eax, byte [edx]
mov dword [ebp - 0x254], eax
mov dword [ebp - 0x268], 0xa2
mov ecx, dword [ebp - 0x114]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x284], edx
mov eax, dword [ebp - 0x280]
add eax, dword [ebp - 0x284]
movzx ecx, byte [eax]
mov dword [ebp - 0x258], ecx
mov dword [ebp - 0x25c], 0x14
mov edx, dword [ebp - 0x254]
sub edx, dword [ebp - 0x268]
mov dword [ebp - 0x260], edx
mov eax, dword [ebp - 0x258]
sub eax, dword [ebp - 0x25c]
mov dword [ebp - 0x264], eax
mov ecx, dword [ebp - 0x260]
shl ecx, 4
mov dword [ebp - 0x288], ecx
mov edx, dword [ebp - 0x264]
mov dword [ebp - 0x28c], edx
mov eax, dword [ebp - 0x288]
or eax, dword [ebp - 0x28c]
mov dword [ebp - 0x290], eax
mov cl, byte [ebp - 0x290]
mov byte [ebp - 0xe1], cl
movzx edx, byte [ebp - 0xd9]
mov al, byte [ebp + edx - 0xa3c]
mov byte [ebp - 0xdf], al
movzx ecx, byte [ebp - 0xcf]
movzx edx, byte [ebp + ecx - 0xa3c]
mov dword [ebp - 0x8c4], edx
mov al, byte [ebp - 0xcf]
add al, 1
mov byte [ebp - 0xcf], al
movzx ecx, byte [ebp - 0xd4]
add ecx, dword [ebp - 0x8c4]
mov byte [ebp - 0xd4], cl
movzx edx, byte [ebp - 0xd4]
movzx eax, byte [ebp - 0xd9]
mov cl, byte [ebp + edx - 0xa3c]
mov byte [ebp + eax - 0xa3c], cl
movzx edx, byte [ebp - 0xd5]
movzx eax, byte [ebp - 0xd4]
mov cl, byte [ebp + edx - 0xa3c]
mov byte [ebp + eax - 0xa3c], cl
movsd xmm0, qword [0x5324c0]
movsd qword [ebp - 0x354], xmm0
movsd xmm0, qword [0x532488]
movsd qword [ebp - 0x460], xmm0
movsd xmm0, qword [0x532410]
movsd qword [ebp - 0x484], xmm0
movsd xmm0, qword [0x532378]
movsd qword [ebp - 0x440], xmm0
movsd xmm0, qword [ebp - 0x484]
mulsd xmm0, qword [ebp - 0x440]
movsd qword [ebp - 0x484], xmm0
movsd xmm0, qword [ebp - 0x460]
mulsd xmm0, qword [ebp - 0x440]
movsd qword [ebp - 0x460], xmm0
movsd xmm0, qword [ebp - 0x484]
addsd xmm0, qword [ebp - 0x440]
movsd qword [ebp - 0x484], xmm0
movsd xmm0, qword [ebp - 0x460]
subsd xmm0, qword [ebp - 0x440]
movsd qword [ebp - 0x460], xmm0
movsd xmm0, qword [ebp - 0x460]
comisd xmm0, xmmword [ebp - 0x440]
jbe 0x502025
movsd xmm0, qword [ebp - 0x354]
subsd xmm0, qword [ebp - 0x484]
movsd qword [ebp - 0x354], xmm0
movsd xmm0, qword [ebp - 0x484]
mulsd xmm0, qword [ebp - 0x354]
movsd qword [ebp - 0x484], xmm0
movsd xmm0, qword [ebp - 0x440]
mulsd xmm0, qword [ebp - 0x460]
movsd qword [ebp - 0x440], xmm0
movsd xmm0, qword [ebp - 0x354]
subsd xmm0, qword [ebp - 0x484]
movsd qword [ebp - 0x354], xmm0
movzx edx, byte [ebp - 0xcf]
movzx eax, byte [ebp - 0xd5]
mov cl, byte [ebp + edx - 0xa3c]
mov byte [ebp + eax - 0xa3c], cl
jmp 0x502085
movsd xmm0, qword [ebp - 0x354]
addsd xmm0, qword [ebp - 0x460]
movsd qword [ebp - 0x354], xmm0
movsd xmm0, qword [ebp - 0x440]
mulsd xmm0, qword [ebp - 0x354]
movsd qword [ebp - 0x440], xmm0
movsd xmm0, qword [ebp - 0x354]
subsd xmm0, qword [ebp - 0x460]
movsd qword [ebp - 0x354], xmm0
movsd xmm0, qword [ebp - 0x354]
subsd xmm0, qword [ebp - 0x460]
movsd qword [ebp - 0x354], xmm0
movzx edx, byte [ebp - 0xcf]
mov al, byte [ebp - 0xdf]
mov byte [ebp + edx - 0xa3c], al
movzx ecx, byte [ebp - 0xdf]
movzx edx, byte [ebp + ecx - 0xa3c]
movzx eax, byte [ebp - 0xdd]
add eax, edx
mov byte [ebp - 0xdd], al
movzx ecx, byte [ebp - 0xe1]
movzx edx, byte [ebp - 0xd4]
movzx eax, byte [ebp + edx - 0xa3c]
movzx edx, byte [ebp - 0xcf]
movzx edx, byte [ebp + edx - 0xa3c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0xa3c]
xor ecx, eax
movzx edx, byte [ebp - 0xd5]
movzx eax, byte [ebp + edx - 0xa3c]
movzx edx, byte [ebp - 0xd9]
movzx edx, byte [ebp + edx - 0xa3c]
add eax, edx
movzx edx, byte [ebp - 0xdd]
movzx edx, byte [ebp + edx - 0xa3c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0xa3c]
movzx edx, byte [ebp + eax - 0xa3c]
xor ecx, edx
mov byte [ebp - 0xd5], cl
mov al, byte [ebp - 0xe1]
mov byte [ebp - 0xd9], al
mov cl, byte [ebp - 0xd5]
mov byte [ebp - 0x100], cl
cmp dword [ebp - 0x114], 0
jle 0x50216c
mov edx, dword [ebp - 0x114]
mov al, byte [ebp - 0x100]
mov byte [ebp + edx - 0x21], al
jmp 0x501d8a
mov ecx, dword [ebp - 0x1f0]
add ecx, 1
mov dword [ebp - 0x1f0], ecx
mov edx, dword [ebp - 0x114]
add edx, 1
mov dword [ebp - 0x114], edx
mov eax, dword [ebp - 0x1f0]
add eax, 1
mov dword [ebp - 0x1f0], eax
mov ecx, dword [ebp - 0x114]
shl ecx, 1
mov dword [ebp - 0x27c], ecx
mov edx, dword [ebp - 0x280]
add edx, dword [ebp - 0x27c]
movzx eax, byte [edx]
mov dword [ebp - 0x254], eax
mov dword [ebp - 0x268], 0xa2
mov ecx, dword [ebp - 0x114]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x284], edx
mov eax, dword [ebp - 0x280]
add eax, dword [ebp - 0x284]
movzx ecx, byte [eax]
mov dword [ebp - 0x258], ecx
mov dword [ebp - 0x25c], 0x14
mov edx, dword [ebp - 0x254]
sub edx, dword [ebp - 0x268]
mov dword [ebp - 0x260], edx
mov eax, dword [ebp - 0x258]
sub eax, dword [ebp - 0x25c]
mov dword [ebp - 0x264], eax
mov ecx, dword [ebp - 0x260]
shl ecx, 4
mov dword [ebp - 0x288], ecx
mov edx, dword [ebp - 0x264]
mov dword [ebp - 0x28c], edx
mov eax, dword [ebp - 0x288]
or eax, dword [ebp - 0x28c]
mov dword [ebp - 0x290], eax
mov cl, byte [ebp - 0x290]
mov byte [ebp - 0xe1], cl
movzx edx, byte [ebp - 0xd9]
mov al, byte [ebp + edx - 0xa3c]
mov byte [ebp - 0xdf], al
movzx ecx, byte [ebp - 0xcf]
movzx edx, byte [ebp + ecx - 0xa3c]
mov dword [ebp - 0x8c8], edx
mov al, byte [ebp - 0xcf]
add al, 1
mov byte [ebp - 0xcf], al
movzx ecx, byte [ebp - 0xd4]
add ecx, dword [ebp - 0x8c8]
mov byte [ebp - 0xd4], cl
movzx edx, byte [ebp - 0xd4]
movzx eax, byte [ebp - 0xd9]
mov cl, byte [ebp + edx - 0xa3c]
mov byte [ebp + eax - 0xa3c], cl
movzx edx, byte [ebp - 0xd5]
movzx eax, byte [ebp - 0xd4]
mov cl, byte [ebp + edx - 0xa3c]
mov byte [ebp + eax - 0xa3c], cl
movzx edx, byte [ebp - 0xcf]
movzx eax, byte [ebp - 0xd5]
mov cl, byte [ebp + edx - 0xa3c]
mov byte [ebp + eax - 0xa3c], cl
movzx edx, byte [ebp - 0xcf]
mov al, byte [ebp - 0xdf]
mov byte [ebp + edx - 0xa3c], al
movzx ecx, byte [ebp - 0xdf]
movzx edx, byte [ebp + ecx - 0xa3c]
movzx eax, byte [ebp - 0xdd]
add eax, edx
mov byte [ebp - 0xdd], al
movzx ecx, byte [ebp - 0xe1]
movzx edx, byte [ebp - 0xd4]
movzx eax, byte [ebp + edx - 0xa3c]
movzx edx, byte [ebp - 0xcf]
movzx edx, byte [ebp + edx - 0xa3c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0xa3c]
xor ecx, eax
movzx edx, byte [ebp - 0xd5]
movzx eax, byte [ebp + edx - 0xa3c]
movzx edx, byte [ebp - 0xd9]
movzx edx, byte [ebp + edx - 0xa3c]
add eax, edx
movzx edx, byte [ebp - 0xdd]
movzx edx, byte [ebp + edx - 0xa3c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0xa3c]
movzx edx, byte [ebp + eax - 0xa3c]
xor ecx, edx
mov byte [ebp - 0xd5], cl
mov al, byte [ebp - 0xe1]
mov byte [ebp - 0xd9], al
mov cl, byte [ebp - 0xd5]
mov byte [ebp - 0x100], cl
cmp dword [ebp - 0x114], 0
jle 0x5023dc
mov edx, dword [ebp - 0x114]
mov al, byte [ebp - 0x100]
mov byte [ebp + edx - 0x21], al
mov ecx, dword [ebp - 0x1f0]
add ecx, 5
mov dword [ebp - 0x1f0], ecx
mov edx, dword [ebp - 0x114]
add edx, 1
mov dword [ebp - 0x4d8], edx
jmp 0x50240b
mov eax, dword [ebp - 0x4d8]
add eax, 1
mov dword [ebp - 0x4d8], eax
mov ecx, dword [ebp - 0x4d8]
cmp ecx, dword [ebp - 0x1f0]
jge 0x502672
mov edx, dword [ebp - 0x114]
add edx, 1
mov dword [ebp - 0x114], edx
mov eax, dword [ebp - 0x114]
shl eax, 1
mov dword [ebp - 0x27c], eax
mov ecx, dword [ebp - 0x280]
add ecx, dword [ebp - 0x27c]
movzx edx, byte [ecx]
mov dword [ebp - 0x254], edx
mov dword [ebp - 0x268], 0xa2
mov eax, dword [ebp - 0x114]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x284], ecx
mov edx, dword [ebp - 0x280]
add edx, dword [ebp - 0x284]
movzx eax, byte [edx]
mov dword [ebp - 0x258], eax
mov dword [ebp - 0x25c], 0x14
mov ecx, dword [ebp - 0x254]
sub ecx, dword [ebp - 0x268]
mov dword [ebp - 0x260], ecx
mov edx, dword [ebp - 0x258]
sub edx, dword [ebp - 0x25c]
mov dword [ebp - 0x264], edx
mov eax, dword [ebp - 0x260]
shl eax, 4
mov dword [ebp - 0x288], eax
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x28c], ecx
mov edx, dword [ebp - 0x288]
or edx, dword [ebp - 0x28c]
mov dword [ebp - 0x290], edx
mov al, byte [ebp - 0x290]
mov byte [ebp - 0xe1], al
movzx ecx, byte [ebp - 0xd9]
mov dl, byte [ebp + ecx - 0xa3c]
mov byte [ebp - 0xdf], dl
movzx eax, byte [ebp - 0xcf]
movzx ecx, byte [ebp + eax - 0xa3c]
mov dword [ebp - 0x8cc], ecx
mov dl, byte [ebp - 0xcf]
add dl, 1
mov byte [ebp - 0xcf], dl
movzx eax, byte [ebp - 0xd4]
add eax, dword [ebp - 0x8cc]
mov byte [ebp - 0xd4], al
movzx ecx, byte [ebp - 0xd4]
movzx edx, byte [ebp - 0xd9]
mov al, byte [ebp + ecx - 0xa3c]
mov byte [ebp + edx - 0xa3c], al
movzx ecx, byte [ebp - 0xd5]
movzx edx, byte [ebp - 0xd4]
mov al, byte [ebp + ecx - 0xa3c]
mov byte [ebp + edx - 0xa3c], al
movzx ecx, byte [ebp - 0xcf]
movzx edx, byte [ebp - 0xd5]
mov al, byte [ebp + ecx - 0xa3c]
mov byte [ebp + edx - 0xa3c], al
movzx ecx, byte [ebp - 0xcf]
mov dl, byte [ebp - 0xdf]
mov byte [ebp + ecx - 0xa3c], dl
movzx eax, byte [ebp - 0xdf]
movzx ecx, byte [ebp + eax - 0xa3c]
movzx edx, byte [ebp - 0xdd]
add edx, ecx
mov byte [ebp - 0xdd], dl
movzx eax, byte [ebp - 0xe1]
movzx ecx, byte [ebp - 0xd4]
movzx edx, byte [ebp + ecx - 0xa3c]
movzx ecx, byte [ebp - 0xcf]
movzx ecx, byte [ebp + ecx - 0xa3c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0xa3c]
xor eax, edx
movzx ecx, byte [ebp - 0xd5]
movzx edx, byte [ebp + ecx - 0xa3c]
movzx ecx, byte [ebp - 0xd9]
movzx ecx, byte [ebp + ecx - 0xa3c]
add edx, ecx
movzx ecx, byte [ebp - 0xdd]
movzx ecx, byte [ebp + ecx - 0xa3c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0xa3c]
movzx ecx, byte [ebp + edx - 0xa3c]
xor eax, ecx
mov byte [ebp - 0xd5], al
mov dl, byte [ebp - 0xe1]
mov byte [ebp - 0xd9], dl
mov al, byte [ebp - 0xd5]
mov byte [ebp - 0x100], al
cmp dword [ebp - 0x114], 0
jle 0x50266d
mov ecx, dword [ebp - 0x114]
mov dl, byte [ebp - 0x100]
mov byte [ebp + ecx - 0x21], dl
jmp 0x5023fc
mov eax, dword [ebp - 0x1f0]
add eax, 1
mov dword [ebp - 0x1f0], eax
mov ecx, 1
imul edx, ecx, 0xc
mov dword [ebp - 0x650], edx
cmp dword [ebp - 0x650], 0xd
jae 0x50269a
jmp 0x5026a0
call fcn.0051da65
nop
mov eax, dword [ebp - 0x650]
mov byte [ebp + eax - 0x20], 0
jmp 0x5026fb
mov dword [ebp - 0x44c], 0
jmp 0x5026c8
mov ecx, dword [ebp - 0x44c]
add ecx, 1
mov dword [ebp - 0x44c], ecx
cmp dword [ebp - 0x44c], 0xd
jge 0x5026fb
mov edx, dword [ebp - 0x44c]
mov dword [ebp - 0x64c], edx
cmp dword [ebp - 0x64c], 0xd
jae 0x5026e8
jmp 0x5026ee
call fcn.0051da65
nop
mov eax, dword [ebp - 0x64c]
mov byte [ebp + eax - 0x20], 0
jmp 0x5026b9
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xb4], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x3e0], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x388], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x388], xmm0
jmp 0x50274a
movsd xmm0, qword [ebp - 0x388]
addsd xmm0, qword [0x52f550]
movsd qword [ebp - 0x388], xmm0
movsd xmm0, qword [0x530ec0]
comisd xmm0, xmmword [ebp - 0x388]
jbe 0x5027fb
movsd xmm0, qword [0x530c90]
mulsd xmm0, qword [ebp - 0x388]
mulsd xmm0, qword [ebp - 0x388]
movsd xmm1, qword [ebp - 0x388]
mulsd xmm1, qword [ebp - 0x388]
subsd xmm0, xmm1
movsd xmm1, qword [0x52f950]
mulsd xmm1, qword [ebp - 0x388]
mulsd xmm1, qword [ebp - 0x388]
addsd xmm1, qword [0x530b48]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x3e0]
movsd qword [ebp - 0x3e0], xmm0
movsd xmm0, qword [ebp - 0x3e0]
comisd xmm0, xmmword [0x530b68]
jbe 0x5027f6
movsd xmm0, qword [0x5309d8]
mulsd xmm0, qword [ebp - 0x388]
movsd xmm1, qword [ebp - 0x3e0]
subsd xmm1, xmm0
movsd qword [ebp - 0x3e0], xmm1
jmp 0x502732
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x3e0]
jbe 0x50283a
jle 0x502880
jg 0x502885
je 0x502884
ja 0x502880
jg 0x502884
je 0x50287e
je 0x502882
jge 0x502891
jg 0x50288a
pop esp
jl 0x502862
and eax, 0x78692438
jb 0x502886
sub eax, 0x3a626b20
je 0x5028a0
pop edx
aas
inc ebx
pop ebp
pop esi
sub ebp, dword [esi + 0x5f]
jmp 0x5035cc
mov dword [ebp - 0xb0], 0x502808
mov dword [ebp - 0xb4], 0x50281a
mov ecx, dword [ebp - 0xb0]
mov dword [ebp - 0x2fc], ecx
mov edx, dword [ebp - 0xb4]
mov dword [ebp - 0x8d0], edx
mov byte [ebp - 0x245], 0x1f
mov dword [ebp - 0x1b4], 0
jmp 0x502888
xor bh, dh
invalid
mov eax, dword [ebp - 0x1b4]
add eax, 1
inc dword [ebx - 0x7a76fe40]
rol byte [ecx], 0x89
test dword [esi + edi*8 - 1], ecx
inc dword [ecx - 0x1b343]
inc dword [eax]
add dword [eax], eax
mov dword [ebp - 0x1b4], eax
dec esp
invalid
invalid
cmp dword [ebp - 0x1b4], 0x100
jae 0x5028a9
dec esp
invalid
add byte [ebx + 0x15], dh
mov ecx, dword [ebp - 0x1b4]
mov dl, byte [ebp - 0x1b4]
mov byte [ebp + ecx - 0xb3c], dl
jmp 0x502879
mov dword [ebp - 0x330], 0
mov byte [ebp - 0xeb], 0
mov dword [ebp - 0x1b4], 0xff
jmp 0x5028d5
mov eax, dword [ebp - 0x1b4]
sub eax, 1
mov dword [ebp - 0x1b4], eax
cmp dword [ebp - 0x1b4], 0
jbe 0x502b45
mov dword [ebp - 0x4c8], 0
mov dword [ebp - 0x430], 1
mov ecx, dword [ebp - 0x430]
cmp ecx, dword [ebp - 0x1b4]
jae 0x502916
mov edx, dword [ebp - 0x430]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x430], eax
jmp 0x5028f6
mov ecx, dword [ebp - 0x330]
mov dword [ebp - 0x648], ecx
cmp dword [ebp - 0x648], 3
ja case.default.0x502935
mov edx, dword [ebp - 0x648]
jmp dword [edx*4 + 0x5036c4]
movzx eax, byte [ebp - 0xeb]
movzx ebx, byte [ebp + eax - 0xb3c]
movsd xmm0, qword [ebp - 0x3e0]
call fcn.0051dea0
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xeb], bl
jmp 0x502a1e
movzx ecx, byte [ebp - 0xeb]
movzx ebx, byte [ebp + ecx - 0xb3c]
movsd xmm0, qword [ebp - 0x3e0]
call fcn.0051dea0
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xeb], bl
jmp 0x502a1e
movzx edx, byte [ebp - 0xeb]
movzx ebx, byte [ebp + edx - 0xb3c]
movsd xmm0, qword [ebp - 0x3e0]
call fcn.0051dea0
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xeb], bl
jmp 0x502a1e
movzx eax, byte [ebp - 0xeb]
movzx ebx, byte [ebp + eax - 0xb3c]
movsd xmm0, qword [ebp - 0x3e0]
call fcn.0051dea0
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0xeb], bl
jmp 0x502a1e
movzx ecx, byte [ebp - 0xeb]
movzx edx, byte [ebp + ecx - 0xb3c]
mov eax, dword [ebp - 0x8d0]
add eax, dword [ebp - 0x330]
movzx ecx, byte [eax - 4]
add edx, ecx
mov byte [ebp - 0xeb], dl
mov edx, dword [ebp - 0x330]
add edx, 1
mov dword [ebp - 0x330], edx
movzx eax, byte [ebp - 0x245]
cmp dword [ebp - 0x330], eax
jb 0x502a5c
mov dword [ebp - 0x330], 0
movzx ecx, byte [ebp - 0x245]
movzx edx, byte [ebp - 0xeb]
add edx, ecx
mov byte [ebp - 0xeb], dl
movzx eax, byte [ebp - 0xeb]
and eax, dword [ebp - 0x430]
mov dword [ebp - 0x2bc], eax
mov ecx, dword [ebp - 0x4c8]
add ecx, 1
mov dword [ebp - 0x4c8], ecx
cmp dword [ebp - 0x4c8], 0xb
jbe 0x502a9b
mov eax, dword [ebp - 0x2bc]
xor edx, edx
div dword [ebp - 0x1b4]
mov dword [ebp - 0x2bc], edx
mov edx, dword [ebp - 0x2bc]
cmp edx, dword [ebp - 0x1b4]
ja 0x502916
mov eax, dword [ebp - 0x1b4]
cmp eax, dword [ebp - 0x2bc]
je 0x502b40
mov ecx, dword [ebp - 0x2bc]
movzx edx, byte [ebp + ecx - 0xb3c]
mov eax, dword [ebp - 0x1b4]
movzx ecx, byte [ebp + eax - 0xb3c]
xor ecx, edx
mov edx, dword [ebp - 0x1b4]
mov byte [ebp + edx - 0xb3c], cl
mov eax, dword [ebp - 0x1b4]
movzx ecx, byte [ebp + eax - 0xb3c]
mov edx, dword [ebp - 0x2bc]
movzx eax, byte [ebp + edx - 0xb3c]
xor eax, ecx
mov ecx, dword [ebp - 0x2bc]
mov byte [ebp + ecx - 0xb3c], al
mov edx, dword [ebp - 0x2bc]
movzx eax, byte [ebp + edx - 0xb3c]
mov ecx, dword [ebp - 0x1b4]
movzx edx, byte [ebp + ecx - 0xb3c]
xor edx, eax
mov eax, dword [ebp - 0x1b4]
mov byte [ebp + eax - 0xb3c], dl
jmp 0x5028c6
mov ecx, 1
shl ecx, 0
mov dl, byte [ebp + ecx - 0xb3c]
mov byte [ebp - 0xdb], dl
mov eax, 1
imul ecx, eax, 3
mov dl, byte [ebp + ecx - 0xb3c]
mov byte [ebp - 0xde], dl
mov eax, 1
imul ecx, eax, 5
mov dl, byte [ebp + ecx - 0xb3c]
mov byte [ebp - 0xfd], dl
mov eax, 1
imul ecx, eax, 7
mov dl, byte [ebp + ecx - 0xb3c]
mov byte [ebp - 0xe0], dl
movzx eax, byte [ebp - 0xeb]
mov cl, byte [ebp + eax - 0xb3c]
mov byte [ebp - 0xf5], cl
mov dword [ebp - 0x644], 0x12
cmp dword [ebp - 0x644], 2
jle 0x50357a
mov edx, dword [ebp - 0x644]
and edx, 1
jne 0x50357a
mov dword [ebp - 0x1bc], 0
mov dword [ebp - 0x238], 0
mov eax, dword [ebp - 0x238]
add eax, 1
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x320], 0
mov ecx, dword [ebp - 0x1bc]
shl ecx, 1
mov dword [ebp - 0x320], ecx
mov dword [ebp - 0x2c8], 0
movss xmm0, dword [0x531598]
movss dword [ebp - 0x1f4], xmm0
movss xmm0, dword [0x5314ec]
movss dword [ebp - 0x2c0], xmm0
movss xmm0, dword [0x531430]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x1f4]
subss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x1f4], xmm0
movss xmm0, dword [ebp - 0x2c0]
mulss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x2c0], xmm0
movss xmm0, dword [ebp - 0x1f4]
subss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x1f4], xmm0
movss xmm0, dword [ebp - 0x1f4]
comiss xmm0, dword [ebp - 0x2c0]
jbe 0x502ceb
movss xmm0, dword [ebp - 0x378]
mulss xmm0, dword [ebp - 0x1f4]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x1f4]
subss xmm0, dword [ebp - 0x2c0]
movss dword [ebp - 0x1f4], xmm0
movss xmm0, dword [ebp - 0x1f4]
addss xmm0, dword [ebp - 0x2c0]
movss dword [ebp - 0x1f4], xmm0
jmp 0x502d4e
movss xmm0, dword [ebp - 0x1f4]
addss xmm0, dword [ebp - 0x2c0]
movss dword [ebp - 0x1f4], xmm0
movss xmm0, dword [ebp - 0x1f4]
subss xmm0, dword [ebp - 0x2c0]
movss dword [ebp - 0x1f4], xmm0
movss xmm0, dword [ebp - 0x1f4]
mulss xmm0, dword [ebp - 0x2c0]
movss dword [ebp - 0x1f4], xmm0
mov edx, dword [ebp - 0x2fc]
add edx, dword [ebp - 0x320]
movzx eax, byte [edx]
add eax, dword [ebp - 0x2c8]
mov dword [ebp - 0x2c8], eax
mov dword [ebp - 0x2d8], 0
mov ecx, dword [ebp - 0x2d8]
add ecx, 0x74
mov dword [ebp - 0x2d8], ecx
mov dword [ebp - 0x300], 0
mov edx, dword [ebp - 0x1bc]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x300], eax
mov dword [ebp - 0x2d4], 0
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [ebp - 0x300]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x2d4]
mov dword [ebp - 0x2d4], edx
mov dword [ebp - 0x2dc], 0
mov eax, dword [ebp - 0x2dc]
add eax, 0x6a
mov dword [ebp - 0x2dc], eax
mov dword [ebp - 0x2d0], 0
mov ecx, dword [ebp - 0x2c8]
sub ecx, dword [ebp - 0x2d8]
add ecx, dword [ebp - 0x2d0]
mov dword [ebp - 0x2d0], ecx
mov dword [ebp - 0x2cc], 0
mov edx, dword [ebp - 0x2d4]
sub edx, dword [ebp - 0x2dc]
add edx, dword [ebp - 0x2cc]
mov dword [ebp - 0x2cc], edx
mov dword [ebp - 0x304], 0
mov eax, dword [ebp - 0x2d0]
shl eax, 4
mov dword [ebp - 0x304], eax
mov dword [ebp - 0x318], 0
mov ecx, dword [ebp - 0x2cc]
mov dword [ebp - 0x318], ecx
mov dword [ebp - 0x31c], 0
mov edx, dword [ebp - 0x304]
or edx, dword [ebp - 0x318]
mov dword [ebp - 0x31c], edx
mov byte [ebp - 0xfe], 0
mov al, byte [ebp - 0x31c]
mov byte [ebp - 0xfe], al
mov byte [ebp - 0xff], 0
movzx ecx, byte [ebp - 0xf5]
mov dl, byte [ebp + ecx - 0xb3c]
mov byte [ebp - 0xff], dl
movzx eax, byte [ebp - 0xdb]
movzx ecx, byte [ebp + eax - 0xb3c]
mov dword [ebp - 0x8d4], ecx
mov dl, byte [ebp - 0xdb]
add dl, 1
mov byte [ebp - 0xdb], dl
movzx eax, byte [ebp - 0xde]
add eax, dword [ebp - 0x8d4]
mov byte [ebp - 0xde], al
movzx ecx, byte [ebp - 0xde]
movzx edx, byte [ebp - 0xf5]
mov al, byte [ebp + ecx - 0xb3c]
mov byte [ebp + edx - 0xb3c], al
movzx ecx, byte [ebp - 0xe0]
movzx edx, byte [ebp - 0xde]
mov al, byte [ebp + ecx - 0xb3c]
mov byte [ebp + edx - 0xb3c], al
movzx ecx, byte [ebp - 0xdb]
movzx edx, byte [ebp - 0xe0]
mov al, byte [ebp + ecx - 0xb3c]
mov byte [ebp + edx - 0xb3c], al
movzx ecx, byte [ebp - 0xdb]
mov dl, byte [ebp - 0xff]
mov byte [ebp + ecx - 0xb3c], dl
movzx eax, byte [ebp - 0xff]
movzx ecx, byte [ebp + eax - 0xb3c]
movzx edx, byte [ebp - 0xfd]
add edx, ecx
mov byte [ebp - 0xfd], dl
movzx eax, byte [ebp - 0xfe]
movzx ecx, byte [ebp - 0xde]
movzx edx, byte [ebp + ecx - 0xb3c]
movzx ecx, byte [ebp - 0xdb]
movzx ecx, byte [ebp + ecx - 0xb3c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0xb3c]
xor eax, edx
movzx ecx, byte [ebp - 0xe0]
movzx edx, byte [ebp + ecx - 0xb3c]
movzx ecx, byte [ebp - 0xf5]
movzx ecx, byte [ebp + ecx - 0xb3c]
add edx, ecx
movzx ecx, byte [ebp - 0xfd]
movzx ecx, byte [ebp + ecx - 0xb3c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0xb3c]
movzx ecx, byte [ebp + edx - 0xb3c]
xor eax, ecx
mov byte [ebp - 0xe0], al
mov dl, byte [ebp - 0xfe]
mov byte [ebp - 0xf5], dl
mov al, byte [ebp - 0xe0]
mov byte [ebp - 0x149], al
cmp dword [ebp - 0x1bc], 0
jle 0x502ff6
movsx cx, byte [ebp - 0x149]
mov edx, dword [ebp - 0x1bc]
mov word [ebp + edx*2 - 0x82], cx
mov eax, dword [ebp - 0x238]
add eax, 4
mov dword [ebp - 0x238], eax
mov ecx, dword [ebp - 0x1bc]
add ecx, 1
mov dword [ebp - 0x4d4], ecx
jmp 0x503025
mov edx, dword [ebp - 0x4d4]
add edx, 1
mov dword [ebp - 0x4d4], edx
mov eax, dword [ebp - 0x4d4]
cmp eax, dword [ebp - 0x238]
jge 0x503292
mov ecx, dword [ebp - 0x1bc]
add ecx, 1
mov dword [ebp - 0x1bc], ecx
mov edx, dword [ebp - 0x1bc]
shl edx, 1
mov dword [ebp - 0x320], edx
mov eax, dword [ebp - 0x2fc]
add eax, dword [ebp - 0x320]
movzx ecx, byte [eax]
mov dword [ebp - 0x2c8], ecx
mov dword [ebp - 0x2d8], 0x74
mov edx, dword [ebp - 0x1bc]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x300], eax
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [ebp - 0x300]
movzx edx, byte [ecx]
mov dword [ebp - 0x2d4], edx
mov dword [ebp - 0x2dc], 0x6a
mov eax, dword [ebp - 0x2c8]
sub eax, dword [ebp - 0x2d8]
mov dword [ebp - 0x2d0], eax
mov ecx, dword [ebp - 0x2d4]
sub ecx, dword [ebp - 0x2dc]
mov dword [ebp - 0x2cc], ecx
mov edx, dword [ebp - 0x2d0]
shl edx, 4
mov dword [ebp - 0x304], edx
mov eax, dword [ebp - 0x2cc]
mov dword [ebp - 0x318], eax
mov ecx, dword [ebp - 0x304]
or ecx, dword [ebp - 0x318]
mov dword [ebp - 0x31c], ecx
mov dl, byte [ebp - 0x31c]
mov byte [ebp - 0xfe], dl
movzx eax, byte [ebp - 0xf5]
mov cl, byte [ebp + eax - 0xb3c]
mov byte [ebp - 0xff], cl
movzx edx, byte [ebp - 0xdb]
movzx eax, byte [ebp + edx - 0xb3c]
mov dword [ebp - 0x8d8], eax
mov cl, byte [ebp - 0xdb]
add cl, 1
mov byte [ebp - 0xdb], cl
movzx edx, byte [ebp - 0xde]
add edx, dword [ebp - 0x8d8]
mov byte [ebp - 0xde], dl
movzx eax, byte [ebp - 0xde]
movzx ecx, byte [ebp - 0xf5]
mov dl, byte [ebp + eax - 0xb3c]
mov byte [ebp + ecx - 0xb3c], dl
movzx eax, byte [ebp - 0xe0]
movzx ecx, byte [ebp - 0xde]
mov dl, byte [ebp + eax - 0xb3c]
mov byte [ebp + ecx - 0xb3c], dl
movzx eax, byte [ebp - 0xdb]
movzx ecx, byte [ebp - 0xe0]
mov dl, byte [ebp + eax - 0xb3c]
mov byte [ebp + ecx - 0xb3c], dl
movzx eax, byte [ebp - 0xdb]
mov cl, byte [ebp - 0xff]
mov byte [ebp + eax - 0xb3c], cl
movzx edx, byte [ebp - 0xff]
movzx eax, byte [ebp + edx - 0xb3c]
movzx ecx, byte [ebp - 0xfd]
add ecx, eax
mov byte [ebp - 0xfd], cl
movzx edx, byte [ebp - 0xfe]
movzx eax, byte [ebp - 0xde]
movzx ecx, byte [ebp + eax - 0xb3c]
movzx eax, byte [ebp - 0xdb]
movzx eax, byte [ebp + eax - 0xb3c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb3c]
xor edx, ecx
movzx eax, byte [ebp - 0xe0]
movzx ecx, byte [ebp + eax - 0xb3c]
movzx eax, byte [ebp - 0xf5]
movzx eax, byte [ebp + eax - 0xb3c]
add ecx, eax
movzx eax, byte [ebp - 0xfd]
movzx eax, byte [ebp + eax - 0xb3c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb3c]
movzx eax, byte [ebp + ecx - 0xb3c]
xor edx, eax
mov byte [ebp - 0xe0], dl
mov cl, byte [ebp - 0xfe]
mov byte [ebp - 0xf5], cl
mov dl, byte [ebp - 0xe0]
mov byte [ebp - 0x149], dl
cmp dword [ebp - 0x1bc], 0
jle 0x50328d
movsx ax, byte [ebp - 0x149]
mov ecx, dword [ebp - 0x1bc]
mov word [ebp + ecx*2 - 0x82], ax
jmp 0x503016
mov edx, dword [ebp - 0x238]
add edx, 1
mov dword [ebp - 0x238], edx
mov eax, dword [ebp - 0x238]
add eax, 4
mov dword [ebp - 0x238], eax
mov ecx, dword [ebp - 0x1bc]
add ecx, 1
mov dword [ebp - 0x4d0], ecx
jmp 0x5032d0
mov edx, dword [ebp - 0x4d0]
add edx, 1
mov dword [ebp - 0x4d0], edx
mov eax, dword [ebp - 0x4d0]
cmp eax, dword [ebp - 0x238]
jge 0x50353d
mov ecx, dword [ebp - 0x1bc]
add ecx, 1
mov dword [ebp - 0x1bc], ecx
mov edx, dword [ebp - 0x1bc]
shl edx, 1
mov dword [ebp - 0x320], edx
mov eax, dword [ebp - 0x2fc]
add eax, dword [ebp - 0x320]
movzx ecx, byte [eax]
mov dword [ebp - 0x2c8], ecx
mov dword [ebp - 0x2d8], 0x74
mov edx, dword [ebp - 0x1bc]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x300], eax
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [ebp - 0x300]
movzx edx, byte [ecx]
mov dword [ebp - 0x2d4], edx
mov dword [ebp - 0x2dc], 0x6a
mov eax, dword [ebp - 0x2c8]
sub eax, dword [ebp - 0x2d8]
mov dword [ebp - 0x2d0], eax
mov ecx, dword [ebp - 0x2d4]
sub ecx, dword [ebp - 0x2dc]
mov dword [ebp - 0x2cc], ecx
mov edx, dword [ebp - 0x2d0]
shl edx, 4
mov dword [ebp - 0x304], edx
mov eax, dword [ebp - 0x2cc]
mov dword [ebp - 0x318], eax
mov ecx, dword [ebp - 0x304]
or ecx, dword [ebp - 0x318]
mov dword [ebp - 0x31c], ecx
mov dl, byte [ebp - 0x31c]
mov byte [ebp - 0xfe], dl
movzx eax, byte [ebp - 0xf5]
mov cl, byte [ebp + eax - 0xb3c]
mov byte [ebp - 0xff], cl
movzx edx, byte [ebp - 0xdb]
movzx eax, byte [ebp + edx - 0xb3c]
mov dword [ebp - 0x8e4], eax
mov cl, byte [ebp - 0xdb]
add cl, 1
mov byte [ebp - 0xdb], cl
movzx edx, byte [ebp - 0xde]
add edx, dword [ebp - 0x8e4]
mov byte [ebp - 0xde], dl
movzx eax, byte [ebp - 0xde]
movzx ecx, byte [ebp - 0xf5]
mov dl, byte [ebp + eax - 0xb3c]
mov byte [ebp + ecx - 0xb3c], dl
movzx eax, byte [ebp - 0xe0]
movzx ecx, byte [ebp - 0xde]
mov dl, byte [ebp + eax - 0xb3c]
mov byte [ebp + ecx - 0xb3c], dl
movzx eax, byte [ebp - 0xdb]
movzx ecx, byte [ebp - 0xe0]
mov dl, byte [ebp + eax - 0xb3c]
mov byte [ebp + ecx - 0xb3c], dl
movzx eax, byte [ebp - 0xdb]
mov cl, byte [ebp - 0xff]
mov byte [ebp + eax - 0xb3c], cl
movzx edx, byte [ebp - 0xff]
movzx eax, byte [ebp + edx - 0xb3c]
movzx ecx, byte [ebp - 0xfd]
add ecx, eax
mov byte [ebp - 0xfd], cl
movzx edx, byte [ebp - 0xfe]
movzx eax, byte [ebp - 0xde]
movzx ecx, byte [ebp + eax - 0xb3c]
movzx eax, byte [ebp - 0xdb]
movzx eax, byte [ebp + eax - 0xb3c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb3c]
xor edx, ecx
movzx eax, byte [ebp - 0xe0]
movzx ecx, byte [ebp + eax - 0xb3c]
movzx eax, byte [ebp - 0xf5]
movzx eax, byte [ebp + eax - 0xb3c]
add ecx, eax
movzx eax, byte [ebp - 0xfd]
movzx eax, byte [ebp + eax - 0xb3c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0xb3c]
movzx eax, byte [ebp + ecx - 0xb3c]
xor edx, eax
mov byte [ebp - 0xe0], dl
mov cl, byte [ebp - 0xfe]
mov byte [ebp - 0xf5], cl
mov dl, byte [ebp - 0xe0]
mov byte [ebp - 0x149], dl
cmp dword [ebp - 0x1bc], 0
jle 0x503538
movsx ax, byte [ebp - 0x149]
mov ecx, dword [ebp - 0x1bc]
mov word [ebp + ecx*2 - 0x82], ax
jmp 0x5032c1
mov edx, dword [ebp - 0x238]
add edx, 1
mov dword [ebp - 0x238], edx
mov eax, 2
shl eax, 3
mov dword [ebp - 0x638], eax
cmp dword [ebp - 0x638], 0x12
jae 0x503565
jmp 0x50356b
call fcn.0051da65
nop
xor ecx, ecx
mov edx, dword [ebp - 0x638]
mov word [ebp + edx - 0x80], cx
jmp 0x5035cc
mov dword [ebp - 0x42c], 0
jmp 0x503595
mov eax, dword [ebp - 0x42c]
add eax, 1
mov dword [ebp - 0x42c], eax
cmp dword [ebp - 0x42c], 9
jge 0x5035cc
mov ecx, dword [ebp - 0x42c]
shl ecx, 1
mov dword [ebp - 0x630], ecx
cmp dword [ebp - 0x630], 0x12
jae 0x5035b7
jmp 0x5035bd
call fcn.0051da65
nop
xor edx, edx
mov eax, dword [ebp - 0x630]
mov word [ebp + eax - 0x80], dx
jmp 0x503586
push 4
call fcn.0051d8c5
add esp, 4
mov dword [ebp - 0x4cc], eax
mov dword [ebp - 4], 1
cmp dword [ebp - 0x4cc], 0
je 0x503610
push 4
mov ecx, dword [ebp - 0x4cc]
call fcn.004aa380
lea ecx, [ebp - 0x80]
push ecx
mov ecx, dword [ebp - 0x4cc]
call fcn.004d9910
mov dword [ebp - 0x62c], eax
jmp 0x50361a
mov dword [ebp - 0x62c], 0
mov edx, dword [ebp - 0x62c]
mov dword [ebp - 0x8f4], edx
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x8f4]
mov dword [ebp - 0x8f8], eax
lea ecx, [ebp - 0x20]
push ecx
mov ecx, dword [ebp - 0x8f8]
call fcn.004d9930
mov dword [ebp - 0x8fc], eax
call dword [ebp - 0x8fc]
cmp eax, 0x514
jne 0x50365f
xor eax, eax
jmp 0x503664
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0051d6f6
mov esp, ebp
pop ebp
ret 0xc