Function at 0x4a1400
Capabilities:
Encrypt data using speck

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0xa5b89e
mov eax, dword fs:[0]
push eax
sub esp, 0x970
mov eax, dword [0xa9706c]
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 - 0x4e8], ecx
mov dword [ebp - 0x5bc], 0
mov byte [ebp - 0x5c2], 0
mov dword [ebp - 0x4dc], 0
mov dword [ebp - 0x298], 0
mov dword [ebp - 0x954], 0
mov dword [ebp - 0x950], 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x56c], eax
mov dword [ebp - 0x314], 0
mov dword [ebp - 0x318], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x558], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x518], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x518], xmm0
jmp 0x4a14c8
movsd xmm0, qword [ebp - 0x518]
addsd xmm0, qword [0xa5f350]
movsd qword [ebp - 0x518], xmm0
movsd xmm0, qword [0xa60910]
comisd xmm0, xmmword [ebp - 0x518]
jbe 0x4a1579
movsd xmm0, qword [0xa60848]
mulsd xmm0, qword [ebp - 0x518]
mulsd xmm0, qword [ebp - 0x518]
movsd xmm1, qword [ebp - 0x518]
mulsd xmm1, qword [ebp - 0x518]
subsd xmm0, xmm1
movsd xmm1, qword [0xa606e0]
mulsd xmm1, qword [ebp - 0x518]
mulsd xmm1, qword [ebp - 0x518]
addsd xmm1, qword [0xa60750]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x558]
movsd qword [ebp - 0x558], xmm0
movsd xmm0, qword [ebp - 0x558]
comisd xmm0, xmmword [0xa607c0]
jbe 0x4a1574
movsd xmm0, qword [0xa60690]
mulsd xmm0, qword [ebp - 0x518]
movsd xmm1, qword [ebp - 0x558]
subsd xmm1, xmm0
movsd qword [ebp - 0x558], xmm1
jmp 0x4a14b0
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x558]
jbe 0x4a15c3
fcom qword [edx - 0x2b]
push ecx
rcr byte [edx - 0x26], 1
pop edx
rcl dword [ebp - 0x2f], cl
push edi
xlatb
push edx
xlatb
pop ecx
ficom dword [eax - 0x31]
push ecx
rcl byte [eax - 0x2b]
push ebx
ror byte [esi + ecx*2 + 0x7d], 1
jne 0x4a160d
inc esp
aas
inc esi
popal
je 0x4a1623
jno 0x4a15d7
imul ebp, dword [edi + 0x47], 0x2248355c
imul ebp, dword [esi], 0x21
pop eax
xor eax, dword es:[esi + 0x6b]
jns 0x4a1629
inc ebx
jmp 0x4a3b37
mov dword [ebp - 0x314], 0x4a1586
mov dword [ebp - 0x318], 0x4a15a0
mov eax, dword [ebp - 0x314]
mov dword [ebp - 0x3ec], eax
mov ecx, dword [ebp - 0x318]
mov dword [ebp - 0x838], ecx
mov byte [ebp - 0x47d], 0x22
mov dword [ebp - 0x3a4], 0
jmp 0x4a1611
mov edx, dword [ebp - 0x3a4]
add edx, 1
mov dword [ebp - 0x3a4], edx
pop esp
cld
invalid
cmp dword [ebp - 0x3a4], 0x100
jae 0x4a1632
mov eax, dword [ebp - 0x3a4]
mov cl, byte [ebp - 0x3a4]
mov byte [ebp + eax - 0x710], cl
jmp 0x4a1602
mov dword [ebp - 0x4e4], 0
mov byte [ebp - 0x346], 0
mov dword [ebp - 0x3a4], 0xff
jmp 0x4a165e
mov edx, dword [ebp - 0x3a4]
sub edx, 1
mov dword [ebp - 0x3a4], edx
cmp dword [ebp - 0x3a4], 0
jbe 0x4a1ade
mov dword [ebp - 0x5c0], 0
mov dword [ebp - 0x570], 1
mov eax, dword [ebp - 0x570]
cmp eax, dword [ebp - 0x3a4]
jae 0x4a169f
mov ecx, dword [ebp - 0x570]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x570], edx
jmp 0x4a167f
mov eax, dword [ebp - 0x4e4]
mov dword [ebp - 0x5e4], eax
cmp dword [ebp - 0x5e4], 3
ja case.default.0x4a16be
mov ecx, dword [ebp - 0x5e4]
jmp dword [ecx*4 + 0x4a7f34]
movzx edx, byte [ebp - 0x346]
movzx ebx, byte [ebp + edx - 0x710]
movsd xmm0, qword [ebp - 0x558]
call fcn.009e3680
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x346], bl
jmp 0x4a17a7
movzx eax, byte [ebp - 0x346]
movzx ebx, byte [ebp + eax - 0x710]
movsd xmm0, qword [ebp - 0x558]
call fcn.009e3680
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x346], bl
jmp 0x4a17a7
movzx ecx, byte [ebp - 0x346]
movzx ebx, byte [ebp + ecx - 0x710]
movsd xmm0, qword [ebp - 0x558]
call fcn.009e3680
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x346], bl
jmp 0x4a17a7
movzx edx, byte [ebp - 0x346]
movzx ebx, byte [ebp + edx - 0x710]
movsd xmm0, qword [ebp - 0x558]
call fcn.009e3680
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x346], bl
jmp 0x4a17a7
movzx eax, byte [ebp - 0x346]
movzx ecx, byte [ebp + eax - 0x710]
mov edx, dword [ebp - 0x838]
add edx, dword [ebp - 0x4e4]
movzx eax, byte [edx - 4]
add ecx, eax
mov byte [ebp - 0x346], cl
mov ecx, dword [ebp - 0x4e4]
add ecx, 1
mov dword [ebp - 0x4e4], ecx
movzx edx, byte [ebp - 0x47d]
cmp dword [ebp - 0x4e4], edx
jb 0x4a19f5
mov dword [ebp - 0x4e4], 0
movsd xmm0, qword [0xa60bb0]
movsd qword [ebp - 0x4d8], xmm0
movsd xmm0, qword [0xa60ad0]
movsd qword [ebp - 0x4b8], xmm0
movsd xmm0, qword [0xa609a0]
movsd qword [ebp - 0x468], xmm0
movsd xmm0, qword [ebp - 0x4d8]
mulsd xmm0, qword [ebp - 0x468]
movsd qword [ebp - 0x4d8], xmm0
movsd xmm0, qword [ebp - 0x4b8]
subsd xmm0, qword [ebp - 0x468]
movsd qword [ebp - 0x4b8], xmm0
movsd xmm0, qword [ebp - 0x4b8]
mulsd xmm0, qword [ebp - 0x468]
movsd qword [ebp - 0x4b8], xmm0
movsd xmm0, qword [ebp - 0x468]
comisd xmm0, xmmword [ebp - 0x4d8]
jbe 0x4a1997
movsd xmm0, qword [ebp - 0x468]
divsd xmm0, qword [ebp - 0x4b8]
movsd qword [ebp - 0x468], xmm0
movsd xmm0, qword [ebp - 0x4b8]
subsd xmm0, qword [ebp - 0x4d8]
movsd qword [ebp - 0x4b8], xmm0
movsd xmm0, qword [ebp - 0x468]
divsd xmm0, qword [ebp - 0x4b8]
movsd qword [ebp - 0x468], xmm0
movsd xmm0, qword [ebp - 0x4d8]
subsd xmm0, qword [ebp - 0x4b8]
movsd qword [ebp - 0x4d8], xmm0
movsd xmm0, qword [ebp - 0x4d8]
addsd xmm0, qword [ebp - 0x4b8]
movsd qword [ebp - 0x4d8], xmm0
movsd xmm0, qword [ebp - 0x468]
divsd xmm0, qword [ebp - 0x4d8]
movsd qword [ebp - 0x468], xmm0
movsd xmm0, qword [ebp - 0x468]
comisd xmm0, xmmword [ebp - 0x4b8]
jbe 0x4a194d
movsd xmm0, qword [ebp - 0x468]
mulsd xmm0, qword [ebp - 0x4d8]
movsd qword [ebp - 0x468], xmm0
movsd xmm0, qword [ebp - 0x468]
divsd xmm0, qword [ebp - 0x4d8]
movsd qword [ebp - 0x468], xmm0
movsd xmm0, qword [ebp - 0x4d8]
addsd xmm0, qword [ebp - 0x4b8]
movsd qword [ebp - 0x4d8], xmm0
jmp 0x4a1995
movsd xmm0, qword [ebp - 0x468]
mulsd xmm0, qword [ebp - 0x4d8]
movsd qword [ebp - 0x468], xmm0
movsd xmm0, qword [ebp - 0x468]
subsd xmm0, qword [ebp - 0x4d8]
movsd qword [ebp - 0x468], xmm0
movsd xmm0, qword [ebp - 0x468]
addsd xmm0, qword [ebp - 0x4d8]
movsd qword [ebp - 0x468], xmm0
jmp 0x4a19f5
movsd xmm0, qword [ebp - 0x4b8]
subsd xmm0, qword [ebp - 0x468]
movsd qword [ebp - 0x4b8], xmm0
movsd xmm0, qword [ebp - 0x4b8]
mulsd xmm0, qword [ebp - 0x468]
movsd qword [ebp - 0x4b8], xmm0
movsd xmm0, qword [ebp - 0x4b8]
addsd xmm0, qword [ebp - 0x468]
movsd qword [ebp - 0x4b8], xmm0
movzx eax, byte [ebp - 0x47d]
movzx ecx, byte [ebp - 0x346]
add ecx, eax
mov byte [ebp - 0x346], cl
movzx edx, byte [ebp - 0x346]
and edx, dword [ebp - 0x570]
mov dword [ebp - 0x4d0], edx
mov eax, dword [ebp - 0x5c0]
add eax, 1
mov dword [ebp - 0x5c0], eax
cmp dword [ebp - 0x5c0], 0xb
jbe 0x4a1a34
mov eax, dword [ebp - 0x4d0]
xor edx, edx
div dword [ebp - 0x3a4]
mov dword [ebp - 0x4d0], edx
mov ecx, dword [ebp - 0x4d0]
cmp ecx, dword [ebp - 0x3a4]
ja 0x4a169f
mov edx, dword [ebp - 0x3a4]
cmp edx, dword [ebp - 0x4d0]
je 0x4a1ad9
mov eax, dword [ebp - 0x4d0]
movzx ecx, byte [ebp + eax - 0x710]
mov edx, dword [ebp - 0x3a4]
movzx eax, byte [ebp + edx - 0x710]
xor eax, ecx
mov ecx, dword [ebp - 0x3a4]
mov byte [ebp + ecx - 0x710], al
mov edx, dword [ebp - 0x3a4]
movzx eax, byte [ebp + edx - 0x710]
mov ecx, dword [ebp - 0x4d0]
movzx edx, byte [ebp + ecx - 0x710]
xor edx, eax
mov eax, dword [ebp - 0x4d0]
mov byte [ebp + eax - 0x710], dl
mov ecx, dword [ebp - 0x4d0]
movzx edx, byte [ebp + ecx - 0x710]
mov eax, dword [ebp - 0x3a4]
movzx ecx, byte [ebp + eax - 0x710]
xor ecx, edx
mov edx, dword [ebp - 0x3a4]
mov byte [ebp + edx - 0x710], cl
jmp 0x4a164f
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x710]
mov byte [ebp - 0x32d], cl
mov edx, 1
imul eax, edx, 3
mov cl, byte [ebp + eax - 0x710]
mov byte [ebp - 0x32f], cl
mov edx, 1
imul eax, edx, 5
mov cl, byte [ebp + eax - 0x710]
mov byte [ebp - 0x339], cl
mov edx, 1
imul eax, edx, 7
mov cl, byte [ebp + eax - 0x710]
mov byte [ebp - 0x330], cl
movzx edx, byte [ebp - 0x346]
mov al, byte [ebp + edx - 0x710]
mov byte [ebp - 0x333], al
mov dword [ebp - 0x5e8], 0x1a
cmp dword [ebp - 0x5e8], 2
jle 0x4a3ae6
mov ecx, dword [ebp - 0x5e8]
and ecx, 1
jne 0x4a3ae6
mov dword [ebp - 0x350], 0
mov dword [ebp - 0x38c], 0
mov edx, dword [ebp - 0x38c]
add edx, 1
mov dword [ebp - 0x38c], edx
mov dword [ebp - 0x3e8], 0
mov eax, dword [ebp - 0x350]
shl eax, 1
mov dword [ebp - 0x3e8], eax
mov dword [ebp - 0x3d0], 0
mov ecx, dword [ebp - 0x3ec]
add ecx, dword [ebp - 0x3e8]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x3d0]
mov dword [ebp - 0x3d0], edx
mov dword [ebp - 0x3dc], 0
mov eax, dword [ebp - 0x3dc]
add eax, 0xce
mov dword [ebp - 0x3dc], eax
mov dword [ebp - 0x3f0], 0
mov ecx, dword [ebp - 0x350]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x3f0], edx
mov dword [ebp - 0x3a8], 0
mov eax, dword [ebp - 0x3ec]
add eax, dword [ebp - 0x3f0]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x3a8], ecx
mov dword [ebp - 0x3ac], 0
mov edx, dword [ebp - 0x3ac]
add edx, 0x4b
mov dword [ebp - 0x3ac], edx
mov dword [ebp - 0x3b0], 0
mov eax, dword [ebp - 0x3d0]
sub eax, dword [ebp - 0x3dc]
add eax, dword [ebp - 0x3b0]
mov dword [ebp - 0x3b0], eax
mov dword [ebp - 0x3b4], 0
mov ecx, dword [ebp - 0x3a8]
sub ecx, dword [ebp - 0x3ac]
add ecx, dword [ebp - 0x3b4]
mov dword [ebp - 0x3b4], ecx
mov dword [ebp - 0x3f4], 0
mov edx, dword [ebp - 0x3b0]
shl edx, 4
mov dword [ebp - 0x3f4], edx
mov dword [ebp - 0x3f8], 0
mov eax, dword [ebp - 0x3b4]
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3fc], 0
mov ecx, dword [ebp - 0x3f4]
or ecx, dword [ebp - 0x3f8]
mov dword [ebp - 0x3fc], ecx
mov byte [ebp - 0x33a], 0
mov dl, byte [ebp - 0x3fc]
mov byte [ebp - 0x33a], dl
mov byte [ebp - 0x338], 0
movzx eax, byte [ebp - 0x333]
mov cl, byte [ebp + eax - 0x710]
mov byte [ebp - 0x338], cl
movzx edx, byte [ebp - 0x32d]
movzx eax, byte [ebp + edx - 0x710]
movzx ecx, byte [ebp - 0x32f]
add ecx, eax
mov byte [ebp - 0x32f], cl
mov dl, byte [ebp - 0x32d]
add dl, 1
mov byte [ebp - 0x32d], dl
movzx eax, byte [ebp - 0x32f]
movzx ecx, byte [ebp - 0x333]
mov dl, byte [ebp + eax - 0x710]
mov byte [ebp + ecx - 0x710], dl
movzx eax, byte [ebp - 0x330]
movzx ecx, byte [ebp - 0x32f]
mov dl, byte [ebp + eax - 0x710]
mov byte [ebp + ecx - 0x710], dl
movzx eax, byte [ebp - 0x32d]
movzx ecx, byte [ebp - 0x330]
mov dl, byte [ebp + eax - 0x710]
mov byte [ebp + ecx - 0x710], dl
movzx eax, byte [ebp - 0x32d]
mov cl, byte [ebp - 0x338]
mov byte [ebp + eax - 0x710], cl
movzx edx, byte [ebp - 0x338]
movzx eax, byte [ebp + edx - 0x710]
movzx ecx, byte [ebp - 0x339]
add ecx, eax
mov byte [ebp - 0x339], cl
movzx edx, byte [ebp - 0x33a]
movzx eax, byte [ebp - 0x32f]
movzx ecx, byte [ebp + eax - 0x710]
movzx eax, byte [ebp - 0x32d]
movzx eax, byte [ebp + eax - 0x710]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x710]
xor edx, ecx
movzx eax, byte [ebp - 0x330]
movzx ecx, byte [ebp + eax - 0x710]
movzx eax, byte [ebp - 0x333]
movzx eax, byte [ebp + eax - 0x710]
add ecx, eax
movzx eax, byte [ebp - 0x339]
movzx eax, byte [ebp + eax - 0x710]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x710]
movzx eax, byte [ebp + ecx - 0x710]
xor edx, eax
mov byte [ebp - 0x330], dl
mov cl, byte [ebp - 0x33a]
mov byte [ebp - 0x333], cl
mov dl, byte [ebp - 0x330]
mov byte [ebp - 0x33f], dl
cmp dword [ebp - 0x350], 0
jle 0x4a1e69
movsx ax, byte [ebp - 0x33f]
mov ecx, dword [ebp - 0x350]
mov word [ebp + ecx*2 - 0x42], ax
mov edx, dword [ebp - 0x350]
add edx, 1
mov dword [ebp - 0x350], edx
mov eax, dword [ebp - 0x38c]
add eax, 1
mov dword [ebp - 0x38c], eax
mov ecx, dword [ebp - 0x350]
shl ecx, 1
mov dword [ebp - 0x3e8], ecx
mov edx, dword [ebp - 0x3ec]
add edx, dword [ebp - 0x3e8]
movzx eax, byte [edx]
mov dword [ebp - 0x3d0], eax
mov dword [ebp - 0x3dc], 0xce
movss xmm0, dword [0xa60d50]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [0xa60ce0]
movss dword [ebp - 0x374], xmm0
movss xmm0, dword [0xa60c78]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x374]
subss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x374], xmm0
movss xmm0, dword [ebp - 0x35c]
addss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x374]
mulss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x374], xmm0
movss xmm0, dword [ebp - 0x374]
comiss xmm0, dword [ebp - 0x37c]
jbe 0x4a1f9a
movss xmm0, dword [ebp - 0x37c]
mulss xmm0, dword [ebp - 0x35c]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x374]
subss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x374], xmm0
movss xmm0, dword [ebp - 0x35c]
addss xmm0, dword [ebp - 0x374]
movss dword [ebp - 0x35c], xmm0
mov ecx, dword [ebp - 0x350]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x3f0], edx
jmp 0x4a21bc
movss xmm0, dword [ebp - 0x35c]
addss xmm0, dword [ebp - 0x374]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x374]
mulss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x374], xmm0
movss xmm0, dword [ebp - 0x35c]
addss xmm0, dword [ebp - 0x374]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x35c]
divss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x35c]
subss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x374]
subss xmm0, dword [ebp - 0x35c]
movss dword [ebp - 0x374], xmm0
movss xmm0, dword [ebp - 0x374]
comiss xmm0, dword [ebp - 0x35c]
jbe 0x4a2174
movss xmm0, dword [ebp - 0x35c]
addss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x35c]
addss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x37c]
addss xmm0, dword [ebp - 0x374]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x35c]
subss xmm0, dword [ebp - 0x374]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x37c]
mulss xmm0, dword [ebp - 0x35c]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x35c]
divss xmm0, dword [ebp - 0x374]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x37c]
comiss xmm0, dword [ebp - 0x374]
jbe 0x4a212a
movss xmm0, dword [ebp - 0x35c]
mulss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x35c]
subss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x37c]
mulss xmm0, dword [ebp - 0x374]
movss dword [ebp - 0x37c], xmm0
jmp 0x4a2172
movss xmm0, dword [ebp - 0x35c]
subss xmm0, dword [ebp - 0x374]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x35c]
mulss xmm0, dword [ebp - 0x374]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x35c]
divss xmm0, dword [ebp - 0x374]
movss dword [ebp - 0x35c], xmm0
jmp 0x4a21bc
movss xmm0, dword [ebp - 0x37c]
divss xmm0, dword [ebp - 0x35c]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x35c]
subss xmm0, dword [ebp - 0x374]
movss dword [ebp - 0x35c], xmm0
movss xmm0, dword [ebp - 0x374]
divss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x374], xmm0
mov eax, dword [ebp - 0x3ec]
add eax, dword [ebp - 0x3f0]
movzx ecx, byte [eax]
mov dword [ebp - 0x3a8], ecx
mov dword [ebp - 0x3ac], 0x4b
mov edx, dword [ebp - 0x3d0]
sub edx, dword [ebp - 0x3dc]
mov dword [ebp - 0x3b0], edx
mov eax, dword [ebp - 0x3a8]
sub eax, dword [ebp - 0x3ac]
mov dword [ebp - 0x3b4], eax
mov ecx, dword [ebp - 0x3b0]
shl ecx, 4
mov dword [ebp - 0x3f4], ecx
mov edx, dword [ebp - 0x3b4]
mov dword [ebp - 0x3f8], edx
mov eax, dword [ebp - 0x3f4]
or eax, dword [ebp - 0x3f8]
mov dword [ebp - 0x3fc], eax
mov cl, byte [ebp - 0x3fc]
mov byte [ebp - 0x33a], cl
movzx edx, byte [ebp - 0x333]
mov al, byte [ebp + edx - 0x710]
mov byte [ebp - 0x338], al
movzx ecx, byte [ebp - 0x32d]
movzx edx, byte [ebp + ecx - 0x710]
movzx eax, byte [ebp - 0x32f]
add eax, edx
mov byte [ebp - 0x32f], al
mov cl, byte [ebp - 0x32d]
add cl, 1
mov byte [ebp - 0x32d], cl
movzx edx, byte [ebp - 0x32f]
movzx eax, byte [ebp - 0x333]
mov cl, byte [ebp + edx - 0x710]
mov byte [ebp + eax - 0x710], cl
movzx edx, byte [ebp - 0x330]
movzx eax, byte [ebp - 0x32f]
mov cl, byte [ebp + edx - 0x710]
mov byte [ebp + eax - 0x710], cl
movzx edx, byte [ebp - 0x32d]
movzx eax, byte [ebp - 0x330]
mov cl, byte [ebp + edx - 0x710]
mov byte [ebp + eax - 0x710], cl
movzx edx, byte [ebp - 0x32d]
mov al, byte [ebp - 0x338]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x338]
movzx edx, byte [ebp + ecx - 0x710]
movzx eax, byte [ebp - 0x339]
add eax, edx
mov byte [ebp - 0x339], al
movzx ecx, byte [ebp - 0x33a]
movzx edx, byte [ebp - 0x32f]
movzx eax, byte [ebp + edx - 0x710]
movzx edx, byte [ebp - 0x32d]
movzx edx, byte [ebp + edx - 0x710]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x710]
xor ecx, eax
movzx edx, byte [ebp - 0x330]
movzx eax, byte [ebp + edx - 0x710]
movzx edx, byte [ebp - 0x333]
movzx edx, byte [ebp + edx - 0x710]
add eax, edx
movzx edx, byte [ebp - 0x339]
movzx edx, byte [ebp + edx - 0x710]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x710]
movzx edx, byte [ebp + eax - 0x710]
xor ecx, edx
mov byte [ebp - 0x330], cl
mov al, byte [ebp - 0x33a]
mov byte [ebp - 0x333], al
mov cl, byte [ebp - 0x330]
mov byte [ebp - 0x33f], cl
cmp dword [ebp - 0x350], 0
jle 0x4a23b7
movsx dx, byte [ebp - 0x33f]
mov eax, dword [ebp - 0x350]
mov word [ebp + eax*2 - 0x42], dx
mov ecx, dword [ebp - 0x38c]
add ecx, 3
mov dword [ebp - 0x38c], ecx
mov edx, dword [ebp - 0x350]
add edx, 1
mov dword [ebp - 0x580], edx
jmp 0x4a23e6
mov eax, dword [ebp - 0x580]
add eax, 1
mov dword [ebp - 0x580], eax
mov ecx, dword [ebp - 0x580]
cmp ecx, dword [ebp - 0x38c]
jge 0x4a2645
mov edx, dword [ebp - 0x350]
add edx, 1
mov dword [ebp - 0x350], edx
mov eax, dword [ebp - 0x350]
shl eax, 1
mov dword [ebp - 0x3e8], eax
mov ecx, dword [ebp - 0x3ec]
add ecx, dword [ebp - 0x3e8]
movzx edx, byte [ecx]
mov dword [ebp - 0x3d0], edx
mov dword [ebp - 0x3dc], 0xce
mov eax, dword [ebp - 0x350]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x3f0], ecx
mov edx, dword [ebp - 0x3ec]
add edx, dword [ebp - 0x3f0]
movzx eax, byte [edx]
mov dword [ebp - 0x3a8], eax
mov dword [ebp - 0x3ac], 0x4b
mov ecx, dword [ebp - 0x3d0]
sub ecx, dword [ebp - 0x3dc]
mov dword [ebp - 0x3b0], ecx
mov edx, dword [ebp - 0x3a8]
sub edx, dword [ebp - 0x3ac]
mov dword [ebp - 0x3b4], edx
mov eax, dword [ebp - 0x3b0]
shl eax, 4
mov dword [ebp - 0x3f4], eax
mov ecx, dword [ebp - 0x3b4]
mov dword [ebp - 0x3f8], ecx
mov edx, dword [ebp - 0x3f4]
or edx, dword [ebp - 0x3f8]
mov dword [ebp - 0x3fc], edx
mov al, byte [ebp - 0x3fc]
mov byte [ebp - 0x33a], al
movzx ecx, byte [ebp - 0x333]
mov dl, byte [ebp + ecx - 0x710]
mov byte [ebp - 0x338], dl
movzx eax, byte [ebp - 0x32d]
movzx ecx, byte [ebp + eax - 0x710]
movzx edx, byte [ebp - 0x32f]
add edx, ecx
mov byte [ebp - 0x32f], dl
mov al, byte [ebp - 0x32d]
add al, 1
mov byte [ebp - 0x32d], al
movzx ecx, byte [ebp - 0x32f]
movzx edx, byte [ebp - 0x333]
mov al, byte [ebp + ecx - 0x710]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x330]
movzx edx, byte [ebp - 0x32f]
mov al, byte [ebp + ecx - 0x710]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x32d]
movzx edx, byte [ebp - 0x330]
mov al, byte [ebp + ecx - 0x710]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x32d]
mov dl, byte [ebp - 0x338]
mov byte [ebp + ecx - 0x710], dl
movzx eax, byte [ebp - 0x338]
movzx ecx, byte [ebp + eax - 0x710]
movzx edx, byte [ebp - 0x339]
add edx, ecx
mov byte [ebp - 0x339], dl
movzx eax, byte [ebp - 0x33a]
movzx ecx, byte [ebp - 0x32f]
movzx edx, byte [ebp + ecx - 0x710]
movzx ecx, byte [ebp - 0x32d]
movzx ecx, byte [ebp + ecx - 0x710]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x710]
xor eax, edx
movzx ecx, byte [ebp - 0x330]
movzx edx, byte [ebp + ecx - 0x710]
movzx ecx, byte [ebp - 0x333]
movzx ecx, byte [ebp + ecx - 0x710]
add edx, ecx
movzx ecx, byte [ebp - 0x339]
movzx ecx, byte [ebp + ecx - 0x710]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x710]
movzx ecx, byte [ebp + edx - 0x710]
xor eax, ecx
mov byte [ebp - 0x330], al
mov dl, byte [ebp - 0x33a]
mov byte [ebp - 0x333], dl
mov al, byte [ebp - 0x330]
mov byte [ebp - 0x33f], al
cmp dword [ebp - 0x350], 0
jle 0x4a2640
movsx cx, byte [ebp - 0x33f]
mov edx, dword [ebp - 0x350]
mov word [ebp + edx*2 - 0x42], cx
jmp 0x4a23d7
mov eax, dword [ebp - 0x38c]
add eax, 1
mov dword [ebp - 0x38c], eax
mov ecx, dword [ebp - 0x38c]
add ecx, 4
mov dword [ebp - 0x38c], ecx
mov edx, dword [ebp - 0x350]
add edx, 1
mov dword [ebp - 0x584], edx
jmp 0x4a2683
mov eax, dword [ebp - 0x584]
add eax, 1
mov dword [ebp - 0x584], eax
mov ecx, dword [ebp - 0x584]
cmp ecx, dword [ebp - 0x38c]
jge 0x4a28e2
mov edx, dword [ebp - 0x350]
add edx, 1
mov dword [ebp - 0x350], edx
mov eax, dword [ebp - 0x350]
shl eax, 1
mov dword [ebp - 0x3e8], eax
mov ecx, dword [ebp - 0x3ec]
add ecx, dword [ebp - 0x3e8]
movzx edx, byte [ecx]
mov dword [ebp - 0x3d0], edx
mov dword [ebp - 0x3dc], 0xce
mov eax, dword [ebp - 0x350]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x3f0], ecx
mov edx, dword [ebp - 0x3ec]
add edx, dword [ebp - 0x3f0]
movzx eax, byte [edx]
mov dword [ebp - 0x3a8], eax
mov dword [ebp - 0x3ac], 0x4b
mov ecx, dword [ebp - 0x3d0]
sub ecx, dword [ebp - 0x3dc]
mov dword [ebp - 0x3b0], ecx
mov edx, dword [ebp - 0x3a8]
sub edx, dword [ebp - 0x3ac]
mov dword [ebp - 0x3b4], edx
mov eax, dword [ebp - 0x3b0]
shl eax, 4
mov dword [ebp - 0x3f4], eax
mov ecx, dword [ebp - 0x3b4]
mov dword [ebp - 0x3f8], ecx
mov edx, dword [ebp - 0x3f4]
or edx, dword [ebp - 0x3f8]
mov dword [ebp - 0x3fc], edx
mov al, byte [ebp - 0x3fc]
mov byte [ebp - 0x33a], al
movzx ecx, byte [ebp - 0x333]
mov dl, byte [ebp + ecx - 0x710]
mov byte [ebp - 0x338], dl
movzx eax, byte [ebp - 0x32d]
movzx ecx, byte [ebp + eax - 0x710]
movzx edx, byte [ebp - 0x32f]
add edx, ecx
mov byte [ebp - 0x32f], dl
mov al, byte [ebp - 0x32d]
add al, 1
mov byte [ebp - 0x32d], al
movzx ecx, byte [ebp - 0x32f]
movzx edx, byte [ebp - 0x333]
mov al, byte [ebp + ecx - 0x710]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x330]
movzx edx, byte [ebp - 0x32f]
mov al, byte [ebp + ecx - 0x710]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x32d]
movzx edx, byte [ebp - 0x330]
mov al, byte [ebp + ecx - 0x710]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x32d]
mov dl, byte [ebp - 0x338]
mov byte [ebp + ecx - 0x710], dl
movzx eax, byte [ebp - 0x338]
movzx ecx, byte [ebp + eax - 0x710]
movzx edx, byte [ebp - 0x339]
add edx, ecx
mov byte [ebp - 0x339], dl
movzx eax, byte [ebp - 0x33a]
movzx ecx, byte [ebp - 0x32f]
movzx edx, byte [ebp + ecx - 0x710]
movzx ecx, byte [ebp - 0x32d]
movzx ecx, byte [ebp + ecx - 0x710]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x710]
xor eax, edx
movzx ecx, byte [ebp - 0x330]
movzx edx, byte [ebp + ecx - 0x710]
movzx ecx, byte [ebp - 0x333]
movzx ecx, byte [ebp + ecx - 0x710]
add edx, ecx
movzx ecx, byte [ebp - 0x339]
movzx ecx, byte [ebp + ecx - 0x710]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x710]
movzx ecx, byte [ebp + edx - 0x710]
xor eax, ecx
mov byte [ebp - 0x330], al
mov dl, byte [ebp - 0x33a]
mov byte [ebp - 0x333], dl
mov al, byte [ebp - 0x330]
mov byte [ebp - 0x33f], al
cmp dword [ebp - 0x350], 0
jle 0x4a28dd
movsx cx, byte [ebp - 0x33f]
mov edx, dword [ebp - 0x350]
mov word [ebp + edx*2 - 0x42], cx
jmp 0x4a2674
mov eax, dword [ebp - 0x38c]
add eax, 1
mov dword [ebp - 0x38c], eax
mov ecx, dword [ebp - 0x350]
add ecx, 1
mov dword [ebp - 0x350], ecx
mov edx, dword [ebp - 0x38c]
add edx, 1
mov dword [ebp - 0x38c], edx
mov eax, dword [ebp - 0x350]
shl eax, 1
mov dword [ebp - 0x3e8], eax
mov ecx, dword [ebp - 0x3ec]
add ecx, dword [ebp - 0x3e8]
movzx edx, byte [ecx]
mov dword [ebp - 0x3d0], edx
mov dword [ebp - 0x3dc], 0xce
mov eax, dword [ebp - 0x350]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x3f0], ecx
mov edx, dword [ebp - 0x3ec]
add edx, dword [ebp - 0x3f0]
movzx eax, byte [edx]
mov dword [ebp - 0x3a8], eax
mov dword [ebp - 0x3ac], 0x4b
mov ecx, dword [ebp - 0x3d0]
sub ecx, dword [ebp - 0x3dc]
mov dword [ebp - 0x3b0], ecx
mov edx, dword [ebp - 0x3a8]
sub edx, dword [ebp - 0x3ac]
mov dword [ebp - 0x3b4], edx
mov eax, dword [ebp - 0x3b0]
shl eax, 4
mov dword [ebp - 0x3f4], eax
mov ecx, dword [ebp - 0x3b4]
mov dword [ebp - 0x3f8], ecx
mov edx, dword [ebp - 0x3f4]
or edx, dword [ebp - 0x3f8]
mov dword [ebp - 0x3fc], edx
mov al, byte [ebp - 0x3fc]
mov byte [ebp - 0x33a], al
movzx ecx, byte [ebp - 0x333]
mov dl, byte [ebp + ecx - 0x710]
mov byte [ebp - 0x338], dl
movzx eax, byte [ebp - 0x32d]
movzx ecx, byte [ebp + eax - 0x710]
movzx edx, byte [ebp - 0x32f]
add edx, ecx
mov byte [ebp - 0x32f], dl
mov al, byte [ebp - 0x32d]
add al, 1
mov byte [ebp - 0x32d], al
movzx ecx, byte [ebp - 0x32f]
movzx edx, byte [ebp - 0x333]
mov al, byte [ebp + ecx - 0x710]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x330]
movzx edx, byte [ebp - 0x32f]
mov al, byte [ebp + ecx - 0x710]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x32d]
movzx edx, byte [ebp - 0x330]
mov al, byte [ebp + ecx - 0x710]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x32d]
mov dl, byte [ebp - 0x338]
mov byte [ebp + ecx - 0x710], dl
movzx eax, byte [ebp - 0x338]
movzx ecx, byte [ebp + eax - 0x710]
movzx edx, byte [ebp - 0x339]
add edx, ecx
mov byte [ebp - 0x339], dl
movzx eax, byte [ebp - 0x33a]
movzx ecx, byte [ebp - 0x32f]
movzx edx, byte [ebp + ecx - 0x710]
movzx ecx, byte [ebp - 0x32d]
movzx ecx, byte [ebp + ecx - 0x710]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x710]
xor eax, edx
movzx ecx, byte [ebp - 0x330]
movzx edx, byte [ebp + ecx - 0x710]
movzx ecx, byte [ebp - 0x333]
movzx ecx, byte [ebp + ecx - 0x710]
add edx, ecx
movzx ecx, byte [ebp - 0x339]
movzx ecx, byte [ebp + ecx - 0x710]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x710]
movzx ecx, byte [ebp + edx - 0x710]
xor eax, ecx
mov byte [ebp - 0x330], al
movsd xmm0, qword [0xa60c28]
movsd qword [ebp - 0x5d0], xmm0
movsd xmm0, qword [0xa60be8]
movsd qword [ebp - 0x5b4], xmm0
movsd xmm0, qword [0xa60ba8]
movsd qword [ebp - 0x550], xmm0
movsd xmm0, qword [0xa60b48]
movsd qword [ebp - 0x4cc], xmm0
movsd xmm0, qword [0xa60a90]
movsd qword [ebp - 0x944], xmm0
movsd xmm0, qword [0xa609f8]
movsd qword [ebp - 0x520], xmm0
movsd xmm0, qword [0xa608e0]
movsd qword [ebp - 0x500], xmm0
movsd xmm0, qword [ebp - 0x5d0]
addsd xmm0, qword [ebp - 0x500]
movsd qword [ebp - 0x5d0], xmm0
movsd xmm0, qword [ebp - 0x4cc]
addsd xmm0, qword [ebp - 0x500]
movsd qword [ebp - 0x4cc], xmm0
movsd xmm0, qword [ebp - 0x520]
subsd xmm0, qword [ebp - 0x500]
movsd qword [ebp - 0x520], xmm0
movsd xmm0, qword [ebp - 0x520]
subsd xmm0, qword [ebp - 0x500]
movsd qword [ebp - 0x520], xmm0
movsd xmm0, qword [ebp - 0x520]
mulsd xmm0, qword [ebp - 0x500]
movsd qword [ebp - 0x520], xmm0
movsd xmm0, qword [ebp - 0x550]
mulsd xmm0, qword [ebp - 0x500]
movsd qword [ebp - 0x550], xmm0
movsd xmm0, qword [ebp - 0x4cc]
subsd xmm0, qword [ebp - 0x500]
movsd qword [ebp - 0x4cc], xmm0
movsd xmm0, qword [ebp - 0x550]
comisd xmm0, xmmword [ebp - 0x520]
jbe 0x4a2cfb
movsd xmm0, qword [ebp - 0x5b4]
subsd xmm0, qword [ebp - 0x4cc]
movsd qword [ebp - 0x5b4], xmm0
movsd xmm0, qword [ebp - 0x4cc]
mulsd xmm0, qword [ebp - 0x520]
movsd qword [ebp - 0x4cc], xmm0
movsd xmm0, qword [ebp - 0x5b4]
mulsd xmm0, qword [ebp - 0x4cc]
movsd qword [ebp - 0x5b4], xmm0
movsd xmm0, qword [ebp - 0x4cc]
subsd xmm0, qword [ebp - 0x520]
movsd qword [ebp - 0x4cc], xmm0
movsd xmm0, qword [ebp - 0x944]
subsd xmm0, qword [ebp - 0x500]
movsd qword [ebp - 0x944], xmm0
movsd xmm0, qword [ebp - 0x4cc]
mulsd xmm0, qword [ebp - 0x520]
movsd qword [ebp - 0x4cc], xmm0
movsd xmm0, qword [ebp - 0x4cc]
addsd xmm0, qword [ebp - 0x520]
movsd qword [ebp - 0x4cc], xmm0
mov dl, byte [ebp - 0x33a]
mov byte [ebp - 0x333], dl
jmp 0x4a2da3
movsd xmm0, qword [ebp - 0x5d0]
divsd xmm0, qword [ebp - 0x5b4]
movsd qword [ebp - 0x5d0], xmm0
movsd xmm0, qword [ebp - 0x500]
subsd xmm0, qword [ebp - 0x5d0]
movsd qword [ebp - 0x500], xmm0
movsd xmm0, qword [ebp - 0x550]
divsd xmm0, qword [ebp - 0x4cc]
movsd qword [ebp - 0x550], xmm0
movsd xmm0, qword [ebp - 0x500]
mulsd xmm0, qword [ebp - 0x5d0]
movsd qword [ebp - 0x500], xmm0
movsd xmm0, qword [ebp - 0x5b4]
subsd xmm0, qword [ebp - 0x550]
movsd qword [ebp - 0x5b4], xmm0
movsd xmm0, qword [ebp - 0x550]
subsd xmm0, qword [ebp - 0x4cc]
movsd qword [ebp - 0x550], xmm0
movsd xmm0, qword [ebp - 0x550]
subsd xmm0, qword [ebp - 0x4cc]
movsd qword [ebp - 0x550], xmm0
mov al, byte [ebp - 0x330]
mov byte [ebp - 0x33f], al
cmp dword [ebp - 0x350], 0
jle 0x4a2dcb
movsx cx, byte [ebp - 0x33f]
mov edx, dword [ebp - 0x350]
mov word [ebp + edx*2 - 0x42], cx
mov eax, dword [ebp - 0x350]
add eax, 1
mov dword [ebp - 0x350], eax
mov ecx, dword [ebp - 0x38c]
add ecx, 1
mov dword [ebp - 0x38c], ecx
mov edx, dword [ebp - 0x350]
shl edx, 1
mov dword [ebp - 0x3e8], edx
movss xmm0, dword [0xa60d9c]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [0xa60d64]
movss dword [ebp - 0x424], xmm0
movss xmm0, dword [0xa60d00]
movss dword [ebp - 0x364], xmm0
movss xmm0, dword [0xa60c8c]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x354]
addss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [ebp - 0x364]
subss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x364], xmm0
movss xmm0, dword [ebp - 0x364]
addss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x364], xmm0
movss xmm0, dword [ebp - 0x354]
mulss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [ebp - 0x378]
comiss xmm0, dword [ebp - 0x354]
jbe 0x4a3177
movss xmm0, dword [ebp - 0x354]
addss xmm0, dword [ebp - 0x364]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [ebp - 0x424]
addss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x424], xmm0
movss xmm0, dword [ebp - 0x378]
mulss xmm0, dword [ebp - 0x424]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x364]
addss xmm0, dword [ebp - 0x354]
movss dword [ebp - 0x364], xmm0
movss xmm0, dword [ebp - 0x354]
addss xmm0, dword [ebp - 0x364]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [ebp - 0x424]
mulss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x424], xmm0
movss xmm0, dword [ebp - 0x364]
addss xmm0, dword [ebp - 0x354]
movss dword [ebp - 0x364], xmm0
movss xmm0, dword [ebp - 0x364]
subss xmm0, dword [ebp - 0x354]
movss dword [ebp - 0x364], xmm0
movss xmm0, dword [ebp - 0x354]
comiss xmm0, dword [ebp - 0x364]
jbe 0x4a2fe2
movss xmm0, dword [ebp - 0x378]
divss xmm0, dword [ebp - 0x424]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x364]
divss xmm0, dword [ebp - 0x354]
movss dword [ebp - 0x364], xmm0
movss xmm0, dword [ebp - 0x354]
divss xmm0, dword [ebp - 0x364]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [ebp - 0x354]
subss xmm0, dword [ebp - 0x364]
movss dword [ebp - 0x354], xmm0
jmp 0x4a3175
movss xmm0, dword [ebp - 0x378]
divss xmm0, dword [ebp - 0x424]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x378]
subss xmm0, dword [ebp - 0x424]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x424]
mulss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x424], xmm0
movss xmm0, dword [ebp - 0x364]
mulss xmm0, dword [ebp - 0x354]
movss dword [ebp - 0x364], xmm0
movss xmm0, dword [ebp - 0x354]
addss xmm0, dword [ebp - 0x364]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [ebp - 0x364]
mulss xmm0, dword [ebp - 0x354]
movss dword [ebp - 0x364], xmm0
movss xmm0, dword [ebp - 0x354]
addss xmm0, dword [ebp - 0x364]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [ebp - 0x354]
subss xmm0, dword [ebp - 0x364]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [ebp - 0x364]
comiss xmm0, dword [ebp - 0x354]
jbe 0x4a3115
movss xmm0, dword [ebp - 0x378]
divss xmm0, dword [ebp - 0x354]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x364]
subss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x364], xmm0
movss xmm0, dword [ebp - 0x364]
divss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x364], xmm0
movss xmm0, dword [ebp - 0x378]
mulss xmm0, dword [ebp - 0x354]
movss dword [ebp - 0x378], xmm0
jmp 0x4a3175
movss xmm0, dword [ebp - 0x378]
divss xmm0, dword [ebp - 0x354]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x354]
divss xmm0, dword [ebp - 0x424]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [ebp - 0x354]
subss xmm0, dword [ebp - 0x424]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [ebp - 0x354]
subss xmm0, dword [ebp - 0x424]
movss dword [ebp - 0x354], xmm0
jmp 0x4a31ec
movss xmm0, dword [ebp - 0x424]
mulss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x424], xmm0
movss xmm0, dword [ebp - 0x354]
mulss xmm0, dword [ebp - 0x364]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [ebp - 0x354]
mulss xmm0, dword [ebp - 0x364]
movss dword [ebp - 0x354], xmm0
movss xmm0, dword [ebp - 0x354]
subss xmm0, dword [ebp - 0x364]
movss dword [ebp - 0x354], xmm0
mov eax, dword [ebp - 0x3ec]
add eax, dword [ebp - 0x3e8]
movzx ecx, byte [eax]
mov dword [ebp - 0x3d0], ecx
mov dword [ebp - 0x3dc], 0xce
mov edx, dword [ebp - 0x350]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x3f0], eax
mov ecx, dword [ebp - 0x3ec]
add ecx, dword [ebp - 0x3f0]
movzx edx, byte [ecx]
mov dword [ebp - 0x3a8], edx
mov dword [ebp - 0x3ac], 0x4b
mov eax, dword [ebp - 0x3d0]
sub eax, dword [ebp - 0x3dc]
mov dword [ebp - 0x3b0], eax
mov ecx, dword [ebp - 0x3a8]
sub ecx, dword [ebp - 0x3ac]
mov dword [ebp - 0x3b4], ecx
mov edx, dword [ebp - 0x3b0]
shl edx, 4
mov dword [ebp - 0x3f4], edx
mov eax, dword [ebp - 0x3b4]
mov dword [ebp - 0x3f8], eax
mov ecx, dword [ebp - 0x3f4]
or ecx, dword [ebp - 0x3f8]
mov dword [ebp - 0x3fc], ecx
mov dl, byte [ebp - 0x3fc]
mov byte [ebp - 0x33a], dl
movzx eax, byte [ebp - 0x333]
mov cl, byte [ebp + eax - 0x710]
mov byte [ebp - 0x338], cl
movzx edx, byte [ebp - 0x32d]
movzx eax, byte [ebp + edx - 0x710]
movzx ecx, byte [ebp - 0x32f]
add ecx, eax
mov byte [ebp - 0x32f], cl
mov dl, byte [ebp - 0x32d]
add dl, 1
mov byte [ebp - 0x32d], dl
movzx eax, byte [ebp - 0x32f]
movzx ecx, byte [ebp - 0x333]
mov dl, byte [ebp + eax - 0x710]
mov byte [ebp + ecx - 0x710], dl
movzx eax, byte [ebp - 0x330]
movzx ecx, byte [ebp - 0x32f]
mov dl, byte [ebp + eax - 0x710]
mov byte [ebp + ecx - 0x710], dl
movzx eax, byte [ebp - 0x32d]
movzx ecx, byte [ebp - 0x330]
mov dl, byte [ebp + eax - 0x710]
mov byte [ebp + ecx - 0x710], dl
movzx eax, byte [ebp - 0x32d]
mov cl, byte [ebp - 0x338]
mov byte [ebp + eax - 0x710], cl
movzx edx, byte [ebp - 0x338]
movzx eax, byte [ebp + edx - 0x710]
movzx ecx, byte [ebp - 0x339]
add ecx, eax
mov byte [ebp - 0x339], cl
movzx edx, byte [ebp - 0x33a]
movzx eax, byte [ebp - 0x32f]
movzx ecx, byte [ebp + eax - 0x710]
movzx eax, byte [ebp - 0x32d]
movzx eax, byte [ebp + eax - 0x710]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x710]
xor edx, ecx
movzx eax, byte [ebp - 0x330]
movzx ecx, byte [ebp + eax - 0x710]
movzx eax, byte [ebp - 0x333]
movzx eax, byte [ebp + eax - 0x710]
add ecx, eax
movzx eax, byte [ebp - 0x339]
movzx eax, byte [ebp + eax - 0x710]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x710]
movzx eax, byte [ebp + ecx - 0x710]
xor edx, eax
mov byte [ebp - 0x330], dl
mov cl, byte [ebp - 0x33a]
mov byte [ebp - 0x333], cl
mov dl, byte [ebp - 0x330]
mov byte [ebp - 0x33f], dl
cmp dword [ebp - 0x350], 0
jle 0x4a3403
movsx ax, byte [ebp - 0x33f]
mov ecx, dword [ebp - 0x350]
mov word [ebp + ecx*2 - 0x42], ax
mov edx, dword [ebp - 0x350]
add edx, 1
mov dword [ebp - 0x350], edx
mov eax, dword [ebp - 0x38c]
add eax, 1
mov dword [ebp - 0x38c], eax
mov ecx, dword [ebp - 0x350]
shl ecx, 1
mov dword [ebp - 0x3e8], ecx
mov edx, dword [ebp - 0x3ec]
add edx, dword [ebp - 0x3e8]
movzx eax, byte [edx]
mov dword [ebp - 0x3d0], eax
mov dword [ebp - 0x3dc], 0xce
mov ecx, dword [ebp - 0x350]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x3f0], edx
mov eax, dword [ebp - 0x3ec]
add eax, dword [ebp - 0x3f0]
movzx ecx, byte [eax]
mov dword [ebp - 0x3a8], ecx
mov dword [ebp - 0x3ac], 0x4b
mov edx, dword [ebp - 0x3d0]
sub edx, dword [ebp - 0x3dc]
mov dword [ebp - 0x3b0], edx
mov eax, dword [ebp - 0x3a8]
sub eax, dword [ebp - 0x3ac]
mov dword [ebp - 0x3b4], eax
mov ecx, dword [ebp - 0x3b0]
shl ecx, 4
mov dword [ebp - 0x3f4], ecx
mov edx, dword [ebp - 0x3b4]
mov dword [ebp - 0x3f8], edx
mov eax, dword [ebp - 0x3f4]
or eax, dword [ebp - 0x3f8]
mov dword [ebp - 0x3fc], eax
mov cl, byte [ebp - 0x3fc]
mov byte [ebp - 0x33a], cl
movzx edx, byte [ebp - 0x333]
mov al, byte [ebp + edx - 0x710]
mov byte [ebp - 0x338], al
movzx ecx, byte [ebp - 0x32d]
movzx edx, byte [ebp + ecx - 0x710]
movzx eax, byte [ebp - 0x32f]
add eax, edx
mov byte [ebp - 0x32f], al
mov cl, byte [ebp - 0x32d]
add cl, 1
mov byte [ebp - 0x32d], cl
movzx edx, byte [ebp - 0x32f]
movzx eax, byte [ebp - 0x333]
mov cl, byte [ebp + edx - 0x710]
mov byte [ebp + eax - 0x710], cl
movzx edx, byte [ebp - 0x330]
movzx eax, byte [ebp - 0x32f]
mov cl, byte [ebp + edx - 0x710]
mov byte [ebp + eax - 0x710], cl
movss xmm0, dword [0xa60d68]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [0xa60d04]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [0xa60c90]
movss dword [ebp - 0x398], xmm0
movss xmm0, dword [ebp - 0x384]
subss xmm0, dword [ebp - 0x398]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x384]
addss xmm0, dword [ebp - 0x398]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x384]
mulss xmm0, dword [ebp - 0x398]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x384]
comiss xmm0, dword [ebp - 0x398]
jbe 0x4a3645
movss xmm0, dword [ebp - 0x384]
subss xmm0, dword [ebp - 0x398]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x384]
addss xmm0, dword [ebp - 0x398]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x3e4]
addss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x3e4], xmm0
movzx edx, byte [ebp - 0x32d]
movzx eax, byte [ebp - 0x330]
mov cl, byte [ebp + edx - 0x710]
mov byte [ebp + eax - 0x710], cl
jmp 0x4a3778
movss xmm0, dword [ebp - 0x398]
mulss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x398], xmm0
movss xmm0, dword [ebp - 0x3e4]
divss xmm0, dword [ebp - 0x398]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [ebp - 0x3e4]
addss xmm0, dword [ebp - 0x398]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [ebp - 0x3e4]
divss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [ebp - 0x398]
divss xmm0, dword [ebp - 0x3e4]
movss dword [ebp - 0x398], xmm0
movss xmm0, dword [ebp - 0x398]
subss xmm0, dword [ebp - 0x3e4]
movss dword [ebp - 0x398], xmm0
movss xmm0, dword [ebp - 0x3e4]
comiss xmm0, dword [ebp - 0x398]
jbe 0x4a3730
movss xmm0, dword [ebp - 0x398]
mulss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x398], xmm0
movss xmm0, dword [ebp - 0x384]
subss xmm0, dword [ebp - 0x3e4]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x398]
addss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x398], xmm0
jmp 0x4a3778
movss xmm0, dword [ebp - 0x3e4]
subss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [ebp - 0x3e4]
addss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [ebp - 0x384]
divss xmm0, dword [ebp - 0x398]
movss dword [ebp - 0x384], xmm0
movzx edx, byte [ebp - 0x32d]
mov al, byte [ebp - 0x338]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x338]
movzx edx, byte [ebp + ecx - 0x710]
movzx eax, byte [ebp - 0x339]
add eax, edx
mov byte [ebp - 0x339], al
movzx ecx, byte [ebp - 0x33a]
movzx edx, byte [ebp - 0x32f]
movzx eax, byte [ebp + edx - 0x710]
movzx edx, byte [ebp - 0x32d]
movzx edx, byte [ebp + edx - 0x710]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x710]
xor ecx, eax
movzx edx, byte [ebp - 0x330]
movzx eax, byte [ebp + edx - 0x710]
movzx edx, byte [ebp - 0x333]
movzx edx, byte [ebp + edx - 0x710]
add eax, edx
movzx edx, byte [ebp - 0x339]
movzx edx, byte [ebp + edx - 0x710]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x710]
movzx edx, byte [ebp + eax - 0x710]
xor ecx, edx
mov byte [ebp - 0x330], cl
mov al, byte [ebp - 0x33a]
mov byte [ebp - 0x333], al
mov cl, byte [ebp - 0x330]
mov byte [ebp - 0x33f], cl
cmp dword [ebp - 0x350], 0
jle 0x4a3862
movsx dx, byte [ebp - 0x33f]
mov eax, dword [ebp - 0x350]
mov word [ebp + eax*2 - 0x42], dx
mov ecx, dword [ebp - 0x350]
add ecx, 1
mov dword [ebp - 0x350], ecx
mov edx, dword [ebp - 0x38c]
add edx, 1
mov dword [ebp - 0x38c], edx
mov eax, dword [ebp - 0x350]
shl eax, 1
mov dword [ebp - 0x3e8], eax
mov ecx, dword [ebp - 0x3ec]
add ecx, dword [ebp - 0x3e8]
movzx edx, byte [ecx]
mov dword [ebp - 0x3d0], edx
mov dword [ebp - 0x3dc], 0xce
mov eax, dword [ebp - 0x350]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x3f0], ecx
mov edx, dword [ebp - 0x3ec]
add edx, dword [ebp - 0x3f0]
movzx eax, byte [edx]
mov dword [ebp - 0x3a8], eax
mov dword [ebp - 0x3ac], 0x4b
mov ecx, dword [ebp - 0x3d0]
sub ecx, dword [ebp - 0x3dc]
mov dword [ebp - 0x3b0], ecx
mov edx, dword [ebp - 0x3a8]
sub edx, dword [ebp - 0x3ac]
mov dword [ebp - 0x3b4], edx
mov eax, dword [ebp - 0x3b0]
shl eax, 4
mov dword [ebp - 0x3f4], eax
mov ecx, dword [ebp - 0x3b4]
mov dword [ebp - 0x3f8], ecx
mov edx, dword [ebp - 0x3f4]
or edx, dword [ebp - 0x3f8]
mov dword [ebp - 0x3fc], edx
mov al, byte [ebp - 0x3fc]
mov byte [ebp - 0x33a], al
movzx ecx, byte [ebp - 0x333]
mov dl, byte [ebp + ecx - 0x710]
mov byte [ebp - 0x338], dl
movzx eax, byte [ebp - 0x32d]
movzx ecx, byte [ebp + eax - 0x710]
movzx edx, byte [ebp - 0x32f]
add edx, ecx
mov byte [ebp - 0x32f], dl
mov al, byte [ebp - 0x32d]
add al, 1
mov byte [ebp - 0x32d], al
movzx ecx, byte [ebp - 0x32f]
movzx edx, byte [ebp - 0x333]
mov al, byte [ebp + ecx - 0x710]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x330]
movzx edx, byte [ebp - 0x32f]
mov al, byte [ebp + ecx - 0x710]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x32d]
movzx edx, byte [ebp - 0x330]
mov al, byte [ebp + ecx - 0x710]
mov byte [ebp + edx - 0x710], al
movzx ecx, byte [ebp - 0x32d]
mov dl, byte [ebp - 0x338]
mov byte [ebp + ecx - 0x710], dl
movzx eax, byte [ebp - 0x338]
movzx ecx, byte [ebp + eax - 0x710]
movzx edx, byte [ebp - 0x339]
add edx, ecx
mov byte [ebp - 0x339], dl
movzx eax, byte [ebp - 0x33a]
movzx ecx, byte [ebp - 0x32f]
movzx edx, byte [ebp + ecx - 0x710]
movzx ecx, byte [ebp - 0x32d]
movzx ecx, byte [ebp + ecx - 0x710]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x710]
xor eax, edx
movzx ecx, byte [ebp - 0x330]
movzx edx, byte [ebp + ecx - 0x710]
movzx ecx, byte [ebp - 0x333]
movzx ecx, byte [ebp + ecx - 0x710]
add edx, ecx
movzx ecx, byte [ebp - 0x339]
movzx ecx, byte [ebp + ecx - 0x710]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x710]
movzx ecx, byte [ebp + edx - 0x710]
xor eax, ecx
mov byte [ebp - 0x330], al
mov dl, byte [ebp - 0x33a]
mov byte [ebp - 0x333], dl
mov al, byte [ebp - 0x330]
mov byte [ebp - 0x33f], al
cmp dword [ebp - 0x350], 0
jle 0x4a3ab9
movsx cx, byte [ebp - 0x33f]
mov edx, dword [ebp - 0x350]
mov word [ebp + edx*2 - 0x42], cx
mov eax, 2
imul ecx, eax, 0xc
mov dword [ebp - 0x5ec], ecx
cmp dword [ebp - 0x5ec], 0x1a
jae 0x4a3ad2
jmp 0x4a3ad7
call fcn.009e31a7
xor edx, edx
mov eax, dword [ebp - 0x5ec]
mov word [ebp + eax - 0x40], dx
jmp 0x4a3b37
mov dword [ebp - 0x574], 0
jmp 0x4a3b01
mov ecx, dword [ebp - 0x574]
add ecx, 1
mov dword [ebp - 0x574], ecx
cmp dword [ebp - 0x574], 0xd
jge 0x4a3b37
mov edx, dword [ebp - 0x574]
shl edx, 1
mov dword [ebp - 0x5f0], edx
cmp dword [ebp - 0x5f0], 0x1a
jae 0x4a3b23
jmp 0x4a3b28
call fcn.009e31a7
xor eax, eax
mov ecx, dword [ebp - 0x5f0]
mov word [ebp + ecx - 0x40], ax
jmp 0x4a3af2
push 4
call fcn.009e2e5e
add esp, 4
mov dword [ebp - 0x588], eax
mov dword [ebp - 4], 0
cmp dword [ebp - 0x588], 0
je 0x4a3b7b
push 4
mov ecx, dword [ebp - 0x588]
call fcn.00487520
lea edx, [ebp - 0x40]
push edx
mov ecx, dword [ebp - 0x588]
call fcn.00487750
mov dword [ebp - 0x5f8], eax
jmp 0x4a3b85
mov dword [ebp - 0x5f8], 0
mov eax, dword [ebp - 0x5f8]
mov dword [ebp - 0x830], eax
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x830]
mov dword [ebp - 0x828], ecx
mov dword [ebp - 0x320], 0
mov dword [ebp - 0x31c], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x548], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x528], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x528], xmm0
jmp 0x4a3bf3
movsd xmm0, qword [ebp - 0x528]
addsd xmm0, qword [0xa5f348]
movsd qword [ebp - 0x528], xmm0
movsd xmm0, qword [0xa617c0]
comisd xmm0, xmmword [ebp - 0x528]
jbe 0x4a3ca4
movsd xmm0, qword [0xa61700]
mulsd xmm0, qword [ebp - 0x528]
mulsd xmm0, qword [ebp - 0x528]
movsd xmm1, qword [ebp - 0x528]
mulsd xmm1, qword [ebp - 0x528]
subsd xmm0, xmm1
movsd xmm1, qword [0xa615a8]
mulsd xmm1, qword [ebp - 0x528]
mulsd xmm1, qword [ebp - 0x528]
addsd xmm1, qword [0xa61630]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x548]
movsd qword [ebp - 0x548], xmm0
movsd xmm0, qword [ebp - 0x548]
comisd xmm0, xmmword [0xa61670]
jbe 0x4a3c9f
movsd xmm0, qword [0xa61548]
mulsd xmm0, qword [ebp - 0x528]
movsd xmm1, qword [ebp - 0x548]
subsd xmm1, xmm0
movsd qword [ebp - 0x548], xmm1
jmp 0x4a3bdb
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x548]
jbe 0x4a3cec
push 0x3546594d
das
cmp ebp, dword [esi + 0x6c]
xor dword [esi + edi*2], ebp
dec edx
push ecx
sub al, 0x56
push 0x7c
pop esi
sbb al, 0xa4
sbb byte [edi - 0x55ee60ed], ah
adc al, 0xa6
push ss
mov eax, dword [0xa9129d1d]
pop ss
popfd
push ds
test eax, 0xa718a719
adc eax, 0x199f1c9d
mov al, byte [0x9d199f18]
jmp 0x4a65a4
mov dword [ebp - 0x320], 0x4a3cc5
mov dword [ebp - 0x31c], 0x4a3cb1
mov edx, dword [ebp - 0x320]
mov dword [ebp - 0x40c], edx
mov eax, dword [ebp - 0x31c]
mov dword [ebp - 0x82c], eax
mov byte [ebp - 0x47f], 0x18
mov dword [ebp - 0x3a0], 0
jmp 0x4a3d3a
mov ecx, dword [ebp - 0x3a0]
add ecx, 1
mov dword [ebp - 0x3a0], ecx
cmp dword [ebp - 0x3a0], 0x100
jae 0x4a3d5b
mov edx, dword [ebp - 0x3a0]
mov al, byte [ebp - 0x3a0]
mov byte [ebp + edx - 0x810], al
jmp 0x4a3d2b
mov dword [ebp - 0x4f4], 0
mov byte [ebp - 0x344], 0
mov dword [ebp - 0x3a0], 0xff
jmp 0x4a3d87
mov ecx, dword [ebp - 0x3a0]
sub ecx, 1
mov dword [ebp - 0x3a0], ecx
cmp dword [ebp - 0x3a0], 0
jbe 0x4a3ff7
mov dword [ebp - 0x58c], 0
mov dword [ebp - 0x578], 1
mov edx, dword [ebp - 0x578]
cmp edx, dword [ebp - 0x3a0]
jae 0x4a3dc8
mov eax, dword [ebp - 0x578]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x578], ecx
jmp 0x4a3da8
mov edx, dword [ebp - 0x4f4]
mov dword [ebp - 0x5e0], edx
cmp dword [ebp - 0x5e0], 3
ja case.default.0x4a3de7
mov eax, dword [ebp - 0x5e0]
jmp dword [eax*4 + 0x4a7f44]
movzx ecx, byte [ebp - 0x344]
movzx ebx, byte [ebp + ecx - 0x810]
movsd xmm0, qword [ebp - 0x548]
call fcn.009e3680
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x344], bl
jmp 0x4a3ed0
movzx edx, byte [ebp - 0x344]
movzx ebx, byte [ebp + edx - 0x810]
movsd xmm0, qword [ebp - 0x548]
call fcn.009e3680
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x344], bl
jmp 0x4a3ed0
movzx eax, byte [ebp - 0x344]
movzx ebx, byte [ebp + eax - 0x810]
movsd xmm0, qword [ebp - 0x548]
call fcn.009e3680
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x344], bl
jmp 0x4a3ed0
movzx ecx, byte [ebp - 0x344]
movzx ebx, byte [ebp + ecx - 0x810]
movsd xmm0, qword [ebp - 0x548]
call fcn.009e3680
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x344], bl
jmp 0x4a3ed0
movzx edx, byte [ebp - 0x344]
movzx eax, byte [ebp + edx - 0x810]
mov ecx, dword [ebp - 0x82c]
add ecx, dword [ebp - 0x4f4]
movzx edx, byte [ecx - 4]
add eax, edx
mov byte [ebp - 0x344], al
mov eax, dword [ebp - 0x4f4]
add eax, 1
mov dword [ebp - 0x4f4], eax
movzx ecx, byte [ebp - 0x47f]
cmp dword [ebp - 0x4f4], ecx
jb 0x4a3f0e
mov dword [ebp - 0x4f4], 0
movzx edx, byte [ebp - 0x47f]
movzx eax, byte [ebp - 0x344]
add eax, edx
mov byte [ebp - 0x344], al
movzx ecx, byte [ebp - 0x344]
and ecx, dword [ebp - 0x578]
mov dword [ebp - 0x4bc], ecx
mov edx, dword [ebp - 0x58c]
add edx, 1
mov dword [ebp - 0x58c], edx
cmp dword [ebp - 0x58c], 0xb
jbe 0x4a3f4d
mov eax, dword [ebp - 0x4bc]
xor edx, edx
div dword [ebp - 0x3a0]
mov dword [ebp - 0x4bc], edx
mov eax, dword [ebp - 0x4bc]
cmp eax, dword [ebp - 0x3a0]
ja 0x4a3dc8
mov ecx, dword [ebp - 0x3a0]
cmp ecx, dword [ebp - 0x4bc]
je 0x4a3ff2
mov edx, dword [ebp - 0x4bc]
movzx eax, byte [ebp + edx - 0x810]
mov ecx, dword [ebp - 0x3a0]
movzx edx, byte [ebp + ecx - 0x810]
xor edx, eax
mov eax, dword [ebp - 0x3a0]
mov byte [ebp + eax - 0x810], dl
mov ecx, dword [ebp - 0x3a0]
movzx edx, byte [ebp + ecx - 0x810]
mov eax, dword [ebp - 0x4bc]
movzx ecx, byte [ebp + eax - 0x810]
xor ecx, edx
mov edx, dword [ebp - 0x4bc]
mov byte [ebp + edx - 0x810], cl
mov eax, dword [ebp - 0x4bc]
movzx ecx, byte [ebp + eax - 0x810]
mov edx, dword [ebp - 0x3a0]
movzx eax, byte [ebp + edx - 0x810]
xor eax, ecx
mov ecx, dword [ebp - 0x3a0]
mov byte [ebp + ecx - 0x810], al
jmp 0x4a3d78
mov edx, 1
shl edx, 0
mov al, byte [ebp + edx - 0x810]
mov byte [ebp - 0x32e], al
mov ecx, 1
imul edx, ecx, 3
mov al, byte [ebp + edx - 0x810]
mov byte [ebp - 0x331], al
mov ecx, 1
imul edx, ecx, 5
mov al, byte [ebp + edx - 0x810]
mov byte [ebp - 0x33c], al
mov ecx, 1
imul edx, ecx, 7
mov al, byte [ebp + edx - 0x810]
mov byte [ebp - 0x332], al
movzx ecx, byte [ebp - 0x344]
mov dl, byte [ebp + ecx - 0x810]
mov byte [ebp - 0x334], dl
mov dword [ebp - 0x604], 0x22
cmp dword [ebp - 0x604], 2
jle 0x4a6557
mov eax, dword [ebp - 0x604]
and eax, 1
jne 0x4a6557
mov dword [ebp - 0x34c], 0
mov dword [ebp - 0x388], 0
mov ecx, dword [ebp - 0x388]
add ecx, 1
mov dword [ebp - 0x388], ecx
mov dword [ebp - 0x408], 0
mov edx, dword [ebp - 0x34c]
shl edx, 1
mov dword [ebp - 0x408], edx
mov dword [ebp - 0x3e0], 0
mov eax, dword [ebp - 0x40c]
add eax, dword [ebp - 0x408]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x3e0]
mov dword [ebp - 0x3e0], ecx
mov dword [ebp - 0x3b8], 0
mov edx, dword [ebp - 0x3b8]
add edx, 0xf
mov dword [ebp - 0x3b8], edx
mov dword [ebp - 0x410], 0
mov eax, dword [ebp - 0x34c]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x410], ecx
mov dword [ebp - 0x3bc], 0
mov edx, dword [ebp - 0x40c]
add edx, dword [ebp - 0x410]
movzx eax, byte [edx]
add eax, dword [ebp - 0x3bc]
mov dword [ebp - 0x3bc], eax
mov dword [ebp - 0x3c0], 0
mov ecx, dword [ebp - 0x3c0]
add ecx, 0x9d
mov dword [ebp - 0x3c0], ecx
mov dword [ebp - 0x3c4], 0
mov edx, dword [ebp - 0x3e0]
sub edx, dword [ebp - 0x3b8]
add edx, dword [ebp - 0x3c4]
mov dword [ebp - 0x3c4], edx
mov dword [ebp - 0x3c8], 0
mov eax, dword [ebp - 0x3bc]
sub eax, dword [ebp - 0x3c0]
add eax, dword [ebp - 0x3c8]
mov dword [ebp - 0x3c8], eax
mov dword [ebp - 0x414], 0
mov ecx, dword [ebp - 0x3c4]
shl ecx, 4
mov dword [ebp - 0x414], ecx
mov dword [ebp - 0x418], 0
mov edx, dword [ebp - 0x3c8]
mov dword [ebp - 0x418], edx
mov dword [ebp - 0x41c], 0
movsd xmm0, qword [0xa61b80]
movsd qword [ebp - 0x4a8], xmm0
movsd xmm0, qword [0xa61b00]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [0xa61a58]
movsd qword [ebp - 0x454], xmm0
movsd xmm0, qword [0xa61988]
movsd qword [ebp - 0x444], xmm0
movsd xmm0, qword [0xa618e8]
movsd qword [ebp - 0x42c], xmm0
movsd xmm0, qword [0xa617a8]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x444]
addsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x444], xmm0
movsd xmm0, qword [ebp - 0x444]
subsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x444], xmm0
movsd xmm0, qword [ebp - 0x42c]
mulsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x42c], xmm0
movsd xmm0, qword [ebp - 0x4a8]
mulsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x4a8], xmm0
movsd xmm0, qword [ebp - 0x444]
addsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x444], xmm0
movsd xmm0, qword [ebp - 0x45c]
mulsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x394]
comisd xmm0, xmmword [ebp - 0x4a8]
jbe 0x4a4707
movsd xmm0, qword [ebp - 0x42c]
addsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x42c], xmm0
movsd xmm0, qword [ebp - 0x42c]
addsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x42c], xmm0
movsd xmm0, qword [ebp - 0x45c]
subsd xmm0, qword [ebp - 0x454]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x454]
mulsd xmm0, qword [ebp - 0x444]
movsd qword [ebp - 0x454], xmm0
movsd xmm0, qword [ebp - 0x4a8]
subsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x4a8], xmm0
movsd xmm0, qword [ebp - 0x394]
mulsd xmm0, qword [ebp - 0x4a8]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x45c]
divsd xmm0, qword [ebp - 0x454]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x4a8]
divsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x4a8], xmm0
movsd xmm0, qword [ebp - 0x394]
mulsd xmm0, qword [ebp - 0x4a8]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x454]
subsd xmm0, qword [ebp - 0x444]
movsd qword [ebp - 0x454], xmm0
movsd xmm0, qword [ebp - 0x454]
subsd xmm0, qword [ebp - 0x444]
movsd qword [ebp - 0x454], xmm0
movsd xmm0, qword [ebp - 0x444]
subsd xmm0, qword [ebp - 0x42c]
movsd qword [ebp - 0x444], xmm0
movsd xmm0, qword [ebp - 0x42c]
comisd xmm0, xmmword [ebp - 0x454]
jbe 0x4a44a7
movsd xmm0, qword [ebp - 0x45c]
subsd xmm0, qword [ebp - 0x444]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x394]
addsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x42c]
addsd xmm0, qword [ebp - 0x4a8]
movsd qword [ebp - 0x42c], xmm0
movsd xmm0, qword [ebp - 0x394]
mulsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x454]
subsd xmm0, qword [ebp - 0x42c]
movsd qword [ebp - 0x454], xmm0
movsd xmm0, qword [ebp - 0x45c]
addsd xmm0, qword [ebp - 0x444]
movsd qword [ebp - 0x45c], xmm0
jmp 0x4a4702
movsd xmm0, qword [ebp - 0x42c]
mulsd xmm0, qword [ebp - 0x4a8]
movsd qword [ebp - 0x42c], xmm0
movsd xmm0, qword [ebp - 0x394]
subsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x45c]
divsd xmm0, qword [ebp - 0x444]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x444]
mulsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x444], xmm0
movsd xmm0, qword [ebp - 0x444]
addsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x444], xmm0
movsd xmm0, qword [ebp - 0x454]
subsd xmm0, qword [ebp - 0x42c]
movsd qword [ebp - 0x454], xmm0
movsd xmm0, qword [ebp - 0x394]
subsd xmm0, qword [ebp - 0x4a8]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x4a8]
mulsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x4a8], xmm0
movsd xmm0, qword [ebp - 0x394]
subsd xmm0, qword [ebp - 0x4a8]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x42c]
subsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x42c], xmm0
movsd xmm0, qword [ebp - 0x42c]
addsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x42c], xmm0
movsd xmm0, qword [ebp - 0x394]
addsd xmm0, qword [ebp - 0x4a8]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x42c]
comisd xmm0, xmmword [ebp - 0x454]
jbe 0x4a4672
movsd xmm0, qword [ebp - 0x45c]
divsd xmm0, qword [ebp - 0x454]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x42c]
subsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x42c], xmm0
movsd xmm0, qword [ebp - 0x454]
mulsd xmm0, qword [ebp - 0x444]
movsd qword [ebp - 0x454], xmm0
movsd xmm0, qword [ebp - 0x4a8]
mulsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x4a8], xmm0
movsd xmm0, qword [ebp - 0x42c]
divsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x42c], xmm0
movsd xmm0, qword [ebp - 0x454]
divsd xmm0, qword [ebp - 0x444]
movsd qword [ebp - 0x454], xmm0
jmp 0x4a4702
movsd xmm0, qword [ebp - 0x454]
addsd xmm0, qword [ebp - 0x42c]
movsd qword [ebp - 0x454], xmm0
movsd xmm0, qword [ebp - 0x454]
mulsd xmm0, qword [ebp - 0x42c]
movsd qword [ebp - 0x454], xmm0
movsd xmm0, qword [ebp - 0x444]
mulsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x444], xmm0
movsd xmm0, qword [ebp - 0x394]
divsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x394]
addsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x45c]
divsd xmm0, qword [ebp - 0x444]
movsd qword [ebp - 0x45c], xmm0
jmp 0x4a47a9
movsd xmm0, qword [ebp - 0x444]
addsd xmm0, qword [ebp - 0x42c]
movsd qword [ebp - 0x444], xmm0
movsd xmm0, qword [ebp - 0x394]
subsd xmm0, qword [ebp - 0x4a8]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x394]
subsd xmm0, qword [ebp - 0x4a8]
movsd qword [ebp - 0x394], xmm0
movsd xmm0, qword [ebp - 0x454]
addsd xmm0, qword [ebp - 0x444]
movsd qword [ebp - 0x454], xmm0
movsd xmm0, qword [ebp - 0x42c]
addsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x42c], xmm0
movsd xmm0, qword [ebp - 0x42c]
addsd xmm0, qword [ebp - 0x394]
movsd qword [ebp - 0x42c], xmm0
mov eax, dword [ebp - 0x414]
or eax, dword [ebp - 0x418]
mov dword [ebp - 0x41c], eax
mov byte [ebp - 0x33d], 0
mov cl, byte [ebp - 0x41c]
mov byte [ebp - 0x33d], cl
mov byte [ebp - 0x33b], 0
movzx edx, byte [ebp - 0x334]
mov al, byte [ebp + edx - 0x810]
mov byte [ebp - 0x33b], al
movzx ecx, byte [ebp - 0x32e]
movzx edx, byte [ebp + ecx - 0x810]
movzx eax, byte [ebp - 0x331]
add eax, edx
mov byte [ebp - 0x331], al
mov cl, byte [ebp - 0x32e]
add cl, 1
mov byte [ebp - 0x32e], cl
movzx edx, byte [ebp - 0x331]
movzx eax, byte [ebp - 0x334]
mov cl, byte [ebp + edx - 0x810]
mov byte [ebp + eax - 0x810], cl
movzx edx, byte [ebp - 0x332]
movzx eax, byte [ebp - 0x331]
mov cl, byte [ebp + edx - 0x810]
mov byte [ebp + eax - 0x810], cl
movzx edx, byte [ebp - 0x32e]
movzx eax, byte [ebp - 0x332]
mov cl, byte [ebp + edx - 0x810]
mov byte [ebp + eax - 0x810], cl
movzx edx, byte [ebp - 0x32e]
mov al, byte [ebp - 0x33b]
mov byte [ebp + edx - 0x810], al
movzx ecx, byte [ebp - 0x33b]
movzx edx, byte [ebp + ecx - 0x810]
movzx eax, byte [ebp - 0x33c]
add eax, edx
mov byte [ebp - 0x33c], al
movzx ecx, byte [ebp - 0x33d]
movzx edx, byte [ebp - 0x331]
movzx eax, byte [ebp + edx - 0x810]
movzx edx, byte [ebp - 0x32e]
movzx edx, byte [ebp + edx - 0x810]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x810]
xor ecx, eax
movzx edx, byte [ebp - 0x332]
movzx eax, byte [ebp + edx - 0x810]
movzx edx, byte [ebp - 0x334]
movzx edx, byte [ebp + edx - 0x810]
add eax, edx
movzx edx, byte [ebp - 0x33c]
movzx edx, byte [ebp + edx - 0x810]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x810]
movzx edx, byte [ebp + eax - 0x810]
xor ecx, edx
mov byte [ebp - 0x332], cl
mov al, byte [ebp - 0x33d]
mov byte [ebp - 0x334], al
mov cl, byte [ebp - 0x332]
mov byte [ebp - 0x340], cl
cmp dword [ebp - 0x34c], 0
jle 0x4a493f
mov edx, dword [ebp - 0x34c]
mov al, byte [ebp - 0x340]
mov byte [ebp + edx - 0x25], al
mov ecx, dword [ebp - 0x34c]
add ecx, 1
mov dword [ebp - 0x34c], ecx
mov edx, dword [ebp - 0x388]
add edx, 1
mov dword [ebp - 0x388], edx
mov eax, dword [ebp - 0x34c]
shl eax, 1
mov dword [ebp - 0x408], eax
mov ecx, dword [ebp - 0x40c]
add ecx, dword [ebp - 0x408]
movzx edx, byte [ecx]
mov dword [ebp - 0x3e0], edx
mov dword [ebp - 0x3b8], 0xf
mov eax, dword [ebp - 0x34c]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x410], ecx
mov edx, dword [ebp - 0x40c]
add edx, dword [ebp - 0x410]
movzx eax, byte [edx]
mov dword [ebp - 0x3bc], eax
mov dword [ebp - 0x3c0], 0x9d
mov ecx, dword [ebp - 0x3e0]
sub ecx, dword [ebp - 0x3b8]
mov dword [ebp - 0x3c4], ecx
mov edx, dword [ebp - 0x3bc]
sub edx, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c8], edx
mov eax, dword [ebp - 0x3c4]
shl eax, 4
mov dword [ebp - 0x414], eax
mov ecx, dword [ebp - 0x3c8]
mov dword [ebp - 0x418], ecx
mov edx, dword [ebp - 0x414]
or edx, dword [ebp - 0x418]
mov dword [ebp - 0x41c], edx
mov al, byte [ebp - 0x41c]
mov byte [ebp - 0x33d], al
movzx ecx, byte [ebp - 0x334]
mov dl, byte [ebp + ecx - 0x810]
mov byte [ebp - 0x33b], dl
movzx eax, byte [ebp - 0x32e]
movzx ecx, byte [ebp + eax - 0x810]
movzx edx, byte [ebp - 0x331]
add edx, ecx
mov byte [ebp - 0x331], dl
mov al, byte [ebp - 0x32e]
add al, 1
mov byte [ebp - 0x32e], al
movzx ecx, byte [ebp - 0x331]
movzx edx, byte [ebp - 0x334]
mov al, byte [ebp + ecx - 0x810]
mov byte [ebp + edx - 0x810], al
movzx ecx, byte [ebp - 0x332]
movzx edx, byte [ebp - 0x331]
mov al, byte [ebp + ecx - 0x810]
mov byte [ebp + edx - 0x810], al
movzx ecx, byte [ebp - 0x32e]
movzx edx, byte [ebp - 0x332]
mov al, byte [ebp + ecx - 0x810]
mov byte [ebp + edx - 0x810], al
movzx ecx, byte [ebp - 0x32e]
mov dl, byte [ebp - 0x33b]
mov byte [ebp + ecx - 0x810], dl
movzx eax, byte [ebp - 0x33b]
movzx ecx, byte [ebp + eax - 0x810]
movzx edx, byte [ebp - 0x33c]
add edx, ecx
mov byte [ebp - 0x33c], dl
movzx eax, byte [ebp - 0x33d]
movzx ecx, byte [ebp - 0x331]
movzx edx, byte [ebp + ecx - 0x810]
movzx ecx, byte [ebp - 0x32e]
movzx ecx, byte [ebp + ecx - 0x810]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x810]
xor eax, edx
movzx ecx, byte [ebp - 0x332]
movzx edx, byte [ebp + ecx - 0x810]
movzx ecx, byte [ebp - 0x334]
movzx ecx, byte [ebp + ecx - 0x810]
add edx, ecx
movzx ecx, byte [ebp - 0x33c]
movzx ecx, byte [ebp + ecx - 0x810]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x810]
movzx ecx, byte [ebp + edx - 0x810]
xor eax, ecx
mov byte [ebp - 0x332], al
mov dl, byte [ebp - 0x33d]
mov byte [ebp - 0x334], dl
mov al, byte [ebp - 0x332]
mov byte [ebp - 0x340], al
cmp dword [ebp - 0x34c], 0
jle 0x4a4b93
mov ecx, dword [ebp - 0x34c]
mov dl, byte [ebp - 0x340]
mov byte [ebp + ecx - 0x25], dl
mov eax, dword [ebp - 0x34c]
add eax, 1
mov dword [ebp - 0x34c], eax
mov ecx, dword [ebp - 0x388]
add ecx, 1
mov dword [ebp - 0x388], ecx
mov edx, dword [ebp - 0x34c]
shl edx, 1
mov dword [ebp - 0x408], edx
mov eax, dword [ebp - 0x40c]
add eax, dword [ebp - 0x408]
movzx ecx, byte [eax]
mov dword [ebp - 0x3e0], ecx
mov dword [ebp - 0x3b8], 0xf
mov edx, dword [ebp - 0x34c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x410], eax
mov ecx, dword [ebp - 0x40c]
add ecx, dword [ebp - 0x410]
movzx edx, byte [ecx]
mov dword [ebp - 0x3bc], edx
mov dword [ebp - 0x3c0], 0x9d
mov eax, dword [ebp - 0x3e0]
sub eax, dword [ebp - 0x3b8]
mov dword [ebp - 0x3c4], eax
mov ecx, dword [ebp - 0x3bc]
sub ecx, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c8], ecx
mov edx, dword [ebp - 0x3c4]
shl edx, 4
mov dword [ebp - 0x414], edx
mov eax, dword [ebp - 0x3c8]
mov dword [ebp - 0x418], eax
mov ecx, dword [ebp - 0x414]
or ecx, dword [ebp - 0x418]
mov dword [ebp - 0x41c], ecx
mov dl, byte [ebp - 0x41c]
mov byte [ebp - 0x33d], dl
movzx eax, byte [ebp - 0x334]
mov cl, byte [ebp + eax - 0x810]
mov byte [ebp - 0x33b], cl
movzx edx, byte [ebp - 0x32e]
movzx eax, byte [ebp + edx - 0x810]
movzx ecx, byte [ebp - 0x331]
add ecx, eax
mov byte [ebp - 0x331], cl
mov dl, byte [ebp - 0x32e]
add dl, 1
mov byte [ebp - 0x32e], dl
movzx eax, byte [ebp - 0x331]
movzx ecx, byte [ebp - 0x334]
mov dl, byte [ebp + eax - 0x810]
mov byte [ebp + ecx - 0x810], dl
movzx eax, byte [ebp - 0x332]
movzx ecx, byte [ebp - 0x331]
mov dl, byte [ebp + eax - 0x810]
mov byte [ebp + ecx - 0x810], dl
movzx eax, byte [ebp - 0x32e]
movzx ecx, byte [ebp - 0x332]
mov dl, byte [ebp + eax - 0x810]
mov byte [ebp + ecx - 0x810], dl
movzx eax, byte [ebp - 0x32e]
mov cl, byte [ebp - 0x33b]
mov byte [ebp + eax - 0x810], cl
movzx edx, byte [ebp - 0x33b]
movzx eax, byte [ebp + edx - 0x810]
movzx ecx, byte [ebp - 0x33c]
add ecx, eax
mov byte [ebp - 0x33c], cl
movzx edx, byte [ebp - 0x33d]
movzx eax, byte [ebp - 0x331]
movzx ecx, byte [ebp + eax - 0x810]
movzx eax, byte [ebp - 0x32e]
movzx eax, byte [ebp + eax - 0x810]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x810]
xor edx, ecx
movzx eax, byte [ebp - 0x332]
movzx ecx, byte [ebp + eax - 0x810]
movzx eax, byte [ebp - 0x334]
movzx eax, byte [ebp + eax - 0x810]
add ecx, eax
movzx eax, byte [ebp - 0x33c]
movzx eax, byte [ebp + eax - 0x810]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x810]
movzx eax, byte [ebp + ecx - 0x810]
xor edx, eax
mov byte [ebp - 0x332], dl
mov cl, byte [ebp - 0x33d]
mov byte [ebp - 0x334], cl
mov dl, byte [ebp - 0x332]
mov byte [ebp - 0x340], dl
cmp dword [ebp - 0x34c], 0
jle 0x4a4de8
mov eax, dword [ebp - 0x34c]
mov cl, byte [ebp - 0x340]
mov byte [ebp + eax - 0x25], cl
mov edx, dword [ebp - 0x388]
add edx, 5
mov dword [ebp - 0x388], edx
mov eax, dword [ebp - 0x34c]
add eax, 1
mov dword [ebp - 0x590], eax
jmp 0x4a4e17
mov ecx, dword [ebp - 0x590]
add ecx, 1
mov dword [ebp - 0x590], ecx
mov edx, dword [ebp - 0x590]
cmp edx, dword [ebp - 0x388]
jge 0x4a5072
mov eax, dword [ebp - 0x34c]
add eax, 1
mov dword [ebp - 0x34c], eax
mov ecx, dword [ebp - 0x34c]
shl ecx, 1
mov dword [ebp - 0x408], ecx
mov edx, dword [ebp - 0x40c]
add edx, dword [ebp - 0x408]
movzx eax, byte [edx]
mov dword [ebp - 0x3e0], eax
mov dword [ebp - 0x3b8], 0xf
mov ecx, dword [ebp - 0x34c]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x410], edx
mov eax, dword [ebp - 0x40c]
add eax, dword [ebp - 0x410]
movzx ecx, byte [eax]
mov dword [ebp - 0x3bc], ecx
mov dword [ebp - 0x3c0], 0x9d
mov edx, dword [ebp - 0x3e0]
sub edx, dword [ebp - 0x3b8]
mov dword [ebp - 0x3c4], edx
mov eax, dword [ebp - 0x3bc]
sub eax, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c8], eax
mov ecx, dword [ebp - 0x3c4]
shl ecx, 4
mov dword [ebp - 0x414], ecx
mov edx, dword [ebp - 0x3c8]
mov dword [ebp - 0x418], edx
mov eax, dword [ebp - 0x414]
or eax, dword [ebp - 0x418]
mov dword [ebp - 0x41c], eax
mov cl, byte [ebp - 0x41c]
mov byte [ebp - 0x33d], cl
movzx edx, byte [ebp - 0x334]
mov al, byte [ebp + edx - 0x810]
mov byte [ebp - 0x33b], al
movzx ecx, byte [ebp - 0x32e]
movzx edx, byte [ebp + ecx - 0x810]
movzx eax, byte [ebp - 0x331]
add eax, edx
mov byte [ebp - 0x331], al
mov cl, byte [ebp - 0x32e]
add cl, 1
mov byte [ebp - 0x32e], cl
movzx edx, byte [ebp - 0x331]
movzx eax, byte [ebp - 0x334]
mov cl, byte [ebp + edx - 0x810]
mov byte [ebp + eax - 0x810], cl
movzx edx, byte [ebp - 0x332]
movzx eax, byte [ebp - 0x331]
mov cl, byte [ebp + edx - 0x810]
mov byte [ebp + eax - 0x810], cl
movzx edx, byte [ebp - 0x32e]
movzx eax, byte [ebp - 0x332]
mov cl, byte [ebp + edx - 0x810]
mov byte [ebp + eax - 0x810], cl
movzx edx, byte [ebp - 0x32e]
mov al, byte [ebp - 0x33b]
mov byte [ebp + edx - 0x810], al
movzx ecx, byte [ebp - 0x33b]
movzx edx, byte [ebp + ecx - 0x810]
movzx eax, byte [ebp - 0x33c]
add eax, edx
mov byte [ebp - 0x33c], al
movzx ecx, byte [ebp - 0x33d]
movzx edx, byte [ebp - 0x331]
movzx eax, byte [ebp + edx - 0x810]
movzx edx, byte [ebp - 0x32e]
movzx edx, byte [ebp + edx - 0x810]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x810]
xor ecx, eax
movzx edx, byte [ebp - 0x332]
movzx eax, byte [ebp + edx - 0x810]
movzx edx, byte [ebp - 0x334]
movzx edx, byte [ebp + edx - 0x810]
add eax, edx
movzx edx, byte [ebp - 0x33c]
movzx edx, byte [ebp + edx - 0x810]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x810]
movzx edx, byte [ebp + eax - 0x810]
xor ecx, edx
mov byte [ebp - 0x332], cl
mov al, byte [ebp - 0x33d]
mov byte [ebp - 0x334], al
mov cl, byte [ebp - 0x332]
mov byte [ebp - 0x340], cl
cmp dword [ebp - 0x34c], 0
jle 0x4a506d
mov edx, dword [ebp - 0x34c]
mov al, byte [ebp - 0x340]
mov byte [ebp + edx - 0x25], al
jmp 0x4a4e08
mov ecx, dword [ebp - 0x388]
add ecx, 1
mov dword [ebp - 0x388], ecx
mov edx, dword [ebp - 0x34c]
add edx, 1
mov dword [ebp - 0x34c], edx
mov eax, dword [ebp - 0x388]
add eax, 1
mov dword [ebp - 0x388], eax
mov ecx, dword [ebp - 0x34c]
shl ecx, 1
mov dword [ebp - 0x408], ecx
mov edx, dword [ebp - 0x40c]
add edx, dword [ebp - 0x408]
movzx eax, byte [edx]
mov dword [ebp - 0x3e0], eax
mov dword [ebp - 0x3b8], 0xf
mov ecx, dword [ebp - 0x34c]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x410], edx
mov eax, dword [ebp - 0x40c]
add eax, dword [ebp - 0x410]
movzx ecx, byte [eax]
mov dword [ebp - 0x3bc], ecx
mov dword [ebp - 0x3c0], 0x9d
mov edx, dword [ebp - 0x3e0]
sub edx, dword [ebp - 0x3b8]
mov dword [ebp - 0x3c4], edx
mov eax, dword [ebp - 0x3bc]
sub eax, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c8], eax
mov ecx, dword [ebp - 0x3c4]
shl ecx, 4
mov dword [ebp - 0x414], ecx
mov edx, dword [ebp - 0x3c8]
mov dword [ebp - 0x418], edx
mov eax, dword [ebp - 0x414]
or eax, dword [ebp - 0x418]
mov dword [ebp - 0x41c], eax
mov cl, byte [ebp - 0x41c]
mov byte [ebp - 0x33d], cl
movzx edx, byte [ebp - 0x334]
mov al, byte [ebp + edx - 0x810]
mov byte [ebp - 0x33b], al
movsd xmm0, qword [0xa61b10]
movsd qword [ebp - 0x44c], xmm0
movsd xmm0, qword [0xa61a80]
movsd qword [ebp - 0x4b0], xmm0
movsd xmm0, qword [0xa619e8]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [0xa61948]
movsd qword [ebp - 0x434], xmm0
movsd xmm0, qword [0xa61888]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [0xa61788]
movsd qword [ebp - 0x43c], xmm0
movsd xmm0, qword [ebp - 0x4b0]
mulsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x4b0], xmm0
movsd xmm0, qword [ebp - 0x44c]
subsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x44c], xmm0
movsd xmm0, qword [ebp - 0x434]
addsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x434], xmm0
movsd xmm0, qword [ebp - 0x44c]
addsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x44c], xmm0
movsd xmm0, qword [ebp - 0x3d8]
mulsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x44c]
addsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x44c], xmm0
movsd xmm0, qword [ebp - 0x4b0]
comisd xmm0, xmmword [ebp - 0x43c]
jbe 0x4a5334
movsd xmm0, qword [ebp - 0x3d8]
mulsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x404]
subsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [ebp - 0x434]
mulsd xmm0, qword [ebp - 0x404]
movsd qword [ebp - 0x434], xmm0
movsd xmm0, qword [ebp - 0x44c]
addsd xmm0, qword [ebp - 0x4b0]
movsd qword [ebp - 0x44c], xmm0
movsd xmm0, qword [ebp - 0x3d8]
mulsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x404]
subsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x404], xmm0
movzx ecx, byte [ebp - 0x32e]
movzx edx, byte [ebp + ecx - 0x810]
movzx eax, byte [ebp - 0x331]
add eax, edx
mov byte [ebp - 0x331], al
mov cl, byte [ebp - 0x32e]
add cl, 1
mov byte [ebp - 0x32e], cl
jmp 0x4a575a
movsd xmm0, qword [ebp - 0x404]
mulsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [ebp - 0x404]
subsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [ebp - 0x4b0]
divsd xmm0, qword [ebp - 0x3d8]
movsd qword [ebp - 0x4b0], xmm0
movsd xmm0, qword [ebp - 0x404]
addsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [ebp - 0x434]
addsd xmm0, qword [ebp - 0x404]
movsd qword [ebp - 0x434], xmm0
movsd xmm0, qword [ebp - 0x43c]
subsd xmm0, qword [ebp - 0x44c]
movsd qword [ebp - 0x43c], xmm0
movsd xmm0, qword [ebp - 0x44c]
addsd xmm0, qword [ebp - 0x3d8]
movsd qword [ebp - 0x44c], xmm0
movsd xmm0, qword [ebp - 0x4b0]
addsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x4b0], xmm0
movsd xmm0, qword [ebp - 0x434]
addsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x434], xmm0
movsd xmm0, qword [ebp - 0x3d8]
mulsd xmm0, qword [ebp - 0x404]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x3d8]
divsd xmm0, qword [ebp - 0x404]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x4b0]
addsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x4b0], xmm0
movsd xmm0, qword [ebp - 0x3d8]
comisd xmm0, xmmword [ebp - 0x44c]
jbe 0x4a54ff
movsd xmm0, qword [ebp - 0x434]
divsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x434], xmm0
movsd xmm0, qword [ebp - 0x3d8]
divsd xmm0, qword [ebp - 0x404]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x3d8]
subsd xmm0, qword [ebp - 0x404]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x404]
subsd xmm0, qword [ebp - 0x44c]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [ebp - 0x3d8]
subsd xmm0, qword [ebp - 0x404]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x43c]
mulsd xmm0, qword [ebp - 0x4b0]
movsd qword [ebp - 0x43c], xmm0
jmp 0x4a575a
movsd xmm0, qword [ebp - 0x434]
subsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x434], xmm0
movsd xmm0, qword [ebp - 0x404]
mulsd xmm0, qword [ebp - 0x44c]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [ebp - 0x404]
divsd xmm0, qword [ebp - 0x44c]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [ebp - 0x4b0]
divsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x4b0], xmm0
movsd xmm0, qword [ebp - 0x4b0]
addsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x4b0], xmm0
movsd xmm0, qword [ebp - 0x4b0]
divsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x4b0], xmm0
movsd xmm0, qword [ebp - 0x3d8]
addsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x3d8]
mulsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x404]
mulsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [ebp - 0x3d8]
divsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x3d8]
divsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x404]
divsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [ebp - 0x434]
comisd xmm0, xmmword [ebp - 0x43c]
jbe 0x4a56ca
movsd xmm0, qword [ebp - 0x3d8]
mulsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x44c]
subsd xmm0, qword [ebp - 0x4b0]
movsd qword [ebp - 0x44c], xmm0
movsd xmm0, qword [ebp - 0x3d8]
addsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x404]
addsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [ebp - 0x3d8]
mulsd xmm0, qword [ebp - 0x434]
movsd qword [ebp - 0x3d8], xmm0
movsd xmm0, qword [ebp - 0x44c]
addsd xmm0, qword [ebp - 0x4b0]
movsd qword [ebp - 0x44c], xmm0
jmp 0x4a575a
movsd xmm0, qword [ebp - 0x43c]
divsd xmm0, qword [ebp - 0x4b0]
movsd qword [ebp - 0x43c], xmm0
movsd xmm0, qword [ebp - 0x404]
divsd xmm0, qword [ebp - 0x44c]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [ebp - 0x434]
divsd xmm0, qword [ebp - 0x43c]
movsd qword [ebp - 0x434], xmm0
movsd xmm0, qword [ebp - 0x404]
subsd xmm0, qword [ebp - 0x44c]
movsd qword [ebp - 0x404], xmm0
movsd xmm0, qword [ebp - 0x44c]
subsd xmm0, qword [ebp - 0x3d8]
movsd qword [ebp - 0x44c], xmm0
movsd xmm0, qword [ebp - 0x44c]
divsd xmm0, qword [ebp - 0x3d8]
movsd qword [ebp - 0x44c], xmm0
movzx edx, byte [ebp - 0x331]
movzx eax, byte [ebp - 0x334]
mov cl, byte [ebp + edx - 0x810]
mov byte [ebp + eax - 0x810], cl
movzx edx, byte [ebp - 0x332]
movzx eax, byte [ebp - 0x331]
mov cl, byte [ebp + edx - 0x810]
mov byte [ebp + eax - 0x810], cl
movzx edx, byte [ebp - 0x32e]
movzx eax, byte [ebp - 0x332]
mov cl, byte [ebp + edx - 0x810]
mov byte [ebp + eax - 0x810], cl
movzx edx, byte [ebp - 0x32e]
mov al, byte [ebp - 0x33b]
mov byte [ebp + edx - 0x810], al
movzx ecx, byte [ebp - 0x33b]
movzx edx, byte [ebp + ecx - 0x810]
movzx eax, byte [ebp - 0x33c]
add eax, edx
mov byte [ebp - 0x33c], al
movzx ecx, byte [ebp - 0x33d]
movzx edx, byte [ebp - 0x331]
movzx eax, byte [ebp + edx - 0x810]
movzx edx, byte [ebp - 0x32e]
movzx edx, byte [ebp + edx - 0x810]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x810]
xor ecx, eax
movzx edx, byte [ebp - 0x332]
movzx eax, byte [ebp + edx - 0x810]
movzx edx, byte [ebp - 0x334]
movzx edx, byte [ebp + edx - 0x810]
add eax, edx
movzx edx, byte [ebp - 0x33c]
movzx edx, byte [ebp + edx - 0x810]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x810]
movzx edx, byte [ebp + eax - 0x810]
xor ecx, edx
mov byte [ebp - 0x332], cl
mov al, byte [ebp - 0x33d]
mov byte [ebp - 0x334], al
mov cl, byte [ebp - 0x332]
mov byte [ebp - 0x340], cl
cmp dword [ebp - 0x34c], 0
jle 0x4a5895
mov edx, dword [ebp - 0x34c]
mov al, byte [ebp - 0x340]
mov byte [ebp + edx - 0x25], al
mov ecx, dword [ebp - 0x34c]
add ecx, 1
mov dword [ebp - 0x34c], ecx
mov edx, dword [ebp - 0x388]
add edx, 1
mov dword [ebp - 0x388], edx
mov eax, dword [ebp - 0x34c]
shl eax, 1
mov dword [ebp - 0x408], eax
mov ecx, dword [ebp - 0x40c]
add ecx, dword [ebp - 0x408]
movzx edx, byte [ecx]
mov dword [ebp - 0x3e0], edx
mov dword [ebp - 0x3b8], 0xf
mov eax, dword [ebp - 0x34c]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x410], ecx
mov edx, dword [ebp - 0x40c]
add edx, dword [ebp - 0x410]
movzx eax, byte [edx]
mov dword [ebp - 0x3bc], eax
mov dword [ebp - 0x3c0], 0x9d
mov ecx, dword [ebp - 0x3e0]
sub ecx, dword [ebp - 0x3b8]
mov dword [ebp - 0x3c4], ecx
mov edx, dword [ebp - 0x3bc]
sub edx, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c8], edx
mov eax, dword [ebp - 0x3c4]
shl eax, 4
mov dword [ebp - 0x414], eax
mov ecx, dword [ebp - 0x3c8]
mov dword [ebp - 0x418], ecx
mov edx, dword [ebp - 0x414]
or edx, dword [ebp - 0x418]
mov dword [ebp - 0x41c], edx
mov al, byte [ebp - 0x41c]
mov byte [ebp - 0x33d], al
movzx ecx, byte [ebp - 0x334]
mov dl, byte [ebp + ecx - 0x810]
mov byte [ebp - 0x33b], dl
movzx eax, byte [ebp - 0x32e]
movzx ecx, byte [ebp + eax - 0x810]
movzx edx, byte [ebp - 0x331]
add edx, ecx
mov byte [ebp - 0x331], dl
mov al, byte [ebp - 0x32e]
add al, 1
mov byte [ebp - 0x32e], al
movzx ecx, byte [ebp - 0x331]
movzx edx, byte [ebp - 0x334]
mov al, byte [ebp + ecx - 0x810]
mov byte [ebp + edx - 0x810], al
movzx ecx, byte [ebp - 0x332]
movzx edx, byte [ebp - 0x331]
mov al, byte [ebp + ecx - 0x810]
mov byte [ebp + edx - 0x810], al
movzx ecx, byte [ebp - 0x32e]
movzx edx, byte [ebp - 0x332]
mov al, byte [ebp + ecx - 0x810]
mov byte [ebp + edx - 0x810], al
movzx ecx, byte [ebp - 0x32e]
mov dl, byte [ebp - 0x33b]
mov byte [ebp + ecx - 0x810], dl
movzx eax, byte [ebp - 0x33b]
movzx ecx, byte [ebp + eax - 0x810]
movzx edx, byte [ebp - 0x33c]
add edx, ecx
mov byte [ebp - 0x33c], dl
movzx eax, byte [ebp - 0x33d]
movzx ecx, byte [ebp - 0x331]
movzx edx, byte [ebp + ecx - 0x810]
movzx ecx, byte [ebp - 0x32e]
movzx ecx, byte [ebp + ecx - 0x810]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x810]
xor eax, edx
movzx ecx, byte [ebp - 0x332]
movzx edx, byte [ebp + ecx - 0x810]
movzx ecx, byte [ebp - 0x334]
movzx ecx, byte [ebp + ecx - 0x810]
add edx, ecx
movzx ecx, byte [ebp - 0x33c]
movzx ecx, byte [ebp + ecx - 0x810]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x810]
movzx ecx, byte [ebp + edx - 0x810]
xor eax, ecx
mov byte [ebp - 0x332], al
mov dl, byte [ebp - 0x33d]
mov byte [ebp - 0x334], dl
mov al, byte [ebp - 0x332]
mov byte [ebp - 0x340], al
cmp dword [ebp - 0x34c], 0
jle 0x4a5ae9
mov ecx, dword [ebp - 0x34c]
mov dl, byte [ebp - 0x340]
mov byte [ebp + ecx - 0x25], dl
mov eax, dword [ebp - 0x388]
add eax, 6
mov dword [ebp - 0x388], eax
mov ecx, dword [ebp - 0x34c]
add ecx, 1
mov dword [ebp - 0x594], ecx
jmp 0x4a5b18
mov edx, dword [ebp - 0x594]
add edx, 1
mov dword [ebp - 0x594], edx
mov eax, dword [ebp - 0x594]
cmp eax, dword [ebp - 0x388]
jge 0x4a6154
mov ecx, dword [ebp - 0x34c]
add ecx, 1
mov dword [ebp - 0x34c], ecx
mov edx, dword [ebp - 0x34c]
shl edx, 1
mov dword [ebp - 0x408], edx
mov eax, dword [ebp - 0x40c]
add eax, dword [ebp - 0x408]
movzx ecx, byte [eax]
mov dword [ebp - 0x3e0], ecx
movss xmm0, dword [0xa61d78]
movss dword [ebp - 0x36c], xmm0
movss xmm0, dword [0xa61d1c]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [0xa61ca4]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [0xa61c38]
movss dword [ebp - 0x360], xmm0
movss xmm0, dword [ebp - 0x36c]
addss xmm0, dword [ebp - 0x360]
movss dword [ebp - 0x36c], xmm0
movss xmm0, dword [ebp - 0x370]
addss xmm0, dword [ebp - 0x360]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x380]
subss xmm0, dword [ebp - 0x360]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x370]
addss xmm0, dword [ebp - 0x360]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x36c]
comiss xmm0, dword [ebp - 0x360]
jbe 0x4a5c7c
movss xmm0, dword [ebp - 0x36c]
addss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x36c], xmm0
movss xmm0, dword [ebp - 0x370]
addss xmm0, dword [ebp - 0x360]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x380]
addss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x370]
addss xmm0, dword [ebp - 0x360]
movss dword [ebp - 0x370], xmm0
mov dword [ebp - 0x3b8], 0xf
jmp 0x4a5f45
movss xmm0, dword [ebp - 0x36c]
addss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x36c], xmm0
movss xmm0, dword [ebp - 0x360]
addss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x360], xmm0
movss xmm0, dword [ebp - 0x360]
subss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x360], xmm0
movss xmm0, dword [ebp - 0x370]
mulss xmm0, dword [ebp - 0x36c]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x360]
divss xmm0, dword [ebp - 0x36c]
movss dword [ebp - 0x360], xmm0
movss xmm0, dword [ebp - 0x380]
divss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x360]
divss xmm0, dword [ebp - 0x36c]
movss dword [ebp - 0x360], xmm0
movss xmm0, dword [ebp - 0x370]
subss xmm0, dword [ebp - 0x360]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x36c]
comiss xmm0, dword [ebp - 0x370]
jbe 0x4a5db2
movss xmm0, dword [ebp - 0x360]
divss xmm0, dword [ebp - 0x36c]
movss dword [ebp - 0x360], xmm0
movss xmm0, dword [ebp - 0x360]
subss xmm0, dword [ebp - 0x36c]
movss dword [ebp - 0x360], xmm0
movss xmm0, dword [ebp - 0x370]
subss xmm0, dword [ebp - 0x360]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x360]
mulss xmm0, dword [ebp - 0x36c]
movss dword [ebp - 0x360], xmm0
jmp 0x4a5f45
movss xmm0, dword [ebp - 0x360]
divss xmm0, dword [ebp - 0x36c]
movss dword [ebp - 0x360], xmm0
movss xmm0, dword [ebp - 0x380]
subss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x36c]
mulss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x36c], xmm0
movss xmm0, dword [ebp - 0x380]
addss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x370]
mulss xmm0, dword [ebp - 0x360]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x380]
divss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x36c]
addss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x36c], xmm0
movss xmm0, dword [ebp - 0x360]
subss xmm0, dword [ebp - 0x36c]
movss dword [ebp - 0x360], xmm0
movss xmm0, dword [ebp - 0x380]
comiss xmm0, dword [ebp - 0x360]
jbe 0x4a5ee5
movss xmm0, dword [ebp - 0x36c]
addss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x36c], xmm0
movss xmm0, dword [ebp - 0x36c]
addss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x36c], xmm0
movss xmm0, dword [ebp - 0x370]
addss xmm0, dword [ebp - 0x360]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x360]
mulss xmm0, dword [ebp - 0x36c]
movss dword [ebp - 0x360], xmm0
jmp 0x4a5f45
movss xmm0, dword [ebp - 0x360]
divss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x360], xmm0
movss xmm0, dword [ebp - 0x380]
subss xmm0, dword [ebp - 0x360]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x36c]
subss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x36c], xmm0
movss xmm0, dword [ebp - 0x36c]
addss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x36c], xmm0
mov edx, dword [ebp - 0x34c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x410], eax
mov ecx, dword [ebp - 0x40c]
add ecx, dword [ebp - 0x410]
movzx edx, byte [ecx]
mov dword [ebp - 0x3bc], edx
mov dword [ebp - 0x3c0], 0x9d
mov eax, dword [ebp - 0x3e0]
sub eax, dword [ebp - 0x3b8]
mov dword [ebp - 0x3c4], eax
mov ecx, dword [ebp - 0x3bc]
sub ecx, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c8], ecx
mov edx, dword [ebp - 0x3c4]
shl edx, 4
mov dword [ebp - 0x414], edx
mov eax, dword [ebp - 0x3c8]
mov dword [ebp - 0x418], eax
mov ecx, dword [ebp - 0x414]
or ecx, dword [ebp - 0x418]
mov dword [ebp - 0x41c], ecx
mov dl, byte [ebp - 0x41c]
mov byte [ebp - 0x33d], dl
movzx eax, byte [ebp - 0x334]
mov cl, byte [ebp + eax - 0x810]
mov byte [ebp - 0x33b], cl
movzx edx, byte [ebp - 0x32e]
movzx eax, byte [ebp + edx - 0x810]
movzx ecx, byte [ebp - 0x331]
add ecx, eax
mov byte [ebp - 0x331], cl
mov dl, byte [ebp - 0x32e]
add dl, 1
mov byte [ebp - 0x32e], dl
movzx eax, byte [ebp - 0x331]
movzx ecx, byte [ebp - 0x334]
mov dl, byte [ebp + eax - 0x810]
mov byte [ebp + ecx - 0x810], dl
movzx eax, byte [ebp - 0x332]
movzx ecx, byte [ebp - 0x331]
mov dl, byte [ebp + eax - 0x810]
mov byte [ebp + ecx - 0x810], dl
movzx eax, byte [ebp - 0x32e]
movzx ecx, byte [ebp - 0x332]
mov dl, byte [ebp + eax - 0x810]
mov byte [ebp + ecx - 0x810], dl
movzx eax, byte [ebp - 0x32e]
mov cl, byte [ebp - 0x33b]
mov byte [ebp + eax - 0x810], cl
movzx edx, byte [ebp - 0x33b]
movzx eax, byte [ebp + edx - 0x810]
movzx ecx, byte [ebp - 0x33c]
add ecx, eax
mov byte [ebp - 0x33c], cl
movzx edx, byte [ebp - 0x33d]
movzx eax, byte [ebp - 0x331]
movzx ecx, byte [ebp + eax - 0x810]
movzx eax, byte [ebp - 0x32e]
movzx eax, byte [ebp + eax - 0x810]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x810]
xor edx, ecx
movzx eax, byte [ebp - 0x332]
movzx ecx, byte [ebp + eax - 0x810]
movzx eax, byte [ebp - 0x334]
movzx eax, byte [ebp + eax - 0x810]
add ecx, eax
movzx eax, byte [ebp - 0x33c]
movzx eax, byte [ebp + eax - 0x810]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x810]
movzx eax, byte [ebp + ecx - 0x810]
xor edx, eax
mov byte [ebp - 0x332], dl
mov cl, byte [ebp - 0x33d]
mov byte [ebp - 0x334], cl
mov dl, byte [ebp - 0x332]
mov byte [ebp - 0x340], dl
cmp dword [ebp - 0x34c], 0
jle 0x4a614f
mov eax, dword [ebp - 0x34c]
mov cl, byte [ebp - 0x340]
mov byte [ebp + eax - 0x25], cl
jmp 0x4a5b09
mov edx, dword [ebp - 0x388]
add edx, 1
mov dword [ebp - 0x388], edx
mov eax, dword [ebp - 0x34c]
add eax, 1
mov dword [ebp - 0x34c], eax
mov ecx, dword [ebp - 0x388]
add ecx, 1
mov dword [ebp - 0x388], ecx
mov edx, dword [ebp - 0x34c]
shl edx, 1
mov dword [ebp - 0x408], edx
mov eax, dword [ebp - 0x40c]
add eax, dword [ebp - 0x408]
movzx ecx, byte [eax]
mov dword [ebp - 0x3e0], ecx
mov dword [ebp - 0x3b8], 0xf
mov edx, dword [ebp - 0x34c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x410], eax
mov ecx, dword [ebp - 0x40c]
add ecx, dword [ebp - 0x410]
movzx edx, byte [ecx]
mov dword [ebp - 0x3bc], edx
mov dword [ebp - 0x3c0], 0x9d
mov eax, dword [ebp - 0x3e0]
sub eax, dword [ebp - 0x3b8]
mov dword [ebp - 0x3c4], eax
movsd xmm0, qword [0xa61b78]
movsd qword [ebp - 0x5a4], xmm0
movsd xmm0, qword [0xa61a90]
movsd qword [ebp - 0x540], xmm0
movsd xmm0, qword [0xa61978]
movsd qword [ebp - 0x508], xmm0
movsd xmm0, qword [0xa61838]
movsd qword [ebp - 0x538], xmm0
movsd xmm0, qword [ebp - 0x508]
mulsd xmm0, qword [ebp - 0x538]
movsd qword [ebp - 0x508], xmm0
movsd xmm0, qword [ebp - 0x5a4]
subsd xmm0, qword [ebp - 0x538]
movsd qword [ebp - 0x5a4], xmm0
movsd xmm0, qword [ebp - 0x540]
addsd xmm0, qword [ebp - 0x538]
movsd qword [ebp - 0x540], xmm0
movsd xmm0, qword [ebp - 0x540]
addsd xmm0, qword [ebp - 0x538]
movsd qword [ebp - 0x540], xmm0
movsd xmm0, qword [ebp - 0x538]
comisd xmm0, xmmword [ebp - 0x508]
jbe 0x4a6303
movsd xmm0, qword [ebp - 0x5a4]
addsd xmm0, qword [ebp - 0x540]
movsd qword [ebp - 0x5a4], xmm0
movsd xmm0, qword [ebp - 0x540]
mulsd xmm0, qword [ebp - 0x508]
movsd qword [ebp - 0x540], xmm0
movsd xmm0, qword [ebp - 0x508]
mulsd xmm0, qword [ebp - 0x538]
movsd qword [ebp - 0x508], xmm0
movsd xmm0, qword [ebp - 0x540]
subsd xmm0, qword [ebp - 0x508]
movsd qword [ebp - 0x540], xmm0
jmp 0x4a6375
movsd xmm0, qword [ebp - 0x508]
subsd xmm0, qword [ebp - 0x538]
movsd qword [ebp - 0x508], xmm0
movsd xmm0, qword [ebp - 0x508]
mulsd xmm0, qword [ebp - 0x538]
movsd qword [ebp - 0x508], xmm0
movsd xmm0, qword [ebp - 0x5a4]
subsd xmm0, qword [ebp - 0x540]
movsd qword [ebp - 0x5a4], xmm0
movsd xmm0, qword [ebp - 0x538]
mulsd xmm0, qword [ebp - 0x5a4]
movsd qword [ebp - 0x538], xmm0
mov ecx, dword [ebp - 0x3bc]
sub ecx, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c8], ecx
mov edx, dword [ebp - 0x3c4]
shl edx, 4
mov dword [ebp - 0x414], edx
mov eax, dword [ebp - 0x3c8]
mov dword [ebp - 0x418], eax
mov ecx, dword [ebp - 0x414]
or ecx, dword [ebp - 0x418]
mov dword [ebp - 0x41c], ecx
mov dl, byte [ebp - 0x41c]
mov byte [ebp - 0x33d], dl
movzx eax, byte [ebp - 0x334]
mov cl, byte [ebp + eax - 0x810]
mov byte [ebp - 0x33b], cl
movzx edx, byte [ebp - 0x32e]
movzx eax, byte [ebp + edx - 0x810]
movzx ecx, byte [ebp - 0x331]
add ecx, eax
mov byte [ebp - 0x331], cl
mov dl, byte [ebp - 0x32e]
add dl, 1
mov byte [ebp - 0x32e], dl
movzx eax, byte [ebp - 0x331]
movzx ecx, byte [ebp - 0x334]
mov dl, byte [ebp + eax - 0x810]
mov byte [ebp + ecx - 0x810], dl
movzx eax, byte [ebp - 0x332]
movzx ecx, byte [ebp - 0x331]
mov dl, byte [ebp + eax - 0x810]
mov byte [ebp + ecx - 0x810], dl
movzx eax, byte [ebp - 0x32e]
movzx ecx, byte [ebp - 0x332]
mov dl, byte [ebp + eax - 0x810]
mov byte [ebp + ecx - 0x810], dl
movzx eax, byte [ebp - 0x32e]
mov cl, byte [ebp - 0x33b]
mov byte [ebp + eax - 0x810], cl
movzx edx, byte [ebp - 0x33b]
movzx eax, byte [ebp + edx - 0x810]
movzx ecx, byte [ebp - 0x33c]
add ecx, eax
mov byte [ebp - 0x33c], cl
movzx edx, byte [ebp - 0x33d]
movzx eax, byte [ebp - 0x331]
movzx ecx, byte [ebp + eax - 0x810]
movzx eax, byte [ebp - 0x32e]
movzx eax, byte [ebp + eax - 0x810]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x810]
xor edx, ecx
movzx eax, byte [ebp - 0x332]
movzx ecx, byte [ebp + eax - 0x810]
movzx eax, byte [ebp - 0x334]
movzx eax, byte [ebp + eax - 0x810]
add ecx, eax
movzx eax, byte [ebp - 0x33c]
movzx eax, byte [ebp + eax - 0x810]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x810]
movzx eax, byte [ebp + ecx - 0x810]
xor edx, eax
mov byte [ebp - 0x332], dl
mov cl, byte [ebp - 0x33d]
mov byte [ebp - 0x334], cl
mov dl, byte [ebp - 0x332]
mov byte [ebp - 0x340], dl
cmp dword [ebp - 0x34c], 0
jle 0x4a652c
mov eax, dword [ebp - 0x34c]
mov cl, byte [ebp - 0x340]
mov byte [ebp + eax - 0x25], cl
mov edx, 1
shl edx, 4
mov dword [ebp - 0x608], edx
cmp dword [ebp - 0x608], 0x11
jae 0x4a6545
jmp 0x4a654a
call fcn.009e31a7
mov eax, dword [ebp - 0x608]
mov byte [ebp + eax - 0x24], 0
jmp 0x4a65a4
mov dword [ebp - 0x560], 0
jmp 0x4a6572
mov ecx, dword [ebp - 0x560]
add ecx, 1
mov dword [ebp - 0x560], ecx
cmp dword [ebp - 0x560], 0x11
jge 0x4a65a4
mov edx, dword [ebp - 0x560]
mov dword [ebp - 0x60c], edx
cmp dword [ebp - 0x60c], 0x11
jae 0x4a6592
jmp 0x4a6597
call fcn.009e31a7
mov eax, dword [ebp - 0x60c]
mov byte [ebp + eax - 0x24], 0
jmp 0x4a6563
lea ecx, [ebp - 0x24]
push ecx
mov ecx, dword [ebp - 0x828]
call fcn.00487770
mov dword [ebp - 0x824], eax
lea edx, [ebp - 0x324]
push edx
push 0xf01ff
mov eax, dword [ebp - 0x56c]
push eax
call dword [ebp - 0x824]
mov dword [ebp - 0x820], eax
push 0xc
lea ecx, [ebp - 0x2a4]
call fcn.00487520
lea ecx, [ebp - 0x2a4]
call fcn.00487910
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x2a8]
push ecx
lea edx, [ebp - 0x294]
push edx
lea eax, [ebp - 0x2a4]
push eax
mov ecx, dword [ebp - 0x4e8]
call fcn.004c5110
cmp dword [ebp - 0x820], 0
je 0x4a7ee3
mov dword [ebp - 0x32c], 0
mov dword [ebp - 0x328], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x530], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x510], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x510], xmm0
jmp 0x4a6673
movsd xmm0, qword [ebp - 0x510]
addsd xmm0, qword [0xa5f350]
movsd qword [ebp - 0x510], xmm0
movsd xmm0, qword [0xa61870]
comisd xmm0, xmmword [ebp - 0x510]
jbe 0x4a6724
movsd xmm0, qword [0xa616e0]
mulsd xmm0, qword [ebp - 0x510]
mulsd xmm0, qword [ebp - 0x510]
movsd xmm1, qword [ebp - 0x510]
mulsd xmm1, qword [ebp - 0x510]
subsd xmm0, xmm1
movsd xmm1, qword [0xa615c8]
mulsd xmm1, qword [ebp - 0x510]
mulsd xmm1, qword [ebp - 0x510]
addsd xmm1, qword [0xa61658]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x530]
movsd qword [ebp - 0x530], xmm0
movsd xmm0, qword [ebp - 0x530]
comisd xmm0, xmmword [0xa616a8]
jbe 0x4a671f
movsd xmm0, qword [0xa61538]
mulsd xmm0, qword [ebp - 0x510]
movsd xmm1, qword [ebp - 0x530]
subsd xmm1, xmm0
movsd qword [ebp - 0x530], xmm1
jmp 0x4a665b
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x530]
jbe 0x4a676d
cmp eax, 0x3e973793
nop
cmp edx, dword [ebp + edi + 0x34953092]
sahf
pushfd
das
sahf
xor dl, byte [esi - 0x6fc462d0]
xor bl, byte [ecx - 0x67cd6cc8]
cmp byte [ecx + 0x74729034], dl
jp 0x4a6777
dec ebx
push 0x5a
jge 0x4a67b9
sub dword [edx], esp
cmp ch, byte [ecx]
pushal
imul edi, dword [ebp + esi*2 + 0x5e], 0x3f
jo 0x4a6795
jmp 0x4a7a90
mov dword [ebp - 0x32c], 0x4a6731
mov dword [ebp - 0x328], 0x4a6753
mov ecx, dword [ebp - 0x32c]
mov dword [ebp - 0x48c], ecx
mov edx, dword [ebp - 0x328]
mov dword [ebp - 0x81c], edx
mov byte [ebp - 0x47e], 0x19
mov dword [ebp - 0x39c], 0
jmp 0x4a67bb
in al, 0xf7
invalid
mov eax, dword [ebp - 0x39c]
add eax, 1
mov dword [ebp - 0x39c], eax
invalid
cmp dword [ebp - 0x39c], 0x100
jae 0x4a67dc
mov ecx, dword [ebp - 0x39c]
mov dl, byte [ebp - 0x39c]
mov byte [ebp + ecx - 0x93c], dl
jmp 0x4a67ac
mov dword [ebp - 0x4f0], 0
mov byte [ebp - 0x345], 0
mov dword [ebp - 0x39c], 0xff
jmp 0x4a6808
mov eax, dword [ebp - 0x39c]
sub eax, 1
mov dword [ebp - 0x39c], eax
cmp dword [ebp - 0x39c], 0
jbe 0x4a6a78
mov dword [ebp - 0x598], 0
mov dword [ebp - 0x564], 1
mov ecx, dword [ebp - 0x564]
cmp ecx, dword [ebp - 0x39c]
jae 0x4a6849
mov edx, dword [ebp - 0x564]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x564], eax
jmp 0x4a6829
mov ecx, dword [ebp - 0x4f0]
mov dword [ebp - 0x5f4], ecx
cmp dword [ebp - 0x5f4], 3
ja case.default.0x4a6868
mov edx, dword [ebp - 0x5f4]
jmp dword [edx*4 + 0x4a7f54]
movzx eax, byte [ebp - 0x345]
movzx ebx, byte [ebp + eax - 0x93c]
movsd xmm0, qword [ebp - 0x530]
call fcn.009e3680
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x345], bl
jmp 0x4a6951
movzx ecx, byte [ebp - 0x345]
movzx ebx, byte [ebp + ecx - 0x93c]
movsd xmm0, qword [ebp - 0x530]
call fcn.009e3680
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x345], bl
jmp 0x4a6951
movzx edx, byte [ebp - 0x345]
movzx ebx, byte [ebp + edx - 0x93c]
movsd xmm0, qword [ebp - 0x530]
call fcn.009e3680
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x345], bl
jmp 0x4a6951
movzx eax, byte [ebp - 0x345]
movzx ebx, byte [ebp + eax - 0x93c]
movsd xmm0, qword [ebp - 0x530]
call fcn.009e3680
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x345], bl
jmp 0x4a6951
movzx ecx, byte [ebp - 0x345]
movzx edx, byte [ebp + ecx - 0x93c]
mov eax, dword [ebp - 0x81c]
add eax, dword [ebp - 0x4f0]
movzx ecx, byte [eax - 4]
add edx, ecx
mov byte [ebp - 0x345], dl
mov edx, dword [ebp - 0x4f0]
add edx, 1
mov dword [ebp - 0x4f0], edx
movzx eax, byte [ebp - 0x47e]
cmp dword [ebp - 0x4f0], eax
jb 0x4a698f
mov dword [ebp - 0x4f0], 0
movzx ecx, byte [ebp - 0x47e]
movzx edx, byte [ebp - 0x345]
add edx, ecx
mov byte [ebp - 0x345], dl
movzx eax, byte [ebp - 0x345]
and eax, dword [ebp - 0x564]
mov dword [ebp - 0x4c0], eax
mov ecx, dword [ebp - 0x598]
add ecx, 1
mov dword [ebp - 0x598], ecx
cmp dword [ebp - 0x598], 0xb
jbe 0x4a69ce
mov eax, dword [ebp - 0x4c0]
xor edx, edx
div dword [ebp - 0x39c]
mov dword [ebp - 0x4c0], edx
mov edx, dword [ebp - 0x4c0]
cmp edx, dword [ebp - 0x39c]
ja 0x4a6849
mov eax, dword [ebp - 0x39c]
cmp eax, dword [ebp - 0x4c0]
je 0x4a6a73
mov ecx, dword [ebp - 0x4c0]
movzx edx, byte [ebp + ecx - 0x93c]
mov eax, dword [ebp - 0x39c]
movzx ecx, byte [ebp + eax - 0x93c]
xor ecx, edx
mov edx, dword [ebp - 0x39c]
mov byte [ebp + edx - 0x93c], cl
mov eax, dword [ebp - 0x39c]
movzx ecx, byte [ebp + eax - 0x93c]
mov edx, dword [ebp - 0x4c0]
movzx eax, byte [ebp + edx - 0x93c]
xor eax, ecx
mov ecx, dword [ebp - 0x4c0]
mov byte [ebp + ecx - 0x93c], al
mov edx, dword [ebp - 0x4c0]
movzx eax, byte [ebp + edx - 0x93c]
mov ecx, dword [ebp - 0x39c]
movzx edx, byte [ebp + ecx - 0x93c]
xor edx, eax
mov eax, dword [ebp - 0x39c]
mov byte [ebp + eax - 0x93c], dl
jmp 0x4a67f9
mov ecx, 1
shl ecx, 0
mov dl, byte [ebp + ecx - 0x93c]
mov byte [ebp - 0x335], dl
mov eax, 1
imul ecx, eax, 3
mov dl, byte [ebp + ecx - 0x93c]
mov byte [ebp - 0x336], dl
mov eax, 1
imul ecx, eax, 5
mov dl, byte [ebp + ecx - 0x93c]
mov byte [ebp - 0x342], dl
mov eax, 1
imul ecx, eax, 7
mov dl, byte [ebp + ecx - 0x93c]
mov byte [ebp - 0x337], dl
movzx eax, byte [ebp - 0x345]
mov cl, byte [ebp + eax - 0x93c]
mov byte [ebp - 0x33e], cl
mov dword [ebp - 0x5fc], 0x22
cmp dword [ebp - 0x5fc], 2
jle 0x4a7a3f
mov edx, dword [ebp - 0x5fc]
and edx, 1
jne 0x4a7a3f
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x420], 0
mov eax, dword [ebp - 0x420]
add eax, 1
mov dword [ebp - 0x420], eax
mov dword [ebp - 0x490], 0
mov ecx, dword [ebp - 0x368]
shl ecx, 1
mov dword [ebp - 0x490], ecx
mov dword [ebp - 0x47c], 0
mov edx, dword [ebp - 0x48c]
add edx, dword [ebp - 0x490]
movzx eax, byte [edx]
add eax, dword [ebp - 0x47c]
mov dword [ebp - 0x47c], eax
mov dword [ebp - 0x46c], 0
mov ecx, dword [ebp - 0x46c]
add ecx, 0x2f
mov dword [ebp - 0x46c], ecx
mov dword [ebp - 0x494], 0
mov edx, dword [ebp - 0x368]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x494], eax
mov dword [ebp - 0x470], 0
mov ecx, dword [ebp - 0x48c]
add ecx, dword [ebp - 0x494]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x470]
mov dword [ebp - 0x470], edx
mov dword [ebp - 0x474], 0
mov eax, dword [ebp - 0x474]
add eax, 0x90
mov dword [ebp - 0x474], eax
mov dword [ebp - 0x478], 0
mov ecx, dword [ebp - 0x47c]
sub ecx, dword [ebp - 0x46c]
add ecx, dword [ebp - 0x478]
mov dword [ebp - 0x478], ecx
mov dword [ebp - 0x488], 0
mov edx, dword [ebp - 0x470]
sub edx, dword [ebp - 0x474]
add edx, dword [ebp - 0x488]
mov dword [ebp - 0x488], edx
mov dword [ebp - 0x498], 0
mov eax, dword [ebp - 0x478]
shl eax, 4
mov dword [ebp - 0x498], eax
mov dword [ebp - 0x49c], 0
mov ecx, dword [ebp - 0x488]
mov dword [ebp - 0x49c], ecx
mov dword [ebp - 0x4a0], 0
mov edx, dword [ebp - 0x498]
or edx, dword [ebp - 0x49c]
mov dword [ebp - 0x4a0], edx
mov byte [ebp - 0x343], 0
mov al, byte [ebp - 0x4a0]
mov byte [ebp - 0x343], al
mov byte [ebp - 0x341], 0
movzx ecx, byte [ebp - 0x33e]
mov dl, byte [ebp + ecx - 0x93c]
mov byte [ebp - 0x341], dl
movzx eax, byte [ebp - 0x335]
movzx ecx, byte [ebp + eax - 0x93c]
movzx edx, byte [ebp - 0x336]
add edx, ecx
mov byte [ebp - 0x336], dl
mov al, byte [ebp - 0x335]
add al, 1
mov byte [ebp - 0x335], al
movzx ecx, byte [ebp - 0x336]
movzx edx, byte [ebp - 0x33e]
mov al, byte [ebp + ecx - 0x93c]
mov byte [ebp + edx - 0x93c], al
movzx ecx, byte [ebp - 0x337]
movzx edx, byte [ebp - 0x336]
mov al, byte [ebp + ecx - 0x93c]
mov byte [ebp + edx - 0x93c], al
movzx ecx, byte [ebp - 0x335]
movzx edx, byte [ebp - 0x337]
mov al, byte [ebp + ecx - 0x93c]
mov byte [ebp + edx - 0x93c], al
movzx ecx, byte [ebp - 0x335]
mov dl, byte [ebp - 0x341]
mov byte [ebp + ecx - 0x93c], dl
movzx eax, byte [ebp - 0x341]
movzx ecx, byte [ebp + eax - 0x93c]
movzx edx, byte [ebp - 0x342]
add edx, ecx
mov byte [ebp - 0x342], dl
movzx eax, byte [ebp - 0x343]
movzx ecx, byte [ebp - 0x336]
movzx edx, byte [ebp + ecx - 0x93c]
movzx ecx, byte [ebp - 0x335]
movzx ecx, byte [ebp + ecx - 0x93c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x93c]
xor eax, edx
movzx ecx, byte [ebp - 0x337]
movzx edx, byte [ebp + ecx - 0x93c]
movzx ecx, byte [ebp - 0x33e]
movzx ecx, byte [ebp + ecx - 0x93c]
add edx, ecx
movzx ecx, byte [ebp - 0x342]
movzx ecx, byte [ebp + ecx - 0x93c]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x93c]
movzx ecx, byte [ebp + edx - 0x93c]
xor eax, ecx
mov byte [ebp - 0x337], al
mov dl, byte [ebp - 0x343]
mov byte [ebp - 0x33e], dl
mov al, byte [ebp - 0x337]
mov byte [ebp - 0x355], al
cmp dword [ebp - 0x368], 0
jle 0x4a6e02
movsx cx, byte [ebp - 0x355]
mov edx, dword [ebp - 0x368]
mov word [ebp + edx*2 - 0x66], cx
mov eax, dword [ebp - 0x368]
add eax, 1
mov dword [ebp - 0x368], eax
mov ecx, dword [ebp - 0x420]
add ecx, 1
mov dword [ebp - 0x420], ecx
mov edx, dword [ebp - 0x368]
shl edx, 1
mov dword [ebp - 0x490], edx
mov eax, dword [ebp - 0x48c]
add eax, dword [ebp - 0x490]
movzx ecx, byte [eax]
mov dword [ebp - 0x47c], ecx
mov dword [ebp - 0x46c], 0x2f
mov edx, dword [ebp - 0x368]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x494], eax
mov ecx, dword [ebp - 0x48c]
add ecx, dword [ebp - 0x494]
movzx edx, byte [ecx]
mov dword [ebp - 0x470], edx
mov dword [ebp - 0x474], 0x90
mov eax, dword [ebp - 0x47c]
sub eax, dword [ebp - 0x46c]
mov dword [ebp - 0x478], eax
mov ecx, dword [ebp - 0x470]
sub ecx, dword [ebp - 0x474]
mov dword [ebp - 0x488], ecx
movss xmm0, dword [0xa61e00]
movss dword [ebp - 0x460], xmm0
movss xmm0, dword [0xa61db0]
movss dword [ebp - 0x3cc], xmm0
movss xmm0, dword [0xa61d50]
movss dword [ebp - 0x4ec], xmm0
movss xmm0, dword [0xa61cf0]
movss dword [ebp - 0x484], xmm0
movss xmm0, dword [0xa6025c]
movss dword [ebp - 0x600], xmm0
movss xmm0, dword [0xa61c28]
movss dword [ebp - 0x4c4], xmm0
movss xmm0, dword [ebp - 0x3cc]
mulss xmm0, dword [ebp - 0x4c4]
movss dword [ebp - 0x3cc], xmm0
movss xmm0, dword [ebp - 0x460]
subss xmm0, dword [ebp - 0x4c4]
movss dword [ebp - 0x460], xmm0
movss xmm0, dword [ebp - 0x460]
mulss xmm0, dword [ebp - 0x4c4]
movss dword [ebp - 0x460], xmm0
movss xmm0, dword [ebp - 0x4ec]
mulss xmm0, dword [ebp - 0x4c4]
movss dword [ebp - 0x4ec], xmm0
movss xmm0, dword [ebp - 0x600]
mulss xmm0, dword [ebp - 0x4c4]
movss dword [ebp - 0x600], xmm0
movss xmm0, dword [ebp - 0x484]
subss xmm0, dword [ebp - 0x4c4]
movss dword [ebp - 0x484], xmm0
movss xmm0, dword [ebp - 0x4c4]
comiss xmm0, dword [ebp - 0x3cc]
jbe 0x4a703a
movss xmm0, dword [ebp - 0x3cc]
divss xmm0, dword [ebp - 0x484]
movss dword [ebp - 0x3cc], xmm0
movss xmm0, dword [ebp - 0x3cc]
divss xmm0, dword [ebp - 0x484]
movss dword [ebp - 0x3cc], xmm0
movss xmm0, dword [ebp - 0x484]
mulss xmm0, dword [ebp - 0x4c4]
movss dword [ebp - 0x484], xmm0
movss xmm0, dword [ebp - 0x3cc]
subss xmm0, dword [ebp - 0x484]
movss dword [ebp - 0x3cc], xmm0
movss xmm0, dword [ebp - 0x3cc]
divss xmm0, dword [ebp - 0x484]
movss dword [ebp - 0x3cc], xmm0
movss xmm0, dword [ebp - 0x3cc]
subss xmm0, dword [ebp - 0x484]
movss dword [ebp - 0x3cc], xmm0
jmp 0x4a70d9
movss xmm0, dword [ebp - 0x3cc]
subss xmm0, dword [ebp - 0x484]
movss dword [ebp - 0x3cc], xmm0
movss xmm0, dword [ebp - 0x460]
addss xmm0, dword [ebp - 0x4ec]
movss dword [ebp - 0x460], xmm0
movss xmm0, dword [ebp - 0x460]
subss xmm0, dword [ebp - 0x4ec]
movss dword [ebp - 0x460], xmm0
movss xmm0, dword [ebp - 0x460]
subss xmm0, dword [ebp - 0x4ec]
movss dword [ebp - 0x460], xmm0
movss xmm0, dword [ebp - 0x460]
mulss xmm0, dword [ebp - 0x4ec]
movss dword [ebp - 0x460], xmm0
movss xmm0, dword [ebp - 0x3cc]
mulss xmm0, dword [ebp - 0x484]
movss dword [ebp - 0x3cc], xmm0
mov edx, dword [ebp - 0x478]
shl edx, 4
mov dword [ebp - 0x498], edx
mov eax, dword [ebp - 0x488]
mov dword [ebp - 0x49c], eax
mov ecx, dword [ebp - 0x498]
or ecx, dword [ebp - 0x49c]
mov dword [ebp - 0x4a0], ecx
mov dl, byte [ebp - 0x4a0]
mov byte [ebp - 0x343], dl
movzx eax, byte [ebp - 0x33e]
mov cl, byte [ebp + eax - 0x93c]
mov byte [ebp - 0x341], cl
movzx edx, byte [ebp - 0x335]
movzx eax, byte [ebp + edx - 0x93c]
movzx ecx, byte [ebp - 0x336]
add ecx, eax
mov byte [ebp - 0x336], cl
mov dl, byte [ebp - 0x335]
add dl, 1
mov byte [ebp - 0x335], dl
movzx eax, byte [ebp - 0x336]
movzx ecx, byte [ebp - 0x33e]
mov dl, byte [ebp + eax - 0x93c]
mov byte [ebp + ecx - 0x93c], dl
movzx eax, byte [ebp - 0x337]
movzx ecx, byte [ebp - 0x336]
mov dl, byte [ebp + eax - 0x93c]
mov byte [ebp + ecx - 0x93c], dl
movzx eax, byte [ebp - 0x335]
movzx ecx, byte [ebp - 0x337]
mov dl, byte [ebp + eax - 0x93c]
mov byte [ebp + ecx - 0x93c], dl
movzx eax, byte [ebp - 0x335]
mov cl, byte [ebp - 0x341]
mov byte [ebp + eax - 0x93c], cl
movzx edx, byte [ebp - 0x341]
movzx eax, byte [ebp + edx - 0x93c]
movzx ecx, byte [ebp - 0x342]
add ecx, eax
mov byte [ebp - 0x342], cl
movzx edx, byte [ebp - 0x343]
movzx eax, byte [ebp - 0x336]
movzx ecx, byte [ebp + eax - 0x93c]
movzx eax, byte [ebp - 0x335]
movzx eax, byte [ebp + eax - 0x93c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x93c]
xor edx, ecx
movzx eax, byte [ebp - 0x337]
movzx ecx, byte [ebp + eax - 0x93c]
movzx eax, byte [ebp - 0x33e]
movzx eax, byte [ebp + eax - 0x93c]
add ecx, eax
movzx eax, byte [ebp - 0x342]
movzx eax, byte [ebp + eax - 0x93c]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x93c]
movzx eax, byte [ebp + ecx - 0x93c]
xor edx, eax
mov byte [ebp - 0x337], dl
mov cl, byte [ebp - 0x343]
mov byte [ebp - 0x33e], cl
mov dl, byte [ebp - 0x337]
mov byte [ebp - 0x355], dl
cmp dword [ebp - 0x368], 0
jle 0x4a7284
movsx ax, byte [ebp - 0x355]
mov ecx, dword [ebp - 0x368]
mov word [ebp + ecx*2 - 0x66], ax
mov edx, dword [ebp - 0x420]
add edx, 7
mov dword [ebp - 0x420], edx
mov eax, dword [ebp - 0x368]
add eax, 1
mov dword [ebp - 0x59c], eax
jmp 0x4a72b3
mov ecx, dword [ebp - 0x59c]
add ecx, 1
mov dword [ebp - 0x59c], ecx
mov edx, dword [ebp - 0x59c]
cmp edx, dword [ebp - 0x420]
jge 0x4a7511
mov eax, dword [ebp - 0x368]
add eax, 1
mov dword [ebp - 0x368], eax
mov ecx, dword [ebp - 0x368]
shl ecx, 1
mov dword [ebp - 0x490], ecx
mov edx, dword [ebp - 0x48c]
add edx, dword [ebp - 0x490]
movzx eax, byte [edx]
mov dword [ebp - 0x47c], eax
mov dword [ebp - 0x46c], 0x2f
mov ecx, dword [ebp - 0x368]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x494], edx
mov eax, dword [ebp - 0x48c]
add eax, dword [ebp - 0x494]
movzx ecx, byte [eax]
mov dword [ebp - 0x470], ecx
mov dword [ebp - 0x474], 0x90
mov edx, dword [ebp - 0x47c]
sub edx, dword [ebp - 0x46c]
mov dword [ebp - 0x478], edx
mov eax, dword [ebp - 0x470]
sub eax, dword [ebp - 0x474]
mov dword [ebp - 0x488], eax
mov ecx, dword [ebp - 0x478]
shl ecx, 4
mov dword [ebp - 0x498], ecx
mov edx, dword [ebp - 0x488]
mov dword [ebp - 0x49c], edx
mov eax, dword [ebp - 0x498]
or eax, dword [ebp - 0x49c]
mov dword [ebp - 0x4a0], eax
mov cl, byte [ebp - 0x4a0]
mov byte [ebp - 0x343], cl
movzx edx, byte [ebp - 0x33e]
mov al, byte [ebp + edx - 0x93c]
mov byte [ebp - 0x341], al
movzx ecx, byte [ebp - 0x335]
movzx edx, byte [ebp + ecx - 0x93c]
movzx eax, byte [ebp - 0x336]
add eax, edx
mov byte [ebp - 0x336], al
mov cl, byte [ebp - 0x335]
add cl, 1
mov byte [ebp - 0x335], cl
movzx edx, byte [ebp - 0x336]
movzx eax, byte [ebp - 0x33e]
mov cl, byte [ebp + edx - 0x93c]
mov byte [ebp + eax - 0x93c], cl
movzx edx, byte [ebp - 0x337]
movzx eax, byte [ebp - 0x336]
mov cl, byte [ebp + edx - 0x93c]
mov byte [ebp + eax - 0x93c], cl
movzx edx, byte [ebp - 0x335]
movzx eax, byte [ebp - 0x337]
mov cl, byte [ebp + edx - 0x93c]
mov byte [ebp + eax - 0x93c], cl
movzx edx, byte [ebp - 0x335]
mov al, byte [ebp - 0x341]
mov byte [ebp + edx - 0x93c], al
movzx ecx, byte [ebp - 0x341]
movzx edx, byte [ebp + ecx - 0x93c]
movzx eax, byte [ebp - 0x342]
add eax, edx
mov byte [ebp - 0x342], al
movzx ecx, byte [ebp - 0x343]
movzx edx, byte [ebp - 0x336]
movzx eax, byte [ebp + edx - 0x93c]
movzx edx, byte [ebp - 0x335]
movzx edx, byte [ebp + edx - 0x93c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x93c]
xor ecx, eax
movzx edx, byte [ebp - 0x337]
movzx eax, byte [ebp + edx - 0x93c]
movzx edx, byte [ebp - 0x33e]
movzx edx, byte [ebp + edx - 0x93c]
add eax, edx
movzx edx, byte [ebp - 0x342]
movzx edx, byte [ebp + edx - 0x93c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x93c]
movzx edx, byte [ebp + eax - 0x93c]
xor ecx, edx
mov byte [ebp - 0x337], cl
mov al, byte [ebp - 0x343]
mov byte [ebp - 0x33e], al
mov cl, byte [ebp - 0x337]
mov byte [ebp - 0x355], cl
cmp dword [ebp - 0x368], 0
jle 0x4a750c
movsx dx, byte [ebp - 0x355]
mov eax, dword [ebp - 0x368]
mov word [ebp + eax*2 - 0x66], dx
jmp 0x4a72a4
mov ecx, dword [ebp - 0x420]
add ecx, 1
mov dword [ebp - 0x420], ecx
mov edx, dword [ebp - 0x420]
add edx, 7
mov dword [ebp - 0x420], edx
mov eax, dword [ebp - 0x368]
add eax, 1
mov dword [ebp - 0x5b8], eax
jmp 0x4a754f
mov ecx, dword [ebp - 0x5b8]
add ecx, 1
mov dword [ebp - 0x5b8], ecx
mov edx, dword [ebp - 0x5b8]
cmp edx, dword [ebp - 0x420]
jge 0x4a77ad
mov eax, dword [ebp - 0x368]
add eax, 1
mov dword [ebp - 0x368], eax
mov ecx, dword [ebp - 0x368]
shl ecx, 1
mov dword [ebp - 0x490], ecx
mov edx, dword [ebp - 0x48c]
add edx, dword [ebp - 0x490]
movzx eax, byte [edx]
mov dword [ebp - 0x47c], eax
mov dword [ebp - 0x46c], 0x2f
mov ecx, dword [ebp - 0x368]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x494], edx
mov eax, dword [ebp - 0x48c]
add eax, dword [ebp - 0x494]
movzx ecx, byte [eax]
mov dword [ebp - 0x470], ecx
mov dword [ebp - 0x474], 0x90
mov edx, dword [ebp - 0x47c]
sub edx, dword [ebp - 0x46c]
mov dword [ebp - 0x478], edx
mov eax, dword [ebp - 0x470]
sub eax, dword [ebp - 0x474]
mov dword [ebp - 0x488], eax
mov ecx, dword [ebp - 0x478]
shl ecx, 4
mov dword [ebp - 0x498], ecx
mov edx, dword [ebp - 0x488]
mov dword [ebp - 0x49c], edx
mov eax, dword [ebp - 0x498]
or eax, dword [ebp - 0x49c]
mov dword [ebp - 0x4a0], eax
mov cl, byte [ebp - 0x4a0]
mov byte [ebp - 0x343], cl
movzx edx, byte [ebp - 0x33e]
mov al, byte [ebp + edx - 0x93c]
mov byte [ebp - 0x341], al
movzx ecx, byte [ebp - 0x335]
movzx edx, byte [ebp + ecx - 0x93c]
movzx eax, byte [ebp - 0x336]
add eax, edx
mov byte [ebp - 0x336], al
mov cl, byte [ebp - 0x335]
add cl, 1
mov byte [ebp - 0x335], cl
movzx edx, byte [ebp - 0x336]
movzx eax, byte [ebp - 0x33e]
mov cl, byte [ebp + edx - 0x93c]
mov byte [ebp + eax - 0x93c], cl
movzx edx, byte [ebp - 0x337]
movzx eax, byte [ebp - 0x336]
mov cl, byte [ebp + edx - 0x93c]
mov byte [ebp + eax - 0x93c], cl
movzx edx, byte [ebp - 0x335]
movzx eax, byte [ebp - 0x337]
mov cl, byte [ebp + edx - 0x93c]
mov byte [ebp + eax - 0x93c], cl
movzx edx, byte [ebp - 0x335]
mov al, byte [ebp - 0x341]
mov byte [ebp + edx - 0x93c], al
movzx ecx, byte [ebp - 0x341]
movzx edx, byte [ebp + ecx - 0x93c]
movzx eax, byte [ebp - 0x342]
add eax, edx
mov byte [ebp - 0x342], al
movzx ecx, byte [ebp - 0x343]
movzx edx, byte [ebp - 0x336]
movzx eax, byte [ebp + edx - 0x93c]
movzx edx, byte [ebp - 0x335]
movzx edx, byte [ebp + edx - 0x93c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x93c]
xor ecx, eax
movzx edx, byte [ebp - 0x337]
movzx eax, byte [ebp + edx - 0x93c]
movzx edx, byte [ebp - 0x33e]
movzx edx, byte [ebp + edx - 0x93c]
add eax, edx
movzx edx, byte [ebp - 0x342]
movzx edx, byte [ebp + edx - 0x93c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x93c]
movzx edx, byte [ebp + eax - 0x93c]
xor ecx, edx
mov byte [ebp - 0x337], cl
mov al, byte [ebp - 0x343]
mov byte [ebp - 0x33e], al
mov cl, byte [ebp - 0x337]
mov byte [ebp - 0x355], cl
cmp dword [ebp - 0x368], 0
jle 0x4a77a8
movsx dx, byte [ebp - 0x355]
mov eax, dword [ebp - 0x368]
mov word [ebp + eax*2 - 0x66], dx
jmp 0x4a7540
mov ecx, dword [ebp - 0x420]
add ecx, 1
mov dword [ebp - 0x420], ecx
mov edx, dword [ebp - 0x368]
add edx, 1
mov dword [ebp - 0x368], edx
mov eax, dword [ebp - 0x420]
add eax, 1
mov dword [ebp - 0x420], eax
mov ecx, dword [ebp - 0x368]
shl ecx, 1
mov dword [ebp - 0x490], ecx
mov edx, dword [ebp - 0x48c]
add edx, dword [ebp - 0x490]
movzx eax, byte [edx]
mov dword [ebp - 0x47c], eax
mov dword [ebp - 0x46c], 0x2f
mov ecx, dword [ebp - 0x368]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x494], edx
mov eax, dword [ebp - 0x48c]
add eax, dword [ebp - 0x494]
movzx ecx, byte [eax]
mov dword [ebp - 0x470], ecx
mov dword [ebp - 0x474], 0x90
mov edx, dword [ebp - 0x47c]
sub edx, dword [ebp - 0x46c]
mov dword [ebp - 0x478], edx
mov eax, dword [ebp - 0x470]
sub eax, dword [ebp - 0x474]
mov dword [ebp - 0x488], eax
mov ecx, dword [ebp - 0x478]
shl ecx, 4
mov dword [ebp - 0x498], ecx
mov edx, dword [ebp - 0x488]
mov dword [ebp - 0x49c], edx
mov eax, dword [ebp - 0x498]
or eax, dword [ebp - 0x49c]
mov dword [ebp - 0x4a0], eax
mov cl, byte [ebp - 0x4a0]
mov byte [ebp - 0x343], cl
movzx edx, byte [ebp - 0x33e]
mov al, byte [ebp + edx - 0x93c]
mov byte [ebp - 0x341], al
movzx ecx, byte [ebp - 0x335]
movzx edx, byte [ebp + ecx - 0x93c]
movzx eax, byte [ebp - 0x336]
add eax, edx
mov byte [ebp - 0x336], al
mov cl, byte [ebp - 0x335]
add cl, 1
mov byte [ebp - 0x335], cl
movzx edx, byte [ebp - 0x336]
movzx eax, byte [ebp - 0x33e]
mov cl, byte [ebp + edx - 0x93c]
mov byte [ebp + eax - 0x93c], cl
movzx edx, byte [ebp - 0x337]
movzx eax, byte [ebp - 0x336]
mov cl, byte [ebp + edx - 0x93c]
mov byte [ebp + eax - 0x93c], cl
movzx edx, byte [ebp - 0x335]
movzx eax, byte [ebp - 0x337]
mov cl, byte [ebp + edx - 0x93c]
mov byte [ebp + eax - 0x93c], cl
movzx edx, byte [ebp - 0x335]
mov al, byte [ebp - 0x341]
mov byte [ebp + edx - 0x93c], al
movzx ecx, byte [ebp - 0x341]
movzx edx, byte [ebp + ecx - 0x93c]
movzx eax, byte [ebp - 0x342]
add eax, edx
mov byte [ebp - 0x342], al
movzx ecx, byte [ebp - 0x343]
movzx edx, byte [ebp - 0x336]
movzx eax, byte [ebp + edx - 0x93c]
movzx edx, byte [ebp - 0x335]
movzx edx, byte [ebp + edx - 0x93c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x93c]
xor ecx, eax
movzx edx, byte [ebp - 0x337]
movzx eax, byte [ebp + edx - 0x93c]
movzx edx, byte [ebp - 0x33e]
movzx edx, byte [ebp + edx - 0x93c]
add eax, edx
movzx edx, byte [ebp - 0x342]
movzx edx, byte [ebp + edx - 0x93c]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x93c]
movzx edx, byte [ebp + eax - 0x93c]
xor ecx, edx
mov byte [ebp - 0x337], cl
mov al, byte [ebp - 0x343]
mov byte [ebp - 0x33e], al
mov cl, byte [ebp - 0x337]
mov byte [ebp - 0x355], cl
cmp dword [ebp - 0x368], 0
jle 0x4a7a12
movsx dx, byte [ebp - 0x355]
mov eax, dword [ebp - 0x368]
mov word [ebp + eax*2 - 0x66], dx
mov ecx, 2
shl ecx, 4
mov dword [ebp - 0x610], ecx
cmp dword [ebp - 0x610], 0x22
jae 0x4a7a2b
jmp 0x4a7a30
call fcn.009e31a7
xor edx, edx
mov eax, dword [ebp - 0x610]
mov word [ebp + eax - 0x64], dx
jmp 0x4a7a90
mov dword [ebp - 0x55c], 0
jmp 0x4a7a5a
mov ecx, dword [ebp - 0x55c]
add ecx, 1
mov dword [ebp - 0x55c], ecx
cmp dword [ebp - 0x55c], 0x11
jge 0x4a7a90
mov edx, dword [ebp - 0x55c]
shl edx, 1
mov dword [ebp - 0x5d4], edx
cmp dword [ebp - 0x5d4], 0x22
jae 0x4a7a7c
jmp 0x4a7a81
call fcn.009e31a7
xor eax, eax
mov ecx, dword [ebp - 0x5d4]
mov word [ebp + ecx - 0x64], ax
jmp 0x4a7a4b
push 1
lea edx, [ebp - 0x64]
push edx
mov eax, dword [ebp - 0x324]
push eax
mov ecx, dword [ebp - 0x4e8]
call fcn.004c9c40
mov dword [ebp - 0x83c], eax
lea ecx, [ebp - 0x298]
push ecx
push 0
mov edx, dword [ebp - 0x4dc]
push edx
mov eax, dword [ebp - 0x56c]
push eax
mov ecx, dword [ebp - 0x4e8]
mov edx, dword [ecx + 0x10]
call edx
test eax, eax
je 0x4a7e70
mov eax, dword [ebp - 0x298]
shr eax, 2
mov dword [ebp - 0x5ac], eax
xor ecx, ecx
mov eax, dword [ebp - 0x5ac]
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.009e2e9c
add esp, 4
mov dword [ebp - 0x818], eax
mov eax, dword [ebp - 0x818]
mov dword [ebp - 0x4dc], eax
lea ecx, [ebp - 0x298]
push ecx
mov edx, dword [ebp - 0x5ac]
shl edx, 2
push edx
mov eax, dword [ebp - 0x4dc]
push eax
mov ecx, dword [ebp - 0x56c]
push ecx
mov edx, dword [ebp - 0x4e8]
mov eax, dword [edx + 0x10]
call eax
test eax, eax
je 0x4a7e2a
mov dword [ebp - 0x57c], 0
jmp 0x4a7b65
mov ecx, dword [ebp - 0x57c]
add ecx, 1
mov dword [ebp - 0x57c], ecx
mov edx, dword [ebp - 0x57c]
cmp edx, dword [ebp - 0x5ac]
jae 0x4a7e2a
push 0x104
lea eax, [ebp - 0x26c]
push eax
mov ecx, dword [ebp - 0x57c]
mov edx, dword [ebp - 0x4dc]
mov eax, dword [edx + ecx*4]
push eax
mov ecx, dword [ebp - 0x4e8]
mov edx, dword [ecx]
call edx
test eax, eax
je 0x4a7e25
lea eax, [ebp - 0x26c]
push eax
lea ecx, [ebp - 0x2c0]
call fcn.0046a030
mov byte [ebp - 4], 2
push fcn.00a384d8
lea ecx, [ebp - 0x94c]
push ecx
lea ecx, [ebp - 0x2c0]
call fcn.004876b0
mov edx, dword [eax]
push edx
lea eax, [ebp - 0x948]
push eax
lea ecx, [ebp - 0x2c0]
call fcn.004876e0
mov ecx, dword [eax]
push ecx
lea edx, [ebp - 0x964]
push edx
lea ecx, [ebp - 0x2c0]
call fcn.004876b0
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x960]
push ecx
call fcn.00469fe0
add esp, 0x14
lea ecx, [ebp - 0x5c1]
call fcn.004a0f80
push eax
lea edx, [ebp - 0x95c]
push edx
lea ecx, [ebp - 0x2c0]
call fcn.004876e0
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x958]
push ecx
lea ecx, [ebp - 0x2c0]
call fcn.004876b0
mov edx, dword [eax]
push edx
lea ecx, [ebp - 0x2d8]
call fcn.004a0f30
mov byte [ebp - 4], 3
push 0x5c
lea ecx, [ebp - 0x2d8]
call fcn.004d4e80
push eax
call fcn.00a36580
add esp, 8
mov dword [ebp - 0x5d8], eax
cmp dword [ebp - 0x5d8], 0
jne 0x4a7c9b
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2d8]
call fcn.0049d890
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2c0]
call fcn.0046a1a0
jmp 0x4a7b56
lea ecx, [ebp - 0x310]
call fcn.0049d2d0
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x2a8]
cdq
push 0
push 4
push edx
push eax
call fcn.009e3310
push eax
lea eax, [ebp - 0x294]
push eax
lea ecx, [ebp - 0x310]
call fcn.004a0ca0
mov ecx, dword [ebp - 0x5d8]
add ecx, 1
push ecx
lea ecx, [ebp - 0x97c]
call fcn.004a1070
mov byte [ebp - 4], 5
lea edx, [ebp - 0x97c]
push edx
lea ecx, [ebp - 0x310]
call fcn.004a0970
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x97c]
call fcn.0049d890
lea ecx, [ebp - 0x310]
call fcn.0049ebe0
mov dword [ebp - 0x4f8], 0
jmp 0x4a7d2f
mov eax, dword [ebp - 0x4f8]
add eax, 1
mov dword [ebp - 0x4f8], eax
lea ecx, [ebp - 0x2a4]
call fcn.0049cc00
cmp dword [ebp - 0x4f8], eax
jae 0x4a7df8
mov dword [ebp - 0x568], 0
jmp 0x4a7d61
mov ecx, dword [ebp - 0x568]
add ecx, 1
mov dword [ebp - 0x568], ecx
mov edx, dword [ebp - 0x4f8]
push edx
lea ecx, [ebp - 0x2a4]
call fcn.00494640
mov ecx, dword [eax]
add ecx, 4
call fcn.0049cc00
cmp dword [ebp - 0x568], eax
jae 0x4a7df3
lea ecx, [ebp - 0x310]
call fcn.004a0f80
push eax
mov eax, dword [ebp - 0x568]
push eax
mov ecx, dword [ebp - 0x4f8]
push ecx
lea ecx, [ebp - 0x2a4]
call fcn.00494640
mov ecx, dword [eax]
add ecx, 4
call fcn.00494640
mov ecx, dword [eax]
call fcn.004c9c10
mov byte [ebp - 0x4dd], al
movzx edx, byte [ebp - 0x4dd]
test edx, edx
je 0x4a7dee
mov eax, dword [ebp - 0x4f8]
push eax
lea ecx, [ebp - 0x2a4]
call fcn.00494640
mov ecx, dword [eax]
mov edx, dword [ebp - 0x5bc]
or edx, dword [ecx]
mov dword [ebp - 0x5bc], edx
jmp 0x4a7d52
jmp 0x4a7d20
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x310]
call fcn.004945f0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2d8]
call fcn.0049d890
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x2c0]
call fcn.0046a1a0
jmp 0x4a7b56
mov eax, dword [ebp - 0x4dc]
mov dword [ebp - 0x5dc], eax
mov ecx, dword [ebp - 0x5dc]
push ecx
call fcn.009e2ea5
add esp, 4
cmp dword [ebp - 0x5dc], 0
jne 0x4a7e5a
mov dword [ebp - 0x814], 0
jmp 0x4a7e70
mov dword [ebp - 0x4dc], 0x8123
mov edx, dword [ebp - 0x4dc]
mov dword [ebp - 0x814], edx
cmp dword [ebp - 0x83c], 0
je 0x4a7e91
push 0
lea eax, [ebp - 0x64]
push eax
mov ecx, dword [ebp - 0x324]
push ecx
mov ecx, dword [ebp - 0x4e8]
call fcn.004c9c40
mov dword [ebp - 0x5c8], 0x22
lea edx, [ebp - 0x64]
mov dword [ebp - 0x5a8], edx
cmp dword [ebp - 0x5c8], 0
je 0x4a7ed6
mov eax, dword [ebp - 0x5a8]
mov byte [eax], 0
mov ecx, dword [ebp - 0x5a8]
add ecx, 1
mov dword [ebp - 0x5a8], ecx
mov edx, dword [ebp - 0x5c8]
sub edx, 1
mov dword [ebp - 0x5c8], edx
jmp 0x4a7ea4
mov eax, dword [ebp - 0x56c]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [ebp - 0x2a4]
push ecx
call fcn.004ae0d0
add esp, 4
mov edx, dword [ebp - 0x5bc]
mov dword [ebp - 0x834], edx
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2a4]
call fcn.00494590
mov eax, dword [ebp - 0x834]
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.009e2c4a
mov esp, ebp
pop ebp
ret