Function at 0x4ce437
Capabilities:
Encrypt data using speck

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0xab87bb
mov eax, dword fs:[0]
push eax
sub esp, 0xa2c
mov eax, dword [0xaf908c]
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 byte [ebp - 0x45e], 0
mov dword [ebp - 0x334], 0
mov dword [ebp - 0x330], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x5a0], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x560], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x560], xmm0
jmp 0x4ce244
movsd xmm0, qword [ebp - 0x560]
addsd xmm0, qword [0xabcc00]
movsd qword [ebp - 0x560], xmm0
movsd xmm0, qword [0xabdde8]
comisd xmm0, xmmword [ebp - 0x560]
jbe 0x4ce2f5
movsd xmm0, qword [0xabdc08]
mulsd xmm0, qword [ebp - 0x560]
mulsd xmm0, qword [ebp - 0x560]
movsd xmm1, qword [ebp - 0x560]
mulsd xmm1, qword [ebp - 0x560]
subsd xmm0, xmm1
movsd xmm1, qword [0xabdaf8]
mulsd xmm1, qword [ebp - 0x560]
mulsd xmm1, qword [ebp - 0x560]
addsd xmm1, qword [0xabdb78]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x5a0]
movsd qword [ebp - 0x5a0], xmm0
movsd xmm0, qword [ebp - 0x5a0]
comisd xmm0, xmmword [0xabdbe8]
jbe 0x4ce2f0
movsd xmm0, qword [0xabda58]
mulsd xmm0, qword [ebp - 0x560]
movsd xmm1, qword [ebp - 0x5a0]
subsd xmm1, xmm0
movsd qword [ebp - 0x5a0], xmm1
jmp 0x4ce22c
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x5a0]
jbe 0x4ce335
invalid
inc edx
jge 0x4ce34c
push ecx
sub al, 0x78
xor eax, 0x29283d24
sub dword [ecx + 0x54], edi
insd dword es:[edi], dx
imul ebx, dword [edi + 0x7c], 0x31
dec ebx
shl ebx, 1
aam 0xe3
fcmovbe st(0), st(6)
xlatb
aam 0xd4
loop 0x4ce2fe
invalid
mov dword [ebp - 0x334], 0x4ce316
mov dword [ebp - 0x330], 0x4ce302
mov eax, dword [ebp - 0x334]
mov dword [ebp - 0x444], eax
mov ecx, dword [ebp - 0x330]
mov dword [ebp - 0x7dc], ecx
mov byte [ebp - 0x45d], 0x18
mov dword [ebp - 0x3ac], 0
jmp 0x4ce383
cld
invalid
mov edx, dword [ebp - 0x3ac]
add edx, 1
mov dword [ebp - 0x3ac], edx
cmp dword [ebp - 0x3ac], 0x100
jae 0x4ce3a4
mov eax, dword [ebp - 0x3ac]
mov cl, byte [ebp - 0x3ac]
mov byte [ebp + eax - 0x8f0], cl
jmp 0x4ce374
mov dword [ebp - 0x50c], 0
mov byte [ebp - 0x355], 0
mov dword [ebp - 0x3ac], 0xff
jmp 0x4ce3d0
mov edx, dword [ebp - 0x3ac]
sub edx, 1
mov dword [ebp - 0x3ac], edx
cmp dword [ebp - 0x3ac], 0
jbe 0x4ce640
mov dword [ebp - 0x5dc], 0
mov dword [ebp - 0x5c0], 1
mov eax, dword [ebp - 0x5c0]
cmp eax, dword [ebp - 0x3ac]
jae 0x4ce411
mov ecx, dword [ebp - 0x5c0]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x5c0], edx
jmp 0x4ce3f1
mov eax, dword [ebp - 0x50c]
mov dword [ebp - 0x638], eax
cmp dword [ebp - 0x638], 3
ja case.default.0x4ce430
mov ecx, dword [ebp - 0x638]
jmp dword [ecx*4 + 0x4d4990]
movzx edx, byte [ebp - 0x355]
movzx ebx, byte [ebp + edx - 0x8f0]
movsd xmm0, qword [ebp - 0x5a0]
call fcn.00a40f60
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x355], bl
jmp 0x4ce519
movzx eax, byte [ebp - 0x355]
movzx ebx, byte [ebp + eax - 0x8f0]
movsd xmm0, qword [ebp - 0x5a0]
call fcn.00a40f60
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x355], bl
jmp 0x4ce519
movzx ecx, byte [ebp - 0x355]
movzx ebx, byte [ebp + ecx - 0x8f0]
movsd xmm0, qword [ebp - 0x5a0]
call fcn.00a40f60
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x355], bl
jmp 0x4ce519
movzx edx, byte [ebp - 0x355]
movzx ebx, byte [ebp + edx - 0x8f0]
movsd xmm0, qword [ebp - 0x5a0]
call fcn.00a40f60
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x355], bl
jmp 0x4ce519
movzx eax, byte [ebp - 0x355]
movzx ecx, byte [ebp + eax - 0x8f0]
mov edx, dword [ebp - 0x7dc]
add edx, dword [ebp - 0x50c]
movzx eax, byte [edx - 4]
add ecx, eax
mov byte [ebp - 0x355], cl
mov ecx, dword [ebp - 0x50c]
add ecx, 1
mov dword [ebp - 0x50c], ecx
movzx edx, byte [ebp - 0x45d]
cmp dword [ebp - 0x50c], edx
jb 0x4ce557
mov dword [ebp - 0x50c], 0
movzx eax, byte [ebp - 0x45d]
movzx ecx, byte [ebp - 0x355]
add ecx, eax
mov byte [ebp - 0x355], cl
movzx edx, byte [ebp - 0x355]
and edx, dword [ebp - 0x5c0]
mov dword [ebp - 0x4c8], edx
mov eax, dword [ebp - 0x5dc]
add eax, 1
mov dword [ebp - 0x5dc], eax
cmp dword [ebp - 0x5dc], 0xb
jbe 0x4ce596
mov eax, dword [ebp - 0x4c8]
xor edx, edx
div dword [ebp - 0x3ac]
mov dword [ebp - 0x4c8], edx
mov ecx, dword [ebp - 0x4c8]
cmp ecx, dword [ebp - 0x3ac]
ja 0x4ce411
mov edx, dword [ebp - 0x3ac]
cmp edx, dword [ebp - 0x4c8]
je 0x4ce63b
mov eax, dword [ebp - 0x4c8]
movzx ecx, byte [ebp + eax - 0x8f0]
mov edx, dword [ebp - 0x3ac]
movzx eax, byte [ebp + edx - 0x8f0]
xor eax, ecx
mov ecx, dword [ebp - 0x3ac]
mov byte [ebp + ecx - 0x8f0], al
mov edx, dword [ebp - 0x3ac]
movzx eax, byte [ebp + edx - 0x8f0]
mov ecx, dword [ebp - 0x4c8]
movzx edx, byte [ebp + ecx - 0x8f0]
xor edx, eax
mov eax, dword [ebp - 0x4c8]
mov byte [ebp + eax - 0x8f0], dl
mov ecx, dword [ebp - 0x4c8]
movzx edx, byte [ebp + ecx - 0x8f0]
mov eax, dword [ebp - 0x3ac]
movzx ecx, byte [ebp + eax - 0x8f0]
xor ecx, edx
mov edx, dword [ebp - 0x3ac]
mov byte [ebp + edx - 0x8f0], cl
jmp 0x4ce3c1
mov eax, 1
shl eax, 0
mov cl, byte [ebp + eax - 0x8f0]
mov byte [ebp - 0x340], cl
mov edx, 1
imul eax, edx, 3
mov cl, byte [ebp + eax - 0x8f0]
mov byte [ebp - 0x342], cl
mov edx, 1
imul eax, edx, 5
mov cl, byte [ebp + eax - 0x8f0]
mov byte [ebp - 0x34d], cl
mov edx, 1
imul eax, edx, 7
mov cl, byte [ebp + eax - 0x8f0]
mov byte [ebp - 0x344], cl
movzx edx, byte [ebp - 0x355]
mov al, byte [ebp + edx - 0x8f0]
mov byte [ebp - 0x34a], al
mov dword [ebp - 0x63c], 0x1a
cmp dword [ebp - 0x63c], 2
jle 0x4cfabc
mov ecx, dword [ebp - 0x63c]
and ecx, 1
jne 0x4cfabc
mov dword [ebp - 0x364], 0
mov dword [ebp - 0x3b4], 0
mov edx, dword [ebp - 0x3b4]
add edx, 1
mov dword [ebp - 0x3b4], edx
mov dword [ebp - 0x42c], 0
mov eax, dword [ebp - 0x364]
shl eax, 1
mov dword [ebp - 0x42c], eax
mov dword [ebp - 0x3f8], 0
mov ecx, dword [ebp - 0x444]
add ecx, dword [ebp - 0x42c]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x3f8]
mov dword [ebp - 0x3f8], edx
mov dword [ebp - 0x3fc], 0
mov eax, dword [ebp - 0x3fc]
add eax, 0xce
mov dword [ebp - 0x3fc], eax
mov dword [ebp - 0x440], 0
mov ecx, dword [ebp - 0x364]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x440], edx
mov dword [ebp - 0x400], 0
mov eax, dword [ebp - 0x444]
add eax, dword [ebp - 0x440]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x400]
mov dword [ebp - 0x400], ecx
mov dword [ebp - 0x404], 0
mov edx, dword [ebp - 0x404]
add edx, 0xd4
mov dword [ebp - 0x404], edx
mov dword [ebp - 0x408], 0
mov eax, dword [ebp - 0x3f8]
sub eax, dword [ebp - 0x3fc]
add eax, dword [ebp - 0x408]
mov dword [ebp - 0x408], eax
mov dword [ebp - 0x40c], 0
mov ecx, dword [ebp - 0x400]
sub ecx, dword [ebp - 0x404]
add ecx, dword [ebp - 0x40c]
mov dword [ebp - 0x40c], ecx
mov dword [ebp - 0x43c], 0
mov edx, dword [ebp - 0x408]
shl edx, 4
mov dword [ebp - 0x43c], edx
mov dword [ebp - 0x438], 0
mov eax, dword [ebp - 0x40c]
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x434], 0
mov ecx, dword [ebp - 0x43c]
or ecx, dword [ebp - 0x438]
mov dword [ebp - 0x434], ecx
mov byte [ebp - 0x34c], 0
mov dl, byte [ebp - 0x434]
mov byte [ebp - 0x34c], dl
mov byte [ebp - 0x34e], 0
movzx eax, byte [ebp - 0x34a]
mov cl, byte [ebp + eax - 0x8f0]
mov byte [ebp - 0x34e], cl
movzx edx, byte [ebp - 0x340]
movzx eax, byte [ebp + edx - 0x8f0]
mov dword [ebp - 0x7e0], eax
mov cl, byte [ebp - 0x340]
add cl, 1
mov byte [ebp - 0x340], cl
movzx edx, byte [ebp - 0x342]
add edx, dword [ebp - 0x7e0]
mov byte [ebp - 0x342], dl
movss xmm0, dword [0xabe4c8]
movss dword [ebp - 0x3b0], xmm0
movss xmm0, dword [0xabe3f8]
movss dword [ebp - 0x3e0], xmm0
movss xmm0, dword [0xabe328]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x3e0]
mulss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x3e0], xmm0
movss xmm0, dword [ebp - 0x3b0]
mulss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x3b0], xmm0
movss xmm0, dword [ebp - 0x3b0]
mulss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x3b0], xmm0
movss xmm0, dword [ebp - 0x37c]
comiss xmm0, dword [ebp - 0x3b0]
jbe 0x4cea5a
movss xmm0, dword [ebp - 0x37c]
mulss xmm0, dword [ebp - 0x3b0]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x37c]
divss xmm0, dword [ebp - 0x3b0]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x37c]
addss xmm0, dword [ebp - 0x3b0]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x3b0]
mulss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x3b0], xmm0
movss xmm0, dword [ebp - 0x3e0]
divss xmm0, dword [ebp - 0x3b0]
movss dword [ebp - 0x3e0], xmm0
movss xmm0, dword [ebp - 0x3e0]
mulss xmm0, dword [ebp - 0x3b0]
movss dword [ebp - 0x3e0], xmm0
movss xmm0, dword [ebp - 0x37c]
comiss xmm0, dword [ebp - 0x3b0]
jbe 0x4cea10
movss xmm0, dword [ebp - 0x37c]
mulss xmm0, dword [ebp - 0x3e0]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x37c]
divss xmm0, dword [ebp - 0x3e0]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x3e0]
addss xmm0, dword [ebp - 0x3b0]
movss dword [ebp - 0x3e0], xmm0
jmp 0x4cea58
movss xmm0, dword [ebp - 0x3b0]
divss xmm0, dword [ebp - 0x3e0]
movss dword [ebp - 0x3b0], xmm0
movss xmm0, dword [ebp - 0x3e0]
subss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x3e0], xmm0
movss xmm0, dword [ebp - 0x3e0]
subss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x3e0], xmm0
jmp 0x4ceabe
movss xmm0, dword [ebp - 0x37c]
mulss xmm0, dword [ebp - 0x3b0]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x37c]
mulss xmm0, dword [ebp - 0x3b0]
movss dword [ebp - 0x37c], xmm0
movss xmm0, dword [ebp - 0x3e0]
subss xmm0, dword [ebp - 0x37c]
movss dword [ebp - 0x3e0], xmm0
movzx eax, byte [ebp - 0x342]
movzx ecx, byte [ebp - 0x34a]
mov dl, byte [ebp + eax - 0x8f0]
mov byte [ebp + ecx - 0x8f0], dl
movzx eax, byte [ebp - 0x344]
movzx ecx, byte [ebp - 0x342]
mov dl, byte [ebp + eax - 0x8f0]
mov byte [ebp + ecx - 0x8f0], dl
movzx eax, byte [ebp - 0x340]
movzx ecx, byte [ebp - 0x344]
mov dl, byte [ebp + eax - 0x8f0]
mov byte [ebp + ecx - 0x8f0], dl
movzx eax, byte [ebp - 0x340]
mov cl, byte [ebp - 0x34e]
mov byte [ebp + eax - 0x8f0], cl
movzx edx, byte [ebp - 0x34e]
movzx eax, byte [ebp + edx - 0x8f0]
movzx ecx, byte [ebp - 0x34d]
add ecx, eax
mov byte [ebp - 0x34d], cl
movzx edx, byte [ebp - 0x34c]
movzx eax, byte [ebp - 0x342]
movzx ecx, byte [ebp + eax - 0x8f0]
movzx eax, byte [ebp - 0x340]
movzx eax, byte [ebp + eax - 0x8f0]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x8f0]
xor edx, ecx
movzx eax, byte [ebp - 0x344]
movzx ecx, byte [ebp + eax - 0x8f0]
movzx eax, byte [ebp - 0x34a]
movzx eax, byte [ebp + eax - 0x8f0]
add ecx, eax
movzx eax, byte [ebp - 0x34d]
movzx eax, byte [ebp + eax - 0x8f0]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x8f0]
movzx eax, byte [ebp + ecx - 0x8f0]
xor edx, eax
mov byte [ebp - 0x344], dl
mov cl, byte [ebp - 0x34c]
mov byte [ebp - 0x34a], cl
mov dl, byte [ebp - 0x344]
mov byte [ebp - 0x35d], dl
cmp dword [ebp - 0x364], 0
jle 0x4cebe5
movsx ax, byte [ebp - 0x35d]
mov ecx, dword [ebp - 0x364]
mov word [ebp + ecx*2 - 0xa16], ax
mov edx, dword [ebp - 0x3b4]
add edx, 4
mov dword [ebp - 0x3b4], edx
mov eax, dword [ebp - 0x364]
add eax, 1
mov dword [ebp - 0x5e0], eax
jmp 0x4cec14
mov ecx, dword [ebp - 0x5e0]
add ecx, 1
mov dword [ebp - 0x5e0], ecx
mov edx, dword [ebp - 0x5e0]
cmp edx, dword [ebp - 0x3b4]
jge 0x4cee7e
mov eax, dword [ebp - 0x364]
add eax, 1
mov dword [ebp - 0x364], eax
mov ecx, dword [ebp - 0x364]
shl ecx, 1
mov dword [ebp - 0x42c], ecx
mov edx, dword [ebp - 0x444]
add edx, dword [ebp - 0x42c]
movzx eax, byte [edx]
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3fc], 0xce
mov ecx, dword [ebp - 0x364]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x440], edx
mov eax, dword [ebp - 0x444]
add eax, dword [ebp - 0x440]
movzx ecx, byte [eax]
mov dword [ebp - 0x400], ecx
mov dword [ebp - 0x404], 0xd4
mov edx, dword [ebp - 0x3f8]
sub edx, dword [ebp - 0x3fc]
mov dword [ebp - 0x408], edx
mov eax, dword [ebp - 0x400]
sub eax, dword [ebp - 0x404]
mov dword [ebp - 0x40c], eax
mov ecx, dword [ebp - 0x408]
shl ecx, 4
mov dword [ebp - 0x43c], ecx
mov edx, dword [ebp - 0x40c]
mov dword [ebp - 0x438], edx
mov eax, dword [ebp - 0x43c]
or eax, dword [ebp - 0x438]
mov dword [ebp - 0x434], eax
mov cl, byte [ebp - 0x434]
mov byte [ebp - 0x34c], cl
movzx edx, byte [ebp - 0x34a]
mov al, byte [ebp + edx - 0x8f0]
mov byte [ebp - 0x34e], al
movzx ecx, byte [ebp - 0x340]
movzx edx, byte [ebp + ecx - 0x8f0]
mov dword [ebp - 0x7e4], edx
mov al, byte [ebp - 0x340]
add al, 1
mov byte [ebp - 0x340], al
movzx ecx, byte [ebp - 0x342]
add ecx, dword [ebp - 0x7e4]
mov byte [ebp - 0x342], cl
movzx edx, byte [ebp - 0x342]
movzx eax, byte [ebp - 0x34a]
mov cl, byte [ebp + edx - 0x8f0]
mov byte [ebp + eax - 0x8f0], cl
movzx edx, byte [ebp - 0x344]
movzx eax, byte [ebp - 0x342]
mov cl, byte [ebp + edx - 0x8f0]
mov byte [ebp + eax - 0x8f0], cl
movzx edx, byte [ebp - 0x340]
movzx eax, byte [ebp - 0x344]
mov cl, byte [ebp + edx - 0x8f0]
mov byte [ebp + eax - 0x8f0], cl
movzx edx, byte [ebp - 0x340]
mov al, byte [ebp - 0x34e]
mov byte [ebp + edx - 0x8f0], al
movzx ecx, byte [ebp - 0x34e]
movzx edx, byte [ebp + ecx - 0x8f0]
movzx eax, byte [ebp - 0x34d]
add eax, edx
mov byte [ebp - 0x34d], al
movzx ecx, byte [ebp - 0x34c]
movzx edx, byte [ebp - 0x342]
movzx eax, byte [ebp + edx - 0x8f0]
movzx edx, byte [ebp - 0x340]
movzx edx, byte [ebp + edx - 0x8f0]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x8f0]
xor ecx, eax
movzx edx, byte [ebp - 0x344]
movzx eax, byte [ebp + edx - 0x8f0]
movzx edx, byte [ebp - 0x34a]
movzx edx, byte [ebp + edx - 0x8f0]
add eax, edx
movzx edx, byte [ebp - 0x34d]
movzx edx, byte [ebp + edx - 0x8f0]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x8f0]
movzx edx, byte [ebp + eax - 0x8f0]
xor ecx, edx
mov byte [ebp - 0x344], cl
mov al, byte [ebp - 0x34c]
mov byte [ebp - 0x34a], al
mov cl, byte [ebp - 0x344]
mov byte [ebp - 0x35d], cl
cmp dword [ebp - 0x364], 0
jle 0x4cee79
movsx dx, byte [ebp - 0x35d]
mov eax, dword [ebp - 0x364]
mov word [ebp + eax*2 - 0xa16], dx
jmp 0x4cec05
mov ecx, dword [ebp - 0x3b4]
add ecx, 1
mov dword [ebp - 0x3b4], ecx
mov edx, dword [ebp - 0x364]
add edx, 1
mov dword [ebp - 0x364], edx
mov eax, dword [ebp - 0x3b4]
add eax, 1
mov dword [ebp - 0x3b4], eax
mov ecx, dword [ebp - 0x364]
shl ecx, 1
mov dword [ebp - 0x42c], ecx
mov edx, dword [ebp - 0x444]
add edx, dword [ebp - 0x42c]
movzx eax, byte [edx]
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3fc], 0xce
mov ecx, dword [ebp - 0x364]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x440], edx
mov eax, dword [ebp - 0x444]
add eax, dword [ebp - 0x440]
movzx ecx, byte [eax]
mov dword [ebp - 0x400], ecx
mov dword [ebp - 0x404], 0xd4
mov edx, dword [ebp - 0x3f8]
sub edx, dword [ebp - 0x3fc]
mov dword [ebp - 0x408], edx
mov eax, dword [ebp - 0x400]
sub eax, dword [ebp - 0x404]
mov dword [ebp - 0x40c], eax
mov ecx, dword [ebp - 0x408]
shl ecx, 4
mov dword [ebp - 0x43c], ecx
mov edx, dword [ebp - 0x40c]
mov dword [ebp - 0x438], edx
mov eax, dword [ebp - 0x43c]
or eax, dword [ebp - 0x438]
mov dword [ebp - 0x434], eax
mov cl, byte [ebp - 0x434]
mov byte [ebp - 0x34c], cl
movzx edx, byte [ebp - 0x34a]
mov al, byte [ebp + edx - 0x8f0]
mov byte [ebp - 0x34e], al
movzx ecx, byte [ebp - 0x340]
movzx edx, byte [ebp + ecx - 0x8f0]
mov dword [ebp - 0x7e8], edx
mov al, byte [ebp - 0x340]
add al, 1
mov byte [ebp - 0x340], al
movzx ecx, byte [ebp - 0x342]
add ecx, dword [ebp - 0x7e8]
mov byte [ebp - 0x342], cl
movzx edx, byte [ebp - 0x342]
movzx eax, byte [ebp - 0x34a]
mov cl, byte [ebp + edx - 0x8f0]
mov byte [ebp + eax - 0x8f0], cl
movzx edx, byte [ebp - 0x344]
movzx eax, byte [ebp - 0x342]
mov cl, byte [ebp + edx - 0x8f0]
mov byte [ebp + eax - 0x8f0], cl
movzx edx, byte [ebp - 0x340]
movzx eax, byte [ebp - 0x344]
mov cl, byte [ebp + edx - 0x8f0]
mov byte [ebp + eax - 0x8f0], cl
movzx edx, byte [ebp - 0x340]
mov al, byte [ebp - 0x34e]
mov byte [ebp + edx - 0x8f0], al
movzx ecx, byte [ebp - 0x34e]
movzx edx, byte [ebp + ecx - 0x8f0]
movzx eax, byte [ebp - 0x34d]
add eax, edx
mov byte [ebp - 0x34d], al
movzx ecx, byte [ebp - 0x34c]
movzx edx, byte [ebp - 0x342]
movzx eax, byte [ebp + edx - 0x8f0]
movzx edx, byte [ebp - 0x340]
movzx edx, byte [ebp + edx - 0x8f0]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x8f0]
xor ecx, eax
movzx edx, byte [ebp - 0x344]
movzx eax, byte [ebp + edx - 0x8f0]
movzx edx, byte [ebp - 0x34a]
movzx edx, byte [ebp + edx - 0x8f0]
add eax, edx
movzx edx, byte [ebp - 0x34d]
movzx edx, byte [ebp + edx - 0x8f0]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x8f0]
movzx edx, byte [ebp + eax - 0x8f0]
xor ecx, edx
mov byte [ebp - 0x344], cl
mov al, byte [ebp - 0x34c]
mov byte [ebp - 0x34a], al
mov cl, byte [ebp - 0x344]
mov byte [ebp - 0x35d], cl
cmp dword [ebp - 0x364], 0
jle 0x4cf0ef
movsx dx, byte [ebp - 0x35d]
mov eax, dword [ebp - 0x364]
mov word [ebp + eax*2 - 0xa16], dx
mov ecx, dword [ebp - 0x364]
add ecx, 1
mov dword [ebp - 0x364], ecx
mov edx, dword [ebp - 0x3b4]
add edx, 1
mov dword [ebp - 0x3b4], edx
mov eax, dword [ebp - 0x364]
shl eax, 1
mov dword [ebp - 0x42c], eax
mov ecx, dword [ebp - 0x444]
add ecx, dword [ebp - 0x42c]
movzx edx, byte [ecx]
mov dword [ebp - 0x3f8], edx
mov dword [ebp - 0x3fc], 0xce
mov eax, dword [ebp - 0x364]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x440], ecx
mov edx, dword [ebp - 0x444]
add edx, dword [ebp - 0x440]
movzx eax, byte [edx]
mov dword [ebp - 0x400], eax
mov dword [ebp - 0x404], 0xd4
mov ecx, dword [ebp - 0x3f8]
sub ecx, dword [ebp - 0x3fc]
mov dword [ebp - 0x408], ecx
mov edx, dword [ebp - 0x400]
sub edx, dword [ebp - 0x404]
mov dword [ebp - 0x40c], edx
mov eax, dword [ebp - 0x408]
shl eax, 4
mov dword [ebp - 0x43c], eax
mov ecx, dword [ebp - 0x40c]
mov dword [ebp - 0x438], ecx
mov edx, dword [ebp - 0x43c]
or edx, dword [ebp - 0x438]
mov dword [ebp - 0x434], edx
mov al, byte [ebp - 0x434]
mov byte [ebp - 0x34c], al
movzx ecx, byte [ebp - 0x34a]
mov dl, byte [ebp + ecx - 0x8f0]
mov byte [ebp - 0x34e], dl
movzx eax, byte [ebp - 0x340]
movzx ecx, byte [ebp + eax - 0x8f0]
mov dword [ebp - 0x7ec], ecx
mov dl, byte [ebp - 0x340]
add dl, 1
mov byte [ebp - 0x340], dl
movzx eax, byte [ebp - 0x342]
add eax, dword [ebp - 0x7ec]
mov byte [ebp - 0x342], al
movzx ecx, byte [ebp - 0x342]
movzx edx, byte [ebp - 0x34a]
mov al, byte [ebp + ecx - 0x8f0]
mov byte [ebp + edx - 0x8f0], al
movzx ecx, byte [ebp - 0x344]
movzx edx, byte [ebp - 0x342]
mov al, byte [ebp + ecx - 0x8f0]
mov byte [ebp + edx - 0x8f0], al
movzx ecx, byte [ebp - 0x340]
movzx edx, byte [ebp - 0x344]
mov al, byte [ebp + ecx - 0x8f0]
mov byte [ebp + edx - 0x8f0], al
movzx ecx, byte [ebp - 0x340]
mov dl, byte [ebp - 0x34e]
mov byte [ebp + ecx - 0x8f0], dl
movzx eax, byte [ebp - 0x34e]
movzx ecx, byte [ebp + eax - 0x8f0]
movzx edx, byte [ebp - 0x34d]
add edx, ecx
mov byte [ebp - 0x34d], dl
movzx eax, byte [ebp - 0x34c]
movzx ecx, byte [ebp - 0x342]
movzx edx, byte [ebp + ecx - 0x8f0]
movzx ecx, byte [ebp - 0x340]
movzx ecx, byte [ebp + ecx - 0x8f0]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x8f0]
xor eax, edx
movzx ecx, byte [ebp - 0x344]
movzx edx, byte [ebp + ecx - 0x8f0]
movzx ecx, byte [ebp - 0x34a]
movzx ecx, byte [ebp + ecx - 0x8f0]
add edx, ecx
movzx ecx, byte [ebp - 0x34d]
movzx ecx, byte [ebp + ecx - 0x8f0]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x8f0]
movzx ecx, byte [ebp + edx - 0x8f0]
xor eax, ecx
mov byte [ebp - 0x344], al
mov dl, byte [ebp - 0x34c]
mov byte [ebp - 0x34a], dl
mov al, byte [ebp - 0x344]
mov byte [ebp - 0x35d], al
cmp dword [ebp - 0x364], 0
jle 0x4cf354
movsx cx, byte [ebp - 0x35d]
mov edx, dword [ebp - 0x364]
mov word [ebp + edx*2 - 0xa16], cx
mov eax, dword [ebp - 0x364]
add eax, 1
mov dword [ebp - 0x364], eax
mov ecx, dword [ebp - 0x3b4]
add ecx, 1
mov dword [ebp - 0x3b4], ecx
mov edx, dword [ebp - 0x364]
shl edx, 1
mov dword [ebp - 0x42c], edx
mov eax, dword [ebp - 0x444]
add eax, dword [ebp - 0x42c]
movzx ecx, byte [eax]
mov dword [ebp - 0x3f8], ecx
mov dword [ebp - 0x3fc], 0xce
mov edx, dword [ebp - 0x364]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x440], eax
mov ecx, dword [ebp - 0x444]
add ecx, dword [ebp - 0x440]
movzx edx, byte [ecx]
mov dword [ebp - 0x400], edx
mov dword [ebp - 0x404], 0xd4
mov eax, dword [ebp - 0x3f8]
sub eax, dword [ebp - 0x3fc]
mov dword [ebp - 0x408], eax
mov ecx, dword [ebp - 0x400]
sub ecx, dword [ebp - 0x404]
mov dword [ebp - 0x40c], ecx
mov edx, dword [ebp - 0x408]
shl edx, 4
mov dword [ebp - 0x43c], edx
mov eax, dword [ebp - 0x40c]
mov dword [ebp - 0x438], eax
mov ecx, dword [ebp - 0x43c]
or ecx, dword [ebp - 0x438]
mov dword [ebp - 0x434], ecx
mov dl, byte [ebp - 0x434]
mov byte [ebp - 0x34c], dl
movzx eax, byte [ebp - 0x34a]
mov cl, byte [ebp + eax - 0x8f0]
mov byte [ebp - 0x34e], cl
movzx edx, byte [ebp - 0x340]
movzx eax, byte [ebp + edx - 0x8f0]
mov dword [ebp - 0x7d0], eax
mov cl, byte [ebp - 0x340]
add cl, 1
mov byte [ebp - 0x340], cl
movzx edx, byte [ebp - 0x342]
add edx, dword [ebp - 0x7d0]
mov byte [ebp - 0x342], dl
movzx eax, byte [ebp - 0x342]
movzx ecx, byte [ebp - 0x34a]
mov dl, byte [ebp + eax - 0x8f0]
mov byte [ebp + ecx - 0x8f0], dl
movzx eax, byte [ebp - 0x344]
movzx ecx, byte [ebp - 0x342]
mov dl, byte [ebp + eax - 0x8f0]
mov byte [ebp + ecx - 0x8f0], dl
movzx eax, byte [ebp - 0x340]
movzx ecx, byte [ebp - 0x344]
mov dl, byte [ebp + eax - 0x8f0]
mov byte [ebp + ecx - 0x8f0], dl
movzx eax, byte [ebp - 0x340]
mov cl, byte [ebp - 0x34e]
mov byte [ebp + eax - 0x8f0], cl
movzx edx, byte [ebp - 0x34e]
movzx eax, byte [ebp + edx - 0x8f0]
movzx ecx, byte [ebp - 0x34d]
add ecx, eax
mov byte [ebp - 0x34d], cl
movzx edx, byte [ebp - 0x34c]
movzx eax, byte [ebp - 0x342]
movzx ecx, byte [ebp + eax - 0x8f0]
movzx eax, byte [ebp - 0x340]
movzx eax, byte [ebp + eax - 0x8f0]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x8f0]
xor edx, ecx
movzx eax, byte [ebp - 0x344]
movzx ecx, byte [ebp + eax - 0x8f0]
movzx eax, byte [ebp - 0x34a]
movzx eax, byte [ebp + eax - 0x8f0]
add ecx, eax
movzx eax, byte [ebp - 0x34d]
movzx eax, byte [ebp + eax - 0x8f0]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x8f0]
movzx eax, byte [ebp + ecx - 0x8f0]
xor edx, eax
mov byte [ebp - 0x344], dl
mov cl, byte [ebp - 0x34c]
mov byte [ebp - 0x34a], cl
mov dl, byte [ebp - 0x344]
mov byte [ebp - 0x35d], dl
cmp dword [ebp - 0x364], 0
jle 0x4cf5b9
movsx ax, byte [ebp - 0x35d]
mov ecx, dword [ebp - 0x364]
mov word [ebp + ecx*2 - 0xa16], ax
mov edx, dword [ebp - 0x3b4]
add edx, 5
mov dword [ebp - 0x3b4], edx
mov eax, dword [ebp - 0x364]
add eax, 1
mov dword [ebp - 0x5d4], eax
jmp 0x4cf5e8
mov ecx, dword [ebp - 0x5d4]
add ecx, 1
mov dword [ebp - 0x5d4], ecx
mov edx, dword [ebp - 0x5d4]
cmp edx, dword [ebp - 0x3b4]
jge 0x4cfa7d
mov eax, dword [ebp - 0x364]
add eax, 1
mov dword [ebp - 0x364], eax
mov ecx, dword [ebp - 0x364]
shl ecx, 1
mov dword [ebp - 0x42c], ecx
mov edx, dword [ebp - 0x444]
add edx, dword [ebp - 0x42c]
movzx eax, byte [edx]
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3fc], 0xce
mov ecx, dword [ebp - 0x364]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x440], edx
mov eax, dword [ebp - 0x444]
add eax, dword [ebp - 0x440]
movzx ecx, byte [eax]
mov dword [ebp - 0x400], ecx
mov dword [ebp - 0x404], 0xd4
mov edx, dword [ebp - 0x3f8]
sub edx, dword [ebp - 0x3fc]
mov dword [ebp - 0x408], edx
mov eax, dword [ebp - 0x400]
sub eax, dword [ebp - 0x404]
mov dword [ebp - 0x40c], eax
mov ecx, dword [ebp - 0x408]
shl ecx, 4
mov dword [ebp - 0x43c], ecx
mov edx, dword [ebp - 0x40c]
mov dword [ebp - 0x438], edx
mov eax, dword [ebp - 0x43c]
or eax, dword [ebp - 0x438]
mov dword [ebp - 0x434], eax
mov cl, byte [ebp - 0x434]
mov byte [ebp - 0x34c], cl
movzx edx, byte [ebp - 0x34a]
mov al, byte [ebp + edx - 0x8f0]
mov byte [ebp - 0x34e], al
movzx ecx, byte [ebp - 0x340]
movzx edx, byte [ebp + ecx - 0x8f0]
mov dword [ebp - 0x7f0], edx
mov al, byte [ebp - 0x340]
add al, 1
mov byte [ebp - 0x340], al
movzx ecx, byte [ebp - 0x342]
add ecx, dword [ebp - 0x7f0]
mov byte [ebp - 0x342], cl
movzx edx, byte [ebp - 0x342]
movzx eax, byte [ebp - 0x34a]
mov cl, byte [ebp + edx - 0x8f0]
mov byte [ebp + eax - 0x8f0], cl
movzx edx, byte [ebp - 0x344]
movzx eax, byte [ebp - 0x342]
mov cl, byte [ebp + edx - 0x8f0]
mov byte [ebp + eax - 0x8f0], cl
movzx edx, byte [ebp - 0x340]
movzx eax, byte [ebp - 0x344]
mov cl, byte [ebp + edx - 0x8f0]
mov byte [ebp + eax - 0x8f0], cl
movsd xmm0, qword [0xabe270]
movsd qword [ebp - 0x4d0], xmm0
movsd xmm0, qword [0xabe1d0]
movsd qword [ebp - 0x568], xmm0
movsd xmm0, qword [0xabe100]
movsd qword [ebp - 0x604], xmm0
movsd xmm0, qword [0xabdfd0]
movsd qword [ebp - 0x5d0], xmm0
movsd xmm0, qword [0xabdeb8]
movsd qword [ebp - 0x9f8], xmm0
movsd xmm0, qword [0xabdd18]
movsd qword [ebp - 0x524], xmm0
movsd xmm0, qword [ebp - 0x5d0]
mulsd xmm0, qword [ebp - 0x524]
movsd qword [ebp - 0x5d0], xmm0
movsd xmm0, qword [ebp - 0x9f8]
mulsd xmm0, qword [ebp - 0x524]
movsd qword [ebp - 0x9f8], xmm0
movsd xmm0, qword [ebp - 0x568]
mulsd xmm0, qword [ebp - 0x524]
movsd qword [ebp - 0x568], xmm0
movsd xmm0, qword [ebp - 0x5d0]
mulsd xmm0, qword [ebp - 0x524]
movsd qword [ebp - 0x5d0], xmm0
movsd xmm0, qword [ebp - 0x4d0]
subsd xmm0, qword [ebp - 0x524]
movsd qword [ebp - 0x4d0], xmm0
movsd xmm0, qword [ebp - 0x4d0]
mulsd xmm0, qword [ebp - 0x524]
movsd qword [ebp - 0x4d0], xmm0
movsd xmm0, qword [ebp - 0x5d0]
comisd xmm0, xmmword [ebp - 0x524]
jbe 0x4cf90f
movsd xmm0, qword [ebp - 0x524]
mulsd xmm0, qword [ebp - 0x4d0]
movsd qword [ebp - 0x524], xmm0
movsd xmm0, qword [ebp - 0x568]
mulsd xmm0, qword [ebp - 0x604]
movsd qword [ebp - 0x568], xmm0
movsd xmm0, qword [ebp - 0x568]
subsd xmm0, qword [ebp - 0x604]
movsd qword [ebp - 0x568], xmm0
movsd xmm0, qword [ebp - 0x568]
mulsd xmm0, qword [ebp - 0x604]
movsd qword [ebp - 0x568], xmm0
movsd xmm0, qword [ebp - 0x524]
addsd xmm0, qword [ebp - 0x4d0]
movsd qword [ebp - 0x524], xmm0
movsd xmm0, qword [ebp - 0x4d0]
addsd xmm0, qword [ebp - 0x568]
movsd qword [ebp - 0x4d0], xmm0
movzx edx, byte [ebp - 0x340]
mov al, byte [ebp - 0x34e]
mov byte [ebp + edx - 0x8f0], al
jmp 0x4cf99f
movsd xmm0, qword [ebp - 0x4d0]
mulsd xmm0, qword [ebp - 0x604]
movsd qword [ebp - 0x4d0], xmm0
movsd xmm0, qword [ebp - 0x4d0]
divsd xmm0, qword [ebp - 0x604]
movsd qword [ebp - 0x4d0], xmm0
movsd xmm0, qword [ebp - 0x4d0]
mulsd xmm0, qword [ebp - 0x604]
movsd qword [ebp - 0x4d0], xmm0
movsd xmm0, qword [ebp - 0x4d0]
divsd xmm0, qword [ebp - 0x604]
movsd qword [ebp - 0x4d0], xmm0
movsd xmm0, qword [ebp - 0x568]
addsd xmm0, qword [ebp - 0x5d0]
movsd qword [ebp - 0x568], xmm0
movsd xmm0, qword [ebp - 0x5d0]
subsd xmm0, qword [ebp - 0x524]
movsd qword [ebp - 0x5d0], xmm0
movzx ecx, byte [ebp - 0x34e]
movzx edx, byte [ebp + ecx - 0x8f0]
movzx eax, byte [ebp - 0x34d]
add eax, edx
mov byte [ebp - 0x34d], al
movzx ecx, byte [ebp - 0x34c]
movzx edx, byte [ebp - 0x342]
movzx eax, byte [ebp + edx - 0x8f0]
movzx edx, byte [ebp - 0x340]
movzx edx, byte [ebp + edx - 0x8f0]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x8f0]
xor ecx, eax
movzx edx, byte [ebp - 0x344]
movzx eax, byte [ebp + edx - 0x8f0]
movzx edx, byte [ebp - 0x34a]
movzx edx, byte [ebp + edx - 0x8f0]
add eax, edx
movzx edx, byte [ebp - 0x34d]
movzx edx, byte [ebp + edx - 0x8f0]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x8f0]
movzx edx, byte [ebp + eax - 0x8f0]
xor ecx, edx
mov byte [ebp - 0x344], cl
mov al, byte [ebp - 0x34c]
mov byte [ebp - 0x34a], al
mov cl, byte [ebp - 0x344]
mov byte [ebp - 0x35d], cl
cmp dword [ebp - 0x364], 0
jle 0x4cfa78
movsx dx, byte [ebp - 0x35d]
mov eax, dword [ebp - 0x364]
mov word [ebp + eax*2 - 0xa16], dx
jmp 0x4cf5d9
mov ecx, dword [ebp - 0x3b4]
add ecx, 1
mov dword [ebp - 0x3b4], ecx
mov edx, 2
imul eax, edx, 0xc
mov dword [ebp - 0x640], eax
cmp dword [ebp - 0x640], 0x1a
jae 0x4cfaa5
jmp 0x4cfaaa
call fcn.00a40cf2
xor ecx, ecx
mov edx, dword [ebp - 0x640]
mov word [ebp + edx - 0xa14], cx
jmp 0x4cfb10
mov dword [ebp - 0x5ac], 0
jmp 0x4cfad7
mov eax, dword [ebp - 0x5ac]
add eax, 1
mov dword [ebp - 0x5ac], eax
cmp dword [ebp - 0x5ac], 0xd
jge 0x4cfb10
mov ecx, dword [ebp - 0x5ac]
shl ecx, 1
mov dword [ebp - 0x644], ecx
cmp dword [ebp - 0x644], 0x1a
jae 0x4cfaf9
jmp 0x4cfafe
call fcn.00a40cf2
xor edx, edx
mov eax, dword [ebp - 0x644]
mov word [ebp + eax - 0xa14], dx
jmp 0x4cfac8
mov ecx, dword [0xafd284]
mov dword [ebp - 0x630], ecx
mov dword [ebp - 0x32c], 0
mov dword [ebp - 0x328], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x598], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x558], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x558], xmm0
jmp 0x4cfb6b
movsd xmm0, qword [ebp - 0x558]
addsd xmm0, qword [0xabbaa0]
movsd qword [ebp - 0x558], xmm0
movsd xmm0, qword [0xabddb8]
comisd xmm0, xmmword [ebp - 0x558]
jbe 0x4cfc1c
movsd xmm0, qword [0xabdc10]
mulsd xmm0, qword [ebp - 0x558]
mulsd xmm0, qword [ebp - 0x558]
movsd xmm1, qword [ebp - 0x558]
mulsd xmm1, qword [ebp - 0x558]
subsd xmm0, xmm1
movsd xmm1, qword [0xabdaf0]
mulsd xmm1, qword [ebp - 0x558]
mulsd xmm1, qword [ebp - 0x558]
addsd xmm1, qword [0xabdb70]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x598]
movsd qword [ebp - 0x598], xmm0
movsd xmm0, qword [ebp - 0x598]
comisd xmm0, xmmword [0xabdbb8]
jbe 0x4cfc17
movsd xmm0, qword [0xabda48]
mulsd xmm0, qword [ebp - 0x558]
movsd xmm1, qword [ebp - 0x598]
subsd xmm1, xmm0
movsd qword [ebp - 0x598], xmm1
jmp 0x4cfb53
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x598]
jbe 0x4cfc70
cmp eax, 0x676a202d
push edx
jno 0x4cfc88
jp 0x4cfc8e
sub ch, byte [esi]
sub dword [0x172d526b], ebp
comiss xmm2, dword cs:[esi]
sub eax, 0x2e0b340b
or al, 0x35
adc byte [eax], bh
sbb byte [ecx], ch
or dword [esi], ebp
pop ss
adc al, 0x2f
push cs
or al, 0x33
or dword [edx], esi
push cs
xor cl, byte [0xd321831]
sub dword [0x12340932], ecx
xor al, 0xf
xor dword [ebx], ecx
xor eax, 0xe911320a
mov edx, 0xc700001c
test esp, edx
cld
invalid
mov dword [ebp - 0x32c], 0x4cfc39
mov dword [ebp - 0x328], 0x4cfc29
mov edx, dword [ebp - 0x32c]
mov dword [ebp - 0x47c], edx
mov eax, dword [ebp - 0x328]
mov dword [ebp - 0x754], eax
mov byte [ebp - 0x460], 0x14
mov dword [ebp - 0x3b8], 0
jmp 0x4cfcbe
invalid
invalid
mov ecx, dword [ebp - 0x3b8]
add ecx, 1
mov dword [ebp - 0x3b8], ecx
cmp dword [ebp - 0x3b8], 0x100
jae 0x4cfcdf
mov edx, dword [ebp - 0x3b8]
mov al, byte [ebp - 0x3b8]
mov byte [ebp + edx - 0x9f0], al
jmp 0x4cfcaf
mov dword [ebp - 0x51c], 0
mov byte [ebp - 0x354], 0
mov dword [ebp - 0x3b8], 0xff
jmp 0x4cfd0b
mov ecx, dword [ebp - 0x3b8]
sub ecx, 1
mov dword [ebp - 0x3b8], ecx
cmp dword [ebp - 0x3b8], 0
jbe 0x4cff7b
mov dword [ebp - 0x5f0], 0
mov dword [ebp - 0x5b0], 1
mov edx, dword [ebp - 0x5b0]
cmp edx, dword [ebp - 0x3b8]
jae 0x4cfd4c
mov eax, dword [ebp - 0x5b0]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x5b0], ecx
jmp 0x4cfd2c
mov edx, dword [ebp - 0x51c]
mov dword [ebp - 0x648], edx
cmp dword [ebp - 0x648], 3
ja case.default.0x4cfd6b
mov eax, dword [ebp - 0x648]
jmp dword [eax*4 + 0x4d49a0]
movzx ecx, byte [ebp - 0x354]
movzx ebx, byte [ebp + ecx - 0x9f0]
movsd xmm0, qword [ebp - 0x598]
call fcn.00a40f60
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x354], bl
jmp 0x4cfe54
movzx edx, byte [ebp - 0x354]
movzx ebx, byte [ebp + edx - 0x9f0]
movsd xmm0, qword [ebp - 0x598]
call fcn.00a40f60
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x354], bl
jmp 0x4cfe54
movzx eax, byte [ebp - 0x354]
movzx ebx, byte [ebp + eax - 0x9f0]
movsd xmm0, qword [ebp - 0x598]
call fcn.00a40f60
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x354], bl
jmp 0x4cfe54
movzx ecx, byte [ebp - 0x354]
movzx ebx, byte [ebp + ecx - 0x9f0]
movsd xmm0, qword [ebp - 0x598]
call fcn.00a40f60
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x354], bl
jmp 0x4cfe54
movzx edx, byte [ebp - 0x354]
movzx eax, byte [ebp + edx - 0x9f0]
mov ecx, dword [ebp - 0x754]
add ecx, dword [ebp - 0x51c]
movzx edx, byte [ecx - 4]
add eax, edx
mov byte [ebp - 0x354], al
mov eax, dword [ebp - 0x51c]
add eax, 1
mov dword [ebp - 0x51c], eax
movzx ecx, byte [ebp - 0x460]
cmp dword [ebp - 0x51c], ecx
jb 0x4cfe92
mov dword [ebp - 0x51c], 0
movzx edx, byte [ebp - 0x460]
movzx eax, byte [ebp - 0x354]
add eax, edx
mov byte [ebp - 0x354], al
movzx ecx, byte [ebp - 0x354]
and ecx, dword [ebp - 0x5b0]
mov dword [ebp - 0x4c4], ecx
mov edx, dword [ebp - 0x5f0]
add edx, 1
mov dword [ebp - 0x5f0], edx
cmp dword [ebp - 0x5f0], 0xb
jbe 0x4cfed1
mov eax, dword [ebp - 0x4c4]
xor edx, edx
div dword [ebp - 0x3b8]
mov dword [ebp - 0x4c4], edx
mov eax, dword [ebp - 0x4c4]
cmp eax, dword [ebp - 0x3b8]
ja 0x4cfd4c
mov ecx, dword [ebp - 0x3b8]
cmp ecx, dword [ebp - 0x4c4]
je 0x4cff76
mov edx, dword [ebp - 0x4c4]
movzx eax, byte [ebp + edx - 0x9f0]
mov ecx, dword [ebp - 0x3b8]
movzx edx, byte [ebp + ecx - 0x9f0]
xor edx, eax
mov eax, dword [ebp - 0x3b8]
mov byte [ebp + eax - 0x9f0], dl
mov ecx, dword [ebp - 0x3b8]
movzx edx, byte [ebp + ecx - 0x9f0]
mov eax, dword [ebp - 0x4c4]
movzx ecx, byte [ebp + eax - 0x9f0]
xor ecx, edx
mov edx, dword [ebp - 0x4c4]
mov byte [ebp + edx - 0x9f0], cl
mov eax, dword [ebp - 0x4c4]
movzx ecx, byte [ebp + eax - 0x9f0]
mov edx, dword [ebp - 0x3b8]
movzx eax, byte [ebp + edx - 0x9f0]
xor eax, ecx
mov ecx, dword [ebp - 0x3b8]
mov byte [ebp + ecx - 0x9f0], al
jmp 0x4cfcfc
mov edx, 1
shl edx, 0
mov al, byte [ebp + edx - 0x9f0]
mov byte [ebp - 0x343], al
mov ecx, 1
imul edx, ecx, 3
mov al, byte [ebp + edx - 0x9f0]
mov byte [ebp - 0x349], al
mov ecx, 1
imul edx, ecx, 5
mov al, byte [ebp + edx - 0x9f0]
mov byte [ebp - 0x351], al
mov ecx, 1
imul edx, ecx, 7
mov al, byte [ebp + edx - 0x9f0]
mov byte [ebp - 0x348], al
movzx ecx, byte [ebp - 0x354]
mov dl, byte [ebp + ecx - 0x9f0]
mov byte [ebp - 0x34b], dl
mov dword [ebp - 0x618], 0x32
cmp dword [ebp - 0x618], 2
jle 0x4d18dd
mov eax, dword [ebp - 0x618]
and eax, 1
jne 0x4d18dd
mov dword [ebp - 0x36c], 0
mov dword [ebp - 0x3ec], 0
mov ecx, dword [ebp - 0x3ec]
add ecx, 1
mov dword [ebp - 0x3ec], ecx
mov dword [ebp - 0x478], 0
mov edx, dword [ebp - 0x36c]
shl edx, 1
mov dword [ebp - 0x478], edx
mov dword [ebp - 0x454], 0
mov eax, dword [ebp - 0x47c]
add eax, dword [ebp - 0x478]
movzx ecx, byte [eax]
add ecx, dword [ebp - 0x454]
mov dword [ebp - 0x454], ecx
mov dword [ebp - 0x464], 0
mov edx, dword [ebp - 0x464]
add edx, 0x29
mov dword [ebp - 0x464], edx
mov dword [ebp - 0x480], 0
mov eax, dword [ebp - 0x36c]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x480], ecx
mov dword [ebp - 0x468], 0
movss xmm0, dword [0xabe564]
movss dword [ebp - 0x410], xmm0
movss xmm0, dword [0xabe518]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [0xabe4a0]
movss dword [ebp - 0x470], xmm0
movss xmm0, dword [0xabe410]
movss dword [ebp - 0x3f4], xmm0
movss xmm0, dword [0xabe380]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [0xabe2e0]
movss dword [ebp - 0x368], xmm0
movss xmm0, dword [ebp - 0x3e4]
addss xmm0, dword [ebp - 0x368]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [ebp - 0x3f4]
subss xmm0, dword [ebp - 0x368]
movss dword [ebp - 0x3f4], xmm0
movss xmm0, dword [ebp - 0x410]
addss xmm0, dword [ebp - 0x368]
movss dword [ebp - 0x410], xmm0
movss xmm0, dword [ebp - 0x370]
mulss xmm0, dword [ebp - 0x368]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x3e4]
subss xmm0, dword [ebp - 0x368]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [ebp - 0x470]
subss xmm0, dword [ebp - 0x368]
movss dword [ebp - 0x470], xmm0
movss xmm0, dword [ebp - 0x370]
comiss xmm0, dword [ebp - 0x368]
jbe 0x4d025b
movss xmm0, dword [ebp - 0x368]
mulss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x368], xmm0
movss xmm0, dword [ebp - 0x3f4]
mulss xmm0, dword [ebp - 0x368]
movss dword [ebp - 0x3f4], xmm0
movss xmm0, dword [ebp - 0x470]
addss xmm0, dword [ebp - 0x3e4]
movss dword [ebp - 0x470], xmm0
movss xmm0, dword [ebp - 0x3e4]
mulss xmm0, dword [ebp - 0x410]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [ebp - 0x368]
subss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x368], xmm0
movss xmm0, dword [ebp - 0x370]
subss xmm0, dword [ebp - 0x3f4]
movss dword [ebp - 0x370], xmm0
mov edx, dword [ebp - 0x47c]
add edx, dword [ebp - 0x480]
movzx eax, byte [edx]
add eax, dword [ebp - 0x468]
mov dword [ebp - 0x468], eax
jmp 0x4d04b5
movss xmm0, dword [ebp - 0x3f4]
subss xmm0, dword [ebp - 0x368]
movss dword [ebp - 0x3f4], xmm0
movss xmm0, dword [ebp - 0x3f4]
addss xmm0, dword [ebp - 0x368]
movss dword [ebp - 0x3f4], xmm0
movss xmm0, dword [ebp - 0x3e4]
divss xmm0, dword [ebp - 0x410]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [ebp - 0x368]
mulss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x368], xmm0
movss xmm0, dword [ebp - 0x410]
mulss xmm0, dword [ebp - 0x470]
movss dword [ebp - 0x410], xmm0
movss xmm0, dword [ebp - 0x368]
subss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x368], xmm0
movss xmm0, dword [ebp - 0x368]
divss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x368], xmm0
movss xmm0, dword [ebp - 0x368]
divss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x368], xmm0
movss xmm0, dword [ebp - 0x3e4]
divss xmm0, dword [ebp - 0x410]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [ebp - 0x3e4]
divss xmm0, dword [ebp - 0x410]
movss dword [ebp - 0x3e4], xmm0
movss xmm0, dword [ebp - 0x370]
addss xmm0, dword [ebp - 0x3f4]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x370]
divss xmm0, dword [ebp - 0x3f4]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x3e4]
comiss xmm0, dword [ebp - 0x470]
jbe 0x4d0425
movss xmm0, dword [ebp - 0x370]
divss xmm0, dword [ebp - 0x3f4]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x410]
subss xmm0, dword [ebp - 0x470]
movss dword [ebp - 0x410], xmm0
movss xmm0, dword [ebp - 0x3f4]
mulss xmm0, dword [ebp - 0x368]
movss dword [ebp - 0x3f4], xmm0
movss xmm0, dword [ebp - 0x368]
addss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x368], xmm0
movss xmm0, dword [ebp - 0x368]
divss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x368], xmm0
movss xmm0, dword [ebp - 0x3e4]
divss xmm0, dword [ebp - 0x410]
movss dword [ebp - 0x3e4], xmm0
jmp 0x4d04b5
movss xmm0, dword [ebp - 0x368]
subss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x368], xmm0
movss xmm0, dword [ebp - 0x410]
mulss xmm0, dword [ebp - 0x470]
movss dword [ebp - 0x410], xmm0
movss xmm0, dword [ebp - 0x370]
subss xmm0, dword [ebp - 0x3f4]
movss dword [ebp - 0x370], xmm0
movss xmm0, dword [ebp - 0x368]
divss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x368], xmm0
movss xmm0, dword [ebp - 0x368]
subss xmm0, dword [ebp - 0x370]
movss dword [ebp - 0x368], xmm0
movss xmm0, dword [ebp - 0x470]
addss xmm0, dword [ebp - 0x3e4]
movss dword [ebp - 0x470], xmm0
mov dword [ebp - 0x46c], 0
mov ecx, dword [ebp - 0x46c]
add ecx, 9
mov dword [ebp - 0x46c], ecx
mov dword [ebp - 0x448], 0
mov edx, dword [ebp - 0x454]
sub edx, dword [ebp - 0x464]
add edx, dword [ebp - 0x448]
mov dword [ebp - 0x448], edx
mov dword [ebp - 0x44c], 0
mov eax, dword [ebp - 0x468]
sub eax, dword [ebp - 0x46c]
add eax, dword [ebp - 0x44c]
mov dword [ebp - 0x44c], eax
mov dword [ebp - 0x484], 0
mov ecx, dword [ebp - 0x448]
shl ecx, 4
mov dword [ebp - 0x484], ecx
mov dword [ebp - 0x488], 0
mov edx, dword [ebp - 0x44c]
mov dword [ebp - 0x488], edx
mov dword [ebp - 0x48c], 0
mov eax, dword [ebp - 0x484]
or eax, dword [ebp - 0x488]
mov dword [ebp - 0x48c], eax
mov byte [ebp - 0x350], 0
mov cl, byte [ebp - 0x48c]
mov byte [ebp - 0x350], cl
mov byte [ebp - 0x352], 0
movzx edx, byte [ebp - 0x34b]
mov al, byte [ebp + edx - 0x9f0]
mov byte [ebp - 0x352], al
movzx ecx, byte [ebp - 0x343]
movzx edx, byte [ebp + ecx - 0x9f0]
mov dword [ebp - 0x758], edx
mov al, byte [ebp - 0x343]
add al, 1
mov byte [ebp - 0x343], al
movzx ecx, byte [ebp - 0x349]
add ecx, dword [ebp - 0x758]
mov byte [ebp - 0x349], cl
movzx edx, byte [ebp - 0x349]
movzx eax, byte [ebp - 0x34b]
mov cl, byte [ebp + edx - 0x9f0]
mov byte [ebp + eax - 0x9f0], cl
movzx edx, byte [ebp - 0x348]
movzx eax, byte [ebp - 0x349]
mov cl, byte [ebp + edx - 0x9f0]
mov byte [ebp + eax - 0x9f0], cl
movzx edx, byte [ebp - 0x343]
movzx eax, byte [ebp - 0x348]
mov cl, byte [ebp + edx - 0x9f0]
mov byte [ebp + eax - 0x9f0], cl
movzx edx, byte [ebp - 0x343]
mov al, byte [ebp - 0x352]
mov byte [ebp + edx - 0x9f0], al
movzx ecx, byte [ebp - 0x352]
movzx edx, byte [ebp + ecx - 0x9f0]
movzx eax, byte [ebp - 0x351]
add eax, edx
mov byte [ebp - 0x351], al
movzx ecx, byte [ebp - 0x350]
movzx edx, byte [ebp - 0x349]
movzx eax, byte [ebp + edx - 0x9f0]
movzx edx, byte [ebp - 0x343]
movzx edx, byte [ebp + edx - 0x9f0]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x9f0]
xor ecx, eax
movzx edx, byte [ebp - 0x348]
movzx eax, byte [ebp + edx - 0x9f0]
movzx edx, byte [ebp - 0x34b]
movzx edx, byte [ebp + edx - 0x9f0]
add eax, edx
movzx edx, byte [ebp - 0x351]
movzx edx, byte [ebp + edx - 0x9f0]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x9f0]
movzx edx, byte [ebp + eax - 0x9f0]
xor ecx, edx
mov byte [ebp - 0x348], cl
mov al, byte [ebp - 0x350]
mov byte [ebp - 0x34b], al
mov cl, byte [ebp - 0x348]
mov byte [ebp - 0x35e], cl
cmp dword [ebp - 0x36c], 0
jle 0x4d06fc
mov edx, dword [ebp - 0x36c]
mov al, byte [ebp - 0x35e]
mov byte [ebp + edx - 0x3d], al
mov ecx, dword [ebp - 0x36c]
add ecx, 1
mov dword [ebp - 0x36c], ecx
mov edx, dword [ebp - 0x3ec]
add edx, 1
mov dword [ebp - 0x3ec], edx
mov eax, dword [ebp - 0x36c]
shl eax, 1
mov dword [ebp - 0x478], eax
mov ecx, dword [ebp - 0x47c]
add ecx, dword [ebp - 0x478]
movzx edx, byte [ecx]
mov dword [ebp - 0x454], edx
mov dword [ebp - 0x464], 0x29
mov eax, dword [ebp - 0x36c]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x480], ecx
mov edx, dword [ebp - 0x47c]
add edx, dword [ebp - 0x480]
movzx eax, byte [edx]
mov dword [ebp - 0x468], eax
mov dword [ebp - 0x46c], 9
mov ecx, dword [ebp - 0x454]
sub ecx, dword [ebp - 0x464]
mov dword [ebp - 0x448], ecx
mov edx, dword [ebp - 0x468]
sub edx, dword [ebp - 0x46c]
mov dword [ebp - 0x44c], edx
mov eax, dword [ebp - 0x448]
shl eax, 4
mov dword [ebp - 0x484], eax
mov ecx, dword [ebp - 0x44c]
mov dword [ebp - 0x488], ecx
mov edx, dword [ebp - 0x484]
or edx, dword [ebp - 0x488]
mov dword [ebp - 0x48c], edx
movss xmm0, dword [0xabe510]
movss dword [ebp - 0x474], xmm0
movss xmm0, dword [0xabe468]
movss dword [ebp - 0x4dc], xmm0
movss xmm0, dword [0xabe3bc]
movss dword [ebp - 0x49c], xmm0
movss xmm0, dword [0xabe304]
movss dword [ebp - 0x430], xmm0
movss xmm0, dword [ebp - 0x474]
addss xmm0, dword [ebp - 0x430]
movss dword [ebp - 0x474], xmm0
movss xmm0, dword [ebp - 0x4dc]
subss xmm0, dword [ebp - 0x430]
movss dword [ebp - 0x4dc], xmm0
movss xmm0, dword [ebp - 0x49c]
subss xmm0, dword [ebp - 0x430]
movss dword [ebp - 0x49c], xmm0
movss xmm0, dword [ebp - 0x474]
addss xmm0, dword [ebp - 0x430]
movss dword [ebp - 0x474], xmm0
movss xmm0, dword [ebp - 0x49c]
comiss xmm0, dword [ebp - 0x474]
jbe 0x4d08da
movss xmm0, dword [ebp - 0x430]
divss xmm0, dword [ebp - 0x474]
movss dword [ebp - 0x430], xmm0
movss xmm0, dword [ebp - 0x49c]
subss xmm0, dword [ebp - 0x430]
movss dword [ebp - 0x49c], xmm0
movss xmm0, dword [ebp - 0x430]
subss xmm0, dword [ebp - 0x474]
movss dword [ebp - 0x430], xmm0
movss xmm0, dword [ebp - 0x430]
mulss xmm0, dword [ebp - 0x474]
movss dword [ebp - 0x430], xmm0
jmp 0x4d0946
movss xmm0, dword [ebp - 0x4dc]
addss xmm0, dword [ebp - 0x49c]
movss dword [ebp - 0x4dc], xmm0
movss xmm0, dword [ebp - 0x49c]
subss xmm0, dword [ebp - 0x430]
movss dword [ebp - 0x49c], xmm0
movss xmm0, dword [ebp - 0x4dc]
addss xmm0, dword [ebp - 0x49c]
movss dword [ebp - 0x4dc], xmm0
movss xmm0, dword [ebp - 0x474]
mulss xmm0, dword [ebp - 0x4dc]
movss dword [ebp - 0x474], xmm0
mov al, byte [ebp - 0x48c]
mov byte [ebp - 0x350], al
movzx ecx, byte [ebp - 0x34b]
mov dl, byte [ebp + ecx - 0x9f0]
mov byte [ebp - 0x352], dl
movzx eax, byte [ebp - 0x343]
movzx ecx, byte [ebp + eax - 0x9f0]
mov dword [ebp - 0x75c], ecx
mov dl, byte [ebp - 0x343]
add dl, 1
mov byte [ebp - 0x343], dl
movzx eax, byte [ebp - 0x349]
add eax, dword [ebp - 0x75c]
mov byte [ebp - 0x349], al
movzx ecx, byte [ebp - 0x349]
movzx edx, byte [ebp - 0x34b]
mov al, byte [ebp + ecx - 0x9f0]
mov byte [ebp + edx - 0x9f0], al
movzx ecx, byte [ebp - 0x348]
movzx edx, byte [ebp - 0x349]
mov al, byte [ebp + ecx - 0x9f0]
mov byte [ebp + edx - 0x9f0], al
movsd xmm0, qword [0xabe278]
movsd qword [ebp - 0x500], xmm0
movsd xmm0, qword [0xabe120]
movsd qword [ebp - 0x5c8], xmm0
movsd xmm0, qword [0xabdec8]
movsd qword [ebp - 0x5fc], xmm0
movsd xmm0, qword [ebp - 0x5c8]
mulsd xmm0, qword [ebp - 0x5fc]
movsd qword [ebp - 0x5c8], xmm0
movsd xmm0, qword [ebp - 0x500]
mulsd xmm0, qword [ebp - 0x5fc]
movsd qword [ebp - 0x500], xmm0
movsd xmm0, qword [ebp - 0x500]
subsd xmm0, qword [ebp - 0x5fc]
movsd qword [ebp - 0x500], xmm0
movsd xmm0, qword [ebp - 0x500]
comisd xmm0, xmmword [ebp - 0x5fc]
jbe 0x4d0ab9
movsd xmm0, qword [ebp - 0x5c8]
subsd xmm0, qword [ebp - 0x500]
movsd qword [ebp - 0x5c8], xmm0
movsd xmm0, qword [ebp - 0x500]
addsd xmm0, qword [ebp - 0x5fc]
movsd qword [ebp - 0x500], xmm0
movsd xmm0, qword [ebp - 0x500]
addsd xmm0, qword [ebp - 0x5fc]
movsd qword [ebp - 0x500], xmm0
movzx ecx, byte [ebp - 0x343]
movzx edx, byte [ebp - 0x348]
mov al, byte [ebp + ecx - 0x9f0]
mov byte [ebp + edx - 0x9f0], al
jmp 0x4d0b01
movsd xmm0, qword [ebp - 0x5c8]
subsd xmm0, qword [ebp - 0x500]
movsd qword [ebp - 0x5c8], xmm0
movsd xmm0, qword [ebp - 0x5c8]
addsd xmm0, qword [ebp - 0x500]
movsd qword [ebp - 0x5c8], xmm0
movsd xmm0, qword [ebp - 0x500]
addsd xmm0, qword [ebp - 0x5fc]
movsd qword [ebp - 0x500], xmm0
movzx ecx, byte [ebp - 0x343]
mov dl, byte [ebp - 0x352]
mov byte [ebp + ecx - 0x9f0], dl
movzx eax, byte [ebp - 0x352]
movzx ecx, byte [ebp + eax - 0x9f0]
movzx edx, byte [ebp - 0x351]
add edx, ecx
mov byte [ebp - 0x351], dl
movzx eax, byte [ebp - 0x350]
movzx ecx, byte [ebp - 0x349]
movzx edx, byte [ebp + ecx - 0x9f0]
movzx ecx, byte [ebp - 0x343]
movzx ecx, byte [ebp + ecx - 0x9f0]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x9f0]
xor eax, edx
movzx ecx, byte [ebp - 0x348]
movzx edx, byte [ebp + ecx - 0x9f0]
movzx ecx, byte [ebp - 0x34b]
movzx ecx, byte [ebp + ecx - 0x9f0]
add edx, ecx
movzx ecx, byte [ebp - 0x351]
movzx ecx, byte [ebp + ecx - 0x9f0]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x9f0]
movzx ecx, byte [ebp + edx - 0x9f0]
xor eax, ecx
mov byte [ebp - 0x348], al
mov dl, byte [ebp - 0x350]
mov byte [ebp - 0x34b], dl
mov al, byte [ebp - 0x348]
mov byte [ebp - 0x35e], al
cmp dword [ebp - 0x36c], 0
jle 0x4d0bea
mov ecx, dword [ebp - 0x36c]
mov dl, byte [ebp - 0x35e]
mov byte [ebp + ecx - 0x3d], dl
mov eax, dword [ebp - 0x3ec]
add eax, 0xb
mov dword [ebp - 0x3ec], eax
mov ecx, dword [ebp - 0x36c]
add ecx, 1
mov dword [ebp - 0x5f4], ecx
jmp 0x4d0c19
mov edx, dword [ebp - 0x5f4]
add edx, 1
mov dword [ebp - 0x5f4], edx
mov eax, dword [ebp - 0x5f4]
cmp eax, dword [ebp - 0x3ec]
jge 0x4d1050
mov ecx, dword [ebp - 0x36c]
add ecx, 1
mov dword [ebp - 0x36c], ecx
mov edx, dword [ebp - 0x36c]
shl edx, 1
mov dword [ebp - 0x478], edx
mov eax, dword [ebp - 0x47c]
add eax, dword [ebp - 0x478]
movzx ecx, byte [eax]
mov dword [ebp - 0x454], ecx
mov dword [ebp - 0x464], 0x29
mov edx, dword [ebp - 0x36c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x480], eax
mov ecx, dword [ebp - 0x47c]
add ecx, dword [ebp - 0x480]
movzx edx, byte [ecx]
mov dword [ebp - 0x468], edx
mov dword [ebp - 0x46c], 9
movsd xmm0, qword [0xabe138]
movsd qword [ebp - 0x518], xmm0
movsd xmm0, qword [0xabe020]
movsd qword [ebp - 0x614], xmm0
movsd xmm0, qword [0xabdf40]
movsd qword [ebp - 0x60c], xmm0
movsd xmm0, qword [0xabde38]
movsd qword [ebp - 0x52c], xmm0
movsd xmm0, qword [0xabdcc0]
movsd qword [ebp - 0x590], xmm0
movsd xmm0, qword [ebp - 0x518]
subsd xmm0, qword [ebp - 0x590]
movsd qword [ebp - 0x518], xmm0
movsd xmm0, qword [ebp - 0x60c]
mulsd xmm0, qword [ebp - 0x590]
movsd qword [ebp - 0x60c], xmm0
movsd xmm0, qword [ebp - 0x518]
mulsd xmm0, qword [ebp - 0x590]
movsd qword [ebp - 0x518], xmm0
movsd xmm0, qword [ebp - 0x52c]
subsd xmm0, qword [ebp - 0x590]
movsd qword [ebp - 0x52c], xmm0
movsd xmm0, qword [ebp - 0x518]
subsd xmm0, qword [ebp - 0x590]
movsd qword [ebp - 0x518], xmm0
movsd xmm0, qword [ebp - 0x518]
comisd xmm0, xmmword [ebp - 0x52c]
jbe 0x4d0e00
movsd xmm0, qword [ebp - 0x52c]
mulsd xmm0, qword [ebp - 0x590]
movsd qword [ebp - 0x52c], xmm0
movsd xmm0, qword [ebp - 0x590]
mulsd xmm0, qword [ebp - 0x518]
movsd qword [ebp - 0x590], xmm0
movsd xmm0, qword [ebp - 0x614]
mulsd xmm0, qword [ebp - 0x60c]
movsd qword [ebp - 0x614], xmm0
movsd xmm0, qword [ebp - 0x590]
mulsd xmm0, qword [ebp - 0x518]
movsd qword [ebp - 0x590], xmm0
movsd xmm0, qword [ebp - 0x60c]
subsd xmm0, qword [ebp - 0x52c]
movsd qword [ebp - 0x60c], xmm0
mov eax, dword [ebp - 0x454]
sub eax, dword [ebp - 0x464]
mov dword [ebp - 0x448], eax
jmp 0x4d0e78
movsd xmm0, qword [ebp - 0x52c]
mulsd xmm0, qword [ebp - 0x518]
movsd qword [ebp - 0x52c], xmm0
movsd xmm0, qword [ebp - 0x614]
subsd xmm0, qword [ebp - 0x52c]
movsd qword [ebp - 0x614], xmm0
movsd xmm0, qword [ebp - 0x614]
divsd xmm0, qword [ebp - 0x52c]
movsd qword [ebp - 0x614], xmm0
movsd xmm0, qword [ebp - 0x518]
mulsd xmm0, qword [ebp - 0x60c]
movsd qword [ebp - 0x518], xmm0
movsd xmm0, qword [ebp - 0x52c]
divsd xmm0, qword [ebp - 0x518]
movsd qword [ebp - 0x52c], xmm0
mov ecx, dword [ebp - 0x468]
sub ecx, dword [ebp - 0x46c]
mov dword [ebp - 0x44c], ecx
mov edx, dword [ebp - 0x448]
shl edx, 4
mov dword [ebp - 0x484], edx
mov eax, dword [ebp - 0x44c]
mov dword [ebp - 0x488], eax
mov ecx, dword [ebp - 0x484]
or ecx, dword [ebp - 0x488]
mov dword [ebp - 0x48c], ecx
mov dl, byte [ebp - 0x48c]
mov byte [ebp - 0x350], dl
movzx eax, byte [ebp - 0x34b]
mov cl, byte [ebp + eax - 0x9f0]
mov byte [ebp - 0x352], cl
movzx edx, byte [ebp - 0x343]
movzx eax, byte [ebp + edx - 0x9f0]
mov dword [ebp - 0x760], eax
mov cl, byte [ebp - 0x343]
add cl, 1
mov byte [ebp - 0x343], cl
movzx edx, byte [ebp - 0x349]
add edx, dword [ebp - 0x760]
mov byte [ebp - 0x349], dl
movzx eax, byte [ebp - 0x349]
movzx ecx, byte [ebp - 0x34b]
mov dl, byte [ebp + eax - 0x9f0]
mov byte [ebp + ecx - 0x9f0], dl
movzx eax, byte [ebp - 0x348]
movzx ecx, byte [ebp - 0x349]
mov dl, byte [ebp + eax - 0x9f0]
mov byte [ebp + ecx - 0x9f0], dl
movzx eax, byte [ebp - 0x343]
movzx ecx, byte [ebp - 0x348]
mov dl, byte [ebp + eax - 0x9f0]
mov byte [ebp + ecx - 0x9f0], dl
movzx eax, byte [ebp - 0x343]
mov cl, byte [ebp - 0x352]
mov byte [ebp + eax - 0x9f0], cl
movzx edx, byte [ebp - 0x352]
movzx eax, byte [ebp + edx - 0x9f0]
movzx ecx, byte [ebp - 0x351]
add ecx, eax
mov byte [ebp - 0x351], cl
movzx edx, byte [ebp - 0x350]
movzx eax, byte [ebp - 0x349]
movzx ecx, byte [ebp + eax - 0x9f0]
movzx eax, byte [ebp - 0x343]
movzx eax, byte [ebp + eax - 0x9f0]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x9f0]
xor edx, ecx
movzx eax, byte [ebp - 0x348]
movzx ecx, byte [ebp + eax - 0x9f0]
movzx eax, byte [ebp - 0x34b]
movzx eax, byte [ebp + eax - 0x9f0]
add ecx, eax
movzx eax, byte [ebp - 0x351]
movzx eax, byte [ebp + eax - 0x9f0]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x9f0]
movzx eax, byte [ebp + ecx - 0x9f0]
xor edx, eax
mov byte [ebp - 0x348], dl
mov cl, byte [ebp - 0x350]
mov byte [ebp - 0x34b], cl
mov dl, byte [ebp - 0x348]
mov byte [ebp - 0x35e], dl
cmp dword [ebp - 0x36c], 0
jle 0x4d104b
mov eax, dword [ebp - 0x36c]
mov cl, byte [ebp - 0x35e]
mov byte [ebp + eax - 0x3d], cl
jmp 0x4d0c0a
mov edx, dword [ebp - 0x3ec]
add edx, 1
mov dword [ebp - 0x3ec], edx
mov eax, dword [ebp - 0x3ec]
add eax, 0xb
mov dword [ebp - 0x3ec], eax
mov ecx, dword [ebp - 0x36c]
add ecx, 1
mov dword [ebp - 0x5d8], ecx
jmp 0x4d108e
mov edx, dword [ebp - 0x5d8]
add edx, 1
mov dword [ebp - 0x5d8], edx
mov eax, dword [ebp - 0x5d8]
cmp eax, dword [ebp - 0x3ec]
jge 0x4d1644
mov ecx, dword [ebp - 0x36c]
add ecx, 1
mov dword [ebp - 0x36c], ecx
mov edx, dword [ebp - 0x36c]
shl edx, 1
mov dword [ebp - 0x478], edx
movsd xmm0, qword [0xabe1a8]
movsd qword [ebp - 0x4e4], xmm0
movsd xmm0, qword [0xabe0b8]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [0xabdfa8]
movsd qword [ebp - 0x4b4], xmm0
movsd xmm0, qword [0xabde98]
movsd qword [ebp - 0x534], xmm0
movsd xmm0, qword [0xabdd08]
movsd qword [ebp - 0x428], xmm0
movsd xmm0, qword [ebp - 0x45c]
subsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x45c]
addsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x4e4]
mulsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x4e4], xmm0
movsd xmm0, qword [ebp - 0x534]
addsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x534], xmm0
movsd xmm0, qword [ebp - 0x45c]
addsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x428]
comisd xmm0, xmmword [ebp - 0x4e4]
jbe 0x4d1394
movsd xmm0, qword [ebp - 0x45c]
addsd xmm0, qword [ebp - 0x4b4]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x45c]
mulsd xmm0, qword [ebp - 0x4b4]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x4b4]
addsd xmm0, qword [ebp - 0x534]
movsd qword [ebp - 0x4b4], xmm0
movsd xmm0, qword [ebp - 0x4e4]
divsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x4e4], xmm0
movsd xmm0, qword [ebp - 0x4e4]
divsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x4e4], xmm0
movsd xmm0, qword [ebp - 0x4e4]
addsd xmm0, qword [ebp - 0x4b4]
movsd qword [ebp - 0x4e4], xmm0
movsd xmm0, qword [ebp - 0x428]
addsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x428], xmm0
movsd xmm0, qword [ebp - 0x4b4]
subsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x4b4], xmm0
movsd xmm0, qword [ebp - 0x428]
mulsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x428], xmm0
movsd xmm0, qword [ebp - 0x45c]
addsd xmm0, qword [ebp - 0x534]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x45c]
comisd xmm0, xmmword [ebp - 0x534]
jbe 0x4d1317
movsd xmm0, qword [ebp - 0x428]
subsd xmm0, qword [ebp - 0x4e4]
movsd qword [ebp - 0x428], xmm0
movsd xmm0, qword [ebp - 0x534]
mulsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x534], xmm0
movsd xmm0, qword [ebp - 0x4b4]
addsd xmm0, qword [ebp - 0x534]
movsd qword [ebp - 0x4b4], xmm0
movsd xmm0, qword [ebp - 0x428]
divsd xmm0, qword [ebp - 0x4e4]
movsd qword [ebp - 0x428], xmm0
movsd xmm0, qword [ebp - 0x4b4]
subsd xmm0, qword [ebp - 0x534]
movsd qword [ebp - 0x4b4], xmm0
jmp 0x4d138f
movsd xmm0, qword [ebp - 0x45c]
subsd xmm0, qword [ebp - 0x4b4]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x4e4]
mulsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x4e4], xmm0
movsd xmm0, qword [ebp - 0x428]
subsd xmm0, qword [ebp - 0x4e4]
movsd qword [ebp - 0x428], xmm0
movsd xmm0, qword [ebp - 0x534]
subsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x534], xmm0
movsd xmm0, qword [ebp - 0x428]
addsd xmm0, qword [ebp - 0x4e4]
movsd qword [ebp - 0x428], xmm0
jmp 0x4d1421
movsd xmm0, qword [ebp - 0x4b4]
subsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x4b4], xmm0
movsd xmm0, qword [ebp - 0x45c]
addsd xmm0, qword [ebp - 0x534]
movsd qword [ebp - 0x45c], xmm0
movsd xmm0, qword [ebp - 0x4b4]
addsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x4b4], xmm0
movsd xmm0, qword [ebp - 0x4b4]
addsd xmm0, qword [ebp - 0x428]
movsd qword [ebp - 0x4b4], xmm0
movsd xmm0, qword [ebp - 0x428]
subsd xmm0, qword [ebp - 0x45c]
movsd qword [ebp - 0x428], xmm0
mov eax, dword [ebp - 0x47c]
add eax, dword [ebp - 0x478]
movzx ecx, byte [eax]
mov dword [ebp - 0x454], ecx
mov dword [ebp - 0x464], 0x29
mov edx, dword [ebp - 0x36c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x480], eax
mov ecx, dword [ebp - 0x47c]
add ecx, dword [ebp - 0x480]
movzx edx, byte [ecx]
mov dword [ebp - 0x468], edx
mov dword [ebp - 0x46c], 9
mov eax, dword [ebp - 0x454]
sub eax, dword [ebp - 0x464]
mov dword [ebp - 0x448], eax
mov ecx, dword [ebp - 0x468]
sub ecx, dword [ebp - 0x46c]
mov dword [ebp - 0x44c], ecx
mov edx, dword [ebp - 0x448]
shl edx, 4
mov dword [ebp - 0x484], edx
mov eax, dword [ebp - 0x44c]
mov dword [ebp - 0x488], eax
mov ecx, dword [ebp - 0x484]
or ecx, dword [ebp - 0x488]
mov dword [ebp - 0x48c], ecx
mov dl, byte [ebp - 0x48c]
mov byte [ebp - 0x350], dl
movzx eax, byte [ebp - 0x34b]
mov cl, byte [ebp + eax - 0x9f0]
mov byte [ebp - 0x352], cl
movzx edx, byte [ebp - 0x343]
movzx eax, byte [ebp + edx - 0x9f0]
mov dword [ebp - 0x764], eax
mov cl, byte [ebp - 0x343]
add cl, 1
mov byte [ebp - 0x343], cl
movzx edx, byte [ebp - 0x349]
add edx, dword [ebp - 0x764]
mov byte [ebp - 0x349], dl
movzx eax, byte [ebp - 0x349]
movzx ecx, byte [ebp - 0x34b]
mov dl, byte [ebp + eax - 0x9f0]
mov byte [ebp + ecx - 0x9f0], dl
movzx eax, byte [ebp - 0x348]
movzx ecx, byte [ebp - 0x349]
mov dl, byte [ebp + eax - 0x9f0]
mov byte [ebp + ecx - 0x9f0], dl
movzx eax, byte [ebp - 0x343]
movzx ecx, byte [ebp - 0x348]
mov dl, byte [ebp + eax - 0x9f0]
mov byte [ebp + ecx - 0x9f0], dl
movzx eax, byte [ebp - 0x343]
mov cl, byte [ebp - 0x352]
mov byte [ebp + eax - 0x9f0], cl
movzx edx, byte [ebp - 0x352]
movzx eax, byte [ebp + edx - 0x9f0]
movzx ecx, byte [ebp - 0x351]
add ecx, eax
mov byte [ebp - 0x351], cl
movzx edx, byte [ebp - 0x350]
movzx eax, byte [ebp - 0x349]
movzx ecx, byte [ebp + eax - 0x9f0]
movzx eax, byte [ebp - 0x343]
movzx eax, byte [ebp + eax - 0x9f0]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x9f0]
xor edx, ecx
movzx eax, byte [ebp - 0x348]
movzx ecx, byte [ebp + eax - 0x9f0]
movzx eax, byte [ebp - 0x34b]
movzx eax, byte [ebp + eax - 0x9f0]
add ecx, eax
movzx eax, byte [ebp - 0x351]
movzx eax, byte [ebp + eax - 0x9f0]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x9f0]
movzx eax, byte [ebp + ecx - 0x9f0]
xor edx, eax
mov byte [ebp - 0x348], dl
mov cl, byte [ebp - 0x350]
mov byte [ebp - 0x34b], cl
mov dl, byte [ebp - 0x348]
mov byte [ebp - 0x35e], dl
cmp dword [ebp - 0x36c], 0
jle 0x4d163f
mov eax, dword [ebp - 0x36c]
mov cl, byte [ebp - 0x35e]
mov byte [ebp + eax - 0x3d], cl
jmp 0x4d107f
mov edx, dword [ebp - 0x3ec]
add edx, 1
mov dword [ebp - 0x3ec], edx
mov eax, dword [ebp - 0x36c]
add eax, 1
mov dword [ebp - 0x36c], eax
mov ecx, dword [ebp - 0x3ec]
add ecx, 1
mov dword [ebp - 0x3ec], ecx
mov edx, dword [ebp - 0x36c]
shl edx, 1
mov dword [ebp - 0x478], edx
mov eax, dword [ebp - 0x47c]
add eax, dword [ebp - 0x478]
movzx ecx, byte [eax]
mov dword [ebp - 0x454], ecx
mov dword [ebp - 0x464], 0x29
mov edx, dword [ebp - 0x36c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x480], eax
mov ecx, dword [ebp - 0x47c]
add ecx, dword [ebp - 0x480]
movzx edx, byte [ecx]
mov dword [ebp - 0x468], edx
mov dword [ebp - 0x46c], 9
mov eax, dword [ebp - 0x454]
sub eax, dword [ebp - 0x464]
mov dword [ebp - 0x448], eax
mov ecx, dword [ebp - 0x468]
sub ecx, dword [ebp - 0x46c]
mov dword [ebp - 0x44c], ecx
mov edx, dword [ebp - 0x448]
shl edx, 4
mov dword [ebp - 0x484], edx
mov eax, dword [ebp - 0x44c]
mov dword [ebp - 0x488], eax
mov ecx, dword [ebp - 0x484]
or ecx, dword [ebp - 0x488]
mov dword [ebp - 0x48c], ecx
mov dl, byte [ebp - 0x48c]
mov byte [ebp - 0x350], dl
movzx eax, byte [ebp - 0x34b]
mov cl, byte [ebp + eax - 0x9f0]
mov byte [ebp - 0x352], cl
movzx edx, byte [ebp - 0x343]
movzx eax, byte [ebp + edx - 0x9f0]
mov dword [ebp - 0x768], eax
mov cl, byte [ebp - 0x343]
add cl, 1
mov byte [ebp - 0x343], cl
movzx edx, byte [ebp - 0x349]
add edx, dword [ebp - 0x768]
mov byte [ebp - 0x349], dl
movzx eax, byte [ebp - 0x349]
movzx ecx, byte [ebp - 0x34b]
mov dl, byte [ebp + eax - 0x9f0]
mov byte [ebp + ecx - 0x9f0], dl
movzx eax, byte [ebp - 0x348]
movzx ecx, byte [ebp - 0x349]
mov dl, byte [ebp + eax - 0x9f0]
mov byte [ebp + ecx - 0x9f0], dl
movzx eax, byte [ebp - 0x343]
movzx ecx, byte [ebp - 0x348]
mov dl, byte [ebp + eax - 0x9f0]
mov byte [ebp + ecx - 0x9f0], dl
movzx eax, byte [ebp - 0x343]
mov cl, byte [ebp - 0x352]
mov byte [ebp + eax - 0x9f0], cl
movzx edx, byte [ebp - 0x352]
movzx eax, byte [ebp + edx - 0x9f0]
movzx ecx, byte [ebp - 0x351]
add ecx, eax
mov byte [ebp - 0x351], cl
movzx edx, byte [ebp - 0x350]
movzx eax, byte [ebp - 0x349]
movzx ecx, byte [ebp + eax - 0x9f0]
movzx eax, byte [ebp - 0x343]
movzx eax, byte [ebp + eax - 0x9f0]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x9f0]
xor edx, ecx
movzx eax, byte [ebp - 0x348]
movzx ecx, byte [ebp + eax - 0x9f0]
movzx eax, byte [ebp - 0x34b]
movzx eax, byte [ebp + eax - 0x9f0]
add ecx, eax
movzx eax, byte [ebp - 0x351]
movzx eax, byte [ebp + eax - 0x9f0]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x9f0]
movzx eax, byte [ebp + ecx - 0x9f0]
xor edx, eax
mov byte [ebp - 0x348], dl
mov cl, byte [ebp - 0x350]
mov byte [ebp - 0x34b], cl
mov dl, byte [ebp - 0x348]
mov byte [ebp - 0x35e], dl
cmp dword [ebp - 0x36c], 0
jle 0x4d18b2
mov eax, dword [ebp - 0x36c]
mov cl, byte [ebp - 0x35e]
mov byte [ebp + eax - 0x3d], cl
mov edx, 1
imul eax, edx, 0x18
mov dword [ebp - 0x61c], eax
cmp dword [ebp - 0x61c], 0x19
jae 0x4d18cb
jmp 0x4d18d0
call fcn.00a40cf2
mov ecx, dword [ebp - 0x61c]
mov byte [ebp + ecx - 0x3c], 0
jmp 0x4d192a
mov dword [ebp - 0x5b4], 0
jmp 0x4d18f8
mov edx, dword [ebp - 0x5b4]
add edx, 1
mov dword [ebp - 0x5b4], edx
cmp dword [ebp - 0x5b4], 0x19
jge 0x4d192a
mov eax, dword [ebp - 0x5b4]
mov dword [ebp - 0x620], eax
cmp dword [ebp - 0x620], 0x19
jae 0x4d1918
jmp 0x4d191d
call fcn.00a40cf2
mov ecx, dword [ebp - 0x620]
mov byte [ebp + ecx - 0x3c], 0
jmp 0x4d18e9
lea edx, [ebp - 0x3c]
push edx
mov ecx, dword [ebp - 0x630]
call fcn.00452ce0
mov dword [ebp - 0x76c], eax
mov eax, dword [ebp - 0x76c]
mov dword [ebp - 0x770], eax
push 0
push 2
call dword [ebp - 0x770]
mov dword [ebp - 0x550], eax
cmp dword [ebp - 0x550], 0xffffffff
jne 0x4d196b
xor al, al
jmp 0x4d4972
mov dword [ebp - 0x324], 0x22c
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x774], ecx
lea edx, [ebp - 0x324]
push edx
mov eax, dword [ebp - 0x550]
push eax
call dword [ebp - 0x774]
test eax, eax
jne 0x4d19aa
mov ecx, dword [ebp - 0x550]
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor al, al
jmp 0x4d4972
mov edx, dword [ebp + 8]
push edx
lea ecx, [ebp - 0x74]
call fcn.0042f200
mov dword [ebp - 4], 0
lea eax, [ebp - 0xa30]
push eax
lea ecx, [ebp - 0x74]
call fcn.00450b00
mov ecx, dword [eax]
mov dword [ebp - 0x7d8], ecx
mov edx, dword [ebp - 0x7d8]
mov dword [ebp - 0x780], edx
lea eax, [ebp - 0xa2c]
push eax
lea ecx, [ebp - 0x74]
call fcn.00452c00
mov ecx, dword [eax]
mov dword [ebp - 0x778], ecx
mov edx, dword [ebp - 0x778]
mov dword [ebp - 0x784], edx
lea eax, [ebp - 0xa34]
push eax
lea ecx, [ebp - 0x74]
call fcn.00450b00
mov ecx, dword [eax]
mov dword [ebp - 0x77c], ecx
mov edx, dword [ebp - 0x77c]
mov dword [ebp - 0x788], edx
push fcn.00a962ef
mov eax, dword [ebp - 0x780]
push eax
mov ecx, dword [ebp - 0x784]
push ecx
mov edx, dword [ebp - 0x788]
push edx
lea eax, [ebp - 0xa20]
push eax
call fcn.00439de0
mov dword [ebp - 0xa38], 2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, 4
imul edx, ecx, 0
mov dword [ebp + edx - 0x44], eax
mov eax, 4
imul ecx, eax, 0
mov eax, dword [ebp + ecx - 0x44]
cdq
sub eax, edx
sar eax, 1
mov edx, 4
shl edx, 0
mov dword [ebp + edx - 0x44], eax
lea ecx, [ebp - 0xf8]
call fcn.00478f10
mov byte [ebp - 4], 1
push 8
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0xf8]
call fcn.0047c8c0
lea ecx, [ebp - 0x74]
push ecx
lea ecx, [ebp - 0xf8]
call fcn.0047c7d0
lea ecx, [ebp - 0xf8]
call fcn.0047a800
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x88]
call fcn.0047cd10
mov dword [ebp - 0x548], 0
jmp 0x4d1aef
mov edx, dword [ebp - 0x548]
add edx, 1
mov dword [ebp - 0x548], edx
cmp dword [ebp - 0x548], 5
jge 0x4d1b1b
lea ecx, [ebp - 0xf8]
call fcn.0047cbb0
mov ecx, dword [ebp - 0x548]
mov edx, dword [ebp - 0x548]
mov eax, dword [eax + edx*4]
mov dword [ebp + ecx*4 - 0x88], eax
jmp 0x4d1ae0
mov dword [ebp - 0x338], 0
mov dword [ebp - 0x33c], 0
xorps xmm0, xmm0
movsd qword [ebp - 0x588], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x570], xmm0
xorps xmm0, xmm0
movsd qword [ebp - 0x570], xmm0
jmp 0x4d1b6a
movsd xmm0, qword [ebp - 0x570]
addsd xmm0, qword [0xabbaa0]
movsd qword [ebp - 0x570], xmm0
movsd xmm0, qword [0xabde00]
comisd xmm0, xmmword [ebp - 0x570]
jbe 0x4d1c1b
movsd xmm0, qword [0xabdc78]
mulsd xmm0, qword [ebp - 0x570]
mulsd xmm0, qword [ebp - 0x570]
movsd xmm1, qword [ebp - 0x570]
mulsd xmm1, qword [ebp - 0x570]
subsd xmm0, xmm1
movsd xmm1, qword [0xabdae0]
mulsd xmm1, qword [ebp - 0x570]
mulsd xmm1, qword [ebp - 0x570]
addsd xmm1, qword [0xabdb40]
divsd xmm0, xmm1
addsd xmm0, qword [ebp - 0x588]
movsd qword [ebp - 0x588], xmm0
movsd xmm0, qword [ebp - 0x588]
comisd xmm0, xmmword [0xabdb90]
jbe 0x4d1c16
movsd xmm0, qword [0xabda28]
mulsd xmm0, qword [ebp - 0x570]
movsd xmm1, qword [ebp - 0x588]
subsd xmm1, xmm0
movsd qword [ebp - 0x588], xmm1
jmp 0x4d1b52
xorps xmm0, xmm0
comisd xmm0, xmmword [ebp - 0x588]
jbe 0x4d1c61
and eax, 0x34423150
pop ebx
sub eax, 0x5f545872
dec ebp
dec edi
inc ebx
cmp byte [ebx], bh
insd dword es:[edi], dx
inc esp
pop ecx
cmp dword [ecx + 0x19], ebx
das
push ds
das
and dh, byte [ecx]
sbb dword [edx], esi
and eax, 0x1f271826
sub byte [edx], bl
sub dword [ebx], esp
xor dword [ecx], esp
sub dword [eax], esp
das
and ch, byte [esi]
and ebp, dword [ecx]
and ch, byte [ebx]
and dh, byte [ecx + ebp*8]
dec esi
sub eax, dword [eax]
add bh, al
test eax, ecx
cld
invalid
mov dword [ebp - 0x338], 0x4d1c3e
mov dword [ebp - 0x33c], 0x4d1c28
mov ecx, dword [ebp - 0x338]
mov dword [ebp - 0x3dc], ecx
mov edx, dword [ebp - 0x33c]
mov dword [ebp - 0x78c], edx
mov byte [ebp - 0x45f], 0x1a
mov dword [ebp - 0x3bc], 0
jmp 0x4d1caf
mov eax, dword [ebp - 0x3bc]
add eax, 1
mov dword [ebp - 0x3bc], eax
cmp dword [ebp - 0x3bc], 0x100
jae 0x4d1cd0
mov ecx, dword [ebp - 0x3bc]
mov dl, byte [ebp - 0x3bc]
mov byte [ebp + ecx - 0x748], dl
jmp 0x4d1ca0
mov dword [ebp - 0x510], 0
mov byte [ebp - 0x353], 0
mov dword [ebp - 0x3bc], 0xff
jmp 0x4d1cfc
mov eax, dword [ebp - 0x3bc]
sub eax, 1
mov dword [ebp - 0x3bc], eax
cmp dword [ebp - 0x3bc], 0
jbe 0x4d1f6c
mov dword [ebp - 0x5ec], 0
mov dword [ebp - 0x5b8], 1
mov ecx, dword [ebp - 0x5b8]
cmp ecx, dword [ebp - 0x3bc]
jae 0x4d1d3d
mov edx, dword [ebp - 0x5b8]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x5b8], eax
jmp 0x4d1d1d
mov ecx, dword [ebp - 0x510]
mov dword [ebp - 0x624], ecx
cmp dword [ebp - 0x624], 3
ja case.default.0x4d1d5c
mov edx, dword [ebp - 0x624]
jmp dword [edx*4 + 0x4d49b0]
movzx eax, byte [ebp - 0x353]
movzx ebx, byte [ebp + eax - 0x748]
movsd xmm0, qword [ebp - 0x588]
call fcn.00a40f60
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x353], bl
jmp 0x4d1e45
movzx ecx, byte [ebp - 0x353]
movzx ebx, byte [ebp + ecx - 0x748]
movsd xmm0, qword [ebp - 0x588]
call fcn.00a40f60
shr eax, 8
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x353], bl
jmp 0x4d1e45
movzx edx, byte [ebp - 0x353]
movzx ebx, byte [ebp + edx - 0x748]
movsd xmm0, qword [ebp - 0x588]
call fcn.00a40f60
shr eax, 0x10
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x353], bl
jmp 0x4d1e45
movzx eax, byte [ebp - 0x353]
movzx ebx, byte [ebp + eax - 0x748]
movsd xmm0, qword [ebp - 0x588]
call fcn.00a40f60
shr eax, 0x18
and eax, 0xff
add ebx, eax
mov byte [ebp - 0x353], bl
jmp 0x4d1e45
movzx ecx, byte [ebp - 0x353]
movzx edx, byte [ebp + ecx - 0x748]
mov eax, dword [ebp - 0x78c]
add eax, dword [ebp - 0x510]
movzx ecx, byte [eax - 4]
add edx, ecx
mov byte [ebp - 0x353], dl
mov edx, dword [ebp - 0x510]
add edx, 1
mov dword [ebp - 0x510], edx
movzx eax, byte [ebp - 0x45f]
cmp dword [ebp - 0x510], eax
jb 0x4d1e83
mov dword [ebp - 0x510], 0
movzx ecx, byte [ebp - 0x45f]
movzx edx, byte [ebp - 0x353]
add edx, ecx
mov byte [ebp - 0x353], dl
movzx eax, byte [ebp - 0x353]
and eax, dword [ebp - 0x5b8]
mov dword [ebp - 0x4c0], eax
mov ecx, dword [ebp - 0x5ec]
add ecx, 1
mov dword [ebp - 0x5ec], ecx
cmp dword [ebp - 0x5ec], 0xb
jbe 0x4d1ec2
mov eax, dword [ebp - 0x4c0]
xor edx, edx
div dword [ebp - 0x3bc]
mov dword [ebp - 0x4c0], edx
mov edx, dword [ebp - 0x4c0]
cmp edx, dword [ebp - 0x3bc]
ja 0x4d1d3d
mov eax, dword [ebp - 0x3bc]
cmp eax, dword [ebp - 0x4c0]
je 0x4d1f67
mov ecx, dword [ebp - 0x4c0]
movzx edx, byte [ebp + ecx - 0x748]
mov eax, dword [ebp - 0x3bc]
movzx ecx, byte [ebp + eax - 0x748]
xor ecx, edx
mov edx, dword [ebp - 0x3bc]
mov byte [ebp + edx - 0x748], cl
mov eax, dword [ebp - 0x3bc]
movzx ecx, byte [ebp + eax - 0x748]
mov edx, dword [ebp - 0x4c0]
movzx eax, byte [ebp + edx - 0x748]
xor eax, ecx
mov ecx, dword [ebp - 0x4c0]
mov byte [ebp + ecx - 0x748], al
mov edx, dword [ebp - 0x4c0]
movzx eax, byte [ebp + edx - 0x748]
mov ecx, dword [ebp - 0x3bc]
movzx edx, byte [ebp + ecx - 0x748]
xor edx, eax
mov eax, dword [ebp - 0x3bc]
mov byte [ebp + eax - 0x748], dl
jmp 0x4d1ced
mov ecx, 1
shl ecx, 0
mov dl, byte [ebp + ecx - 0x748]
mov byte [ebp - 0x33d], dl
mov eax, 1
imul ecx, eax, 3
mov dl, byte [ebp + ecx - 0x748]
mov byte [ebp - 0x33e], dl
mov eax, 1
imul ecx, eax, 5
mov dl, byte [ebp + ecx - 0x748]
mov byte [ebp - 0x346], dl
mov eax, 1
imul ecx, eax, 7
mov dl, byte [ebp + ecx - 0x748]
mov byte [ebp - 0x33f], dl
movzx eax, byte [ebp - 0x353]
mov cl, byte [ebp + eax - 0x748]
mov byte [ebp - 0x341], cl
mov dword [ebp - 0x628], 0x1e
cmp dword [ebp - 0x628], 2
jle 0x4d4762
mov edx, dword [ebp - 0x628]
and edx, 1
jne 0x4d4762
mov dword [ebp - 0x35c], 0
mov dword [ebp - 0x374], 0
mov eax, dword [ebp - 0x374]
add eax, 1
mov dword [ebp - 0x374], eax
mov dword [ebp - 0x3c8], 0
mov ecx, dword [ebp - 0x35c]
shl ecx, 1
mov dword [ebp - 0x3c8], ecx
mov dword [ebp - 0x394], 0
mov edx, dword [ebp - 0x3dc]
add edx, dword [ebp - 0x3c8]
movzx eax, byte [edx]
add eax, dword [ebp - 0x394]
mov dword [ebp - 0x394], eax
mov dword [ebp - 0x398], 0
mov ecx, dword [ebp - 0x398]
add ecx, 0x16
mov dword [ebp - 0x398], ecx
mov dword [ebp - 0x3d0], 0
mov edx, dword [ebp - 0x35c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x3d0], eax
mov dword [ebp - 0x39c], 0
mov ecx, dword [ebp - 0x3dc]
add ecx, dword [ebp - 0x3d0]
movzx edx, byte [ecx]
add edx, dword [ebp - 0x39c]
mov dword [ebp - 0x39c], edx
mov dword [ebp - 0x3a0], 0
mov eax, dword [ebp - 0x3a0]
add eax, 0x26
mov dword [ebp - 0x3a0], eax
mov dword [ebp - 0x3a4], 0
mov ecx, dword [ebp - 0x394]
sub ecx, dword [ebp - 0x398]
add ecx, dword [ebp - 0x3a4]
mov dword [ebp - 0x3a4], ecx
mov dword [ebp - 0x3a8], 0
mov edx, dword [ebp - 0x39c]
sub edx, dword [ebp - 0x3a0]
add edx, dword [ebp - 0x3a8]
mov dword [ebp - 0x3a8], edx
mov dword [ebp - 0x3d4], 0
mov eax, dword [ebp - 0x3a4]
shl eax, 4
mov dword [ebp - 0x3d4], eax
mov dword [ebp - 0x3cc], 0
mov ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x3cc], ecx
mov dword [ebp - 0x3d8], 0
mov edx, dword [ebp - 0x3d4]
or edx, dword [ebp - 0x3cc]
mov dword [ebp - 0x3d8], edx
mov byte [ebp - 0x347], 0
mov al, byte [ebp - 0x3d8]
mov byte [ebp - 0x347], al
mov byte [ebp - 0x345], 0
movzx ecx, byte [ebp - 0x341]
mov dl, byte [ebp + ecx - 0x748]
mov byte [ebp - 0x345], dl
movzx eax, byte [ebp - 0x33d]
movzx ecx, byte [ebp + eax - 0x748]
mov dword [ebp - 0x790], ecx
mov dl, byte [ebp - 0x33d]
add dl, 1
mov byte [ebp - 0x33d], dl
movzx eax, byte [ebp - 0x33e]
add eax, dword [ebp - 0x790]
mov byte [ebp - 0x33e], al
movzx ecx, byte [ebp - 0x33e]
movzx edx, byte [ebp - 0x341]
mov al, byte [ebp + ecx - 0x748]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x33f]
movzx edx, byte [ebp - 0x33e]
mov al, byte [ebp + ecx - 0x748]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x33d]
movzx edx, byte [ebp - 0x33f]
mov al, byte [ebp + ecx - 0x748]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x33d]
mov dl, byte [ebp - 0x345]
mov byte [ebp + ecx - 0x748], dl
movzx eax, byte [ebp - 0x345]
movzx ecx, byte [ebp + eax - 0x748]
movzx edx, byte [ebp - 0x346]
add edx, ecx
mov byte [ebp - 0x346], dl
movzx eax, byte [ebp - 0x347]
movzx ecx, byte [ebp - 0x33e]
movzx edx, byte [ebp + ecx - 0x748]
movzx ecx, byte [ebp - 0x33d]
movzx ecx, byte [ebp + ecx - 0x748]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x748]
xor eax, edx
movzx ecx, byte [ebp - 0x33f]
movzx edx, byte [ebp + ecx - 0x748]
movzx ecx, byte [ebp - 0x341]
movzx ecx, byte [ebp + ecx - 0x748]
add edx, ecx
movzx ecx, byte [ebp - 0x346]
movzx ecx, byte [ebp + ecx - 0x748]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x748]
movzx ecx, byte [ebp + edx - 0x748]
xor eax, ecx
mov byte [ebp - 0x33f], al
mov dl, byte [ebp - 0x347]
mov byte [ebp - 0x341], dl
mov al, byte [ebp - 0x33f]
mov byte [ebp - 0x34f], al
cmp dword [ebp - 0x35c], 0
jle 0x4d22fc
mov ecx, dword [ebp - 0x35c]
mov dl, byte [ebp - 0x34f]
mov byte [ebp + ecx - 0x21], dl
mov eax, dword [ebp - 0x35c]
add eax, 1
mov dword [ebp - 0x35c], eax
mov ecx, dword [ebp - 0x374]
add ecx, 1
mov dword [ebp - 0x374], ecx
mov edx, dword [ebp - 0x35c]
shl edx, 1
mov dword [ebp - 0x3c8], edx
mov eax, dword [ebp - 0x3dc]
add eax, dword [ebp - 0x3c8]
movzx ecx, byte [eax]
mov dword [ebp - 0x394], ecx
mov dword [ebp - 0x398], 0x16
mov edx, dword [ebp - 0x35c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x3d0], eax
mov ecx, dword [ebp - 0x3dc]
add ecx, dword [ebp - 0x3d0]
movzx edx, byte [ecx]
mov dword [ebp - 0x39c], edx
mov dword [ebp - 0x3a0], 0x26
mov eax, dword [ebp - 0x394]
sub eax, dword [ebp - 0x398]
mov dword [ebp - 0x3a4], eax
mov ecx, dword [ebp - 0x39c]
sub ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x3a8], ecx
mov edx, dword [ebp - 0x3a4]
shl edx, 4
mov dword [ebp - 0x3d4], edx
mov eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x3cc], eax
mov ecx, dword [ebp - 0x3d4]
or ecx, dword [ebp - 0x3cc]
mov dword [ebp - 0x3d8], ecx
mov dl, byte [ebp - 0x3d8]
mov byte [ebp - 0x347], dl
movss xmm0, dword [0xabe594]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [0xabe4e8]
movss dword [ebp - 0x3c4], xmm0
movss xmm0, dword [0xabe3a8]
movss dword [ebp - 0x3c0], xmm0
movss xmm0, dword [ebp - 0x380]
addss xmm0, dword [ebp - 0x3c0]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x380]
addss xmm0, dword [ebp - 0x3c0]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x380]
addss xmm0, dword [ebp - 0x3c0]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x380]
comiss xmm0, dword [ebp - 0x3c0]
jbe 0x4d24bd
movss xmm0, dword [ebp - 0x3c4]
subss xmm0, dword [ebp - 0x3c0]
movss dword [ebp - 0x3c4], xmm0
movss xmm0, dword [ebp - 0x3c4]
mulss xmm0, dword [ebp - 0x3c0]
movss dword [ebp - 0x3c4], xmm0
movss xmm0, dword [ebp - 0x380]
mulss xmm0, dword [ebp - 0x3c4]
movss dword [ebp - 0x380], xmm0
movzx eax, byte [ebp - 0x341]
mov cl, byte [ebp + eax - 0x748]
mov byte [ebp - 0x345], cl
jmp 0x4d25f0
movss xmm0, dword [ebp - 0x380]
addss xmm0, dword [ebp - 0x3c0]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x3c4]
addss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x3c4], xmm0
movss xmm0, dword [ebp - 0x3c0]
addss xmm0, dword [ebp - 0x3c4]
movss dword [ebp - 0x3c0], xmm0
movss xmm0, dword [ebp - 0x3c0]
subss xmm0, dword [ebp - 0x3c4]
movss dword [ebp - 0x3c0], xmm0
movss xmm0, dword [ebp - 0x380]
addss xmm0, dword [ebp - 0x3c0]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x3c0]
subss xmm0, dword [ebp - 0x3c4]
movss dword [ebp - 0x3c0], xmm0
movss xmm0, dword [ebp - 0x380]
comiss xmm0, dword [ebp - 0x3c4]
jbe 0x4d25a8
movss xmm0, dword [ebp - 0x3c4]
divss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x3c4], xmm0
movss xmm0, dword [ebp - 0x3c4]
subss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x3c4], xmm0
movss xmm0, dword [ebp - 0x380]
mulss xmm0, dword [ebp - 0x3c0]
movss dword [ebp - 0x380], xmm0
jmp 0x4d25f0
movss xmm0, dword [ebp - 0x3c0]
mulss xmm0, dword [ebp - 0x3c4]
movss dword [ebp - 0x3c0], xmm0
movss xmm0, dword [ebp - 0x380]
subss xmm0, dword [ebp - 0x3c0]
movss dword [ebp - 0x380], xmm0
movss xmm0, dword [ebp - 0x3c4]
addss xmm0, dword [ebp - 0x380]
movss dword [ebp - 0x3c4], xmm0
movzx edx, byte [ebp - 0x33d]
movzx eax, byte [ebp + edx - 0x748]
mov dword [ebp - 0x794], eax
mov cl, byte [ebp - 0x33d]
add cl, 1
mov byte [ebp - 0x33d], cl
movzx edx, byte [ebp - 0x33e]
add edx, dword [ebp - 0x794]
mov byte [ebp - 0x33e], dl
movzx eax, byte [ebp - 0x33e]
movzx ecx, byte [ebp - 0x341]
mov dl, byte [ebp + eax - 0x748]
mov byte [ebp + ecx - 0x748], dl
movzx eax, byte [ebp - 0x33f]
movzx ecx, byte [ebp - 0x33e]
mov dl, byte [ebp + eax - 0x748]
mov byte [ebp + ecx - 0x748], dl
movzx eax, byte [ebp - 0x33d]
movzx ecx, byte [ebp - 0x33f]
mov dl, byte [ebp + eax - 0x748]
mov byte [ebp + ecx - 0x748], dl
movzx eax, byte [ebp - 0x33d]
mov cl, byte [ebp - 0x345]
mov byte [ebp + eax - 0x748], cl
movzx edx, byte [ebp - 0x345]
movzx eax, byte [ebp + edx - 0x748]
movzx ecx, byte [ebp - 0x346]
add ecx, eax
mov byte [ebp - 0x346], cl
movzx edx, byte [ebp - 0x347]
movzx eax, byte [ebp - 0x33e]
movzx ecx, byte [ebp + eax - 0x748]
movzx eax, byte [ebp - 0x33d]
movzx eax, byte [ebp + eax - 0x748]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x748]
xor edx, ecx
movzx eax, byte [ebp - 0x33f]
movzx ecx, byte [ebp + eax - 0x748]
movzx eax, byte [ebp - 0x341]
movzx eax, byte [ebp + eax - 0x748]
add ecx, eax
movzx eax, byte [ebp - 0x346]
movzx eax, byte [ebp + eax - 0x748]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x748]
movzx eax, byte [ebp + ecx - 0x748]
xor edx, eax
mov byte [ebp - 0x33f], dl
mov cl, byte [ebp - 0x347]
mov byte [ebp - 0x341], cl
mov dl, byte [ebp - 0x33f]
mov byte [ebp - 0x34f], dl
cmp dword [ebp - 0x35c], 0
jle 0x4d2764
mov eax, dword [ebp - 0x35c]
mov cl, byte [ebp - 0x34f]
mov byte [ebp + eax - 0x21], cl
mov edx, dword [ebp - 0x35c]
add edx, 1
mov dword [ebp - 0x35c], edx
mov eax, dword [ebp - 0x374]
add eax, 1
mov dword [ebp - 0x374], eax
mov ecx, dword [ebp - 0x35c]
shl ecx, 1
mov dword [ebp - 0x3c8], ecx
mov edx, dword [ebp - 0x3dc]
add edx, dword [ebp - 0x3c8]
movzx eax, byte [edx]
mov dword [ebp - 0x394], eax
mov dword [ebp - 0x398], 0x16
mov ecx, dword [ebp - 0x35c]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x3d0], edx
mov eax, dword [ebp - 0x3dc]
add eax, dword [ebp - 0x3d0]
movzx ecx, byte [eax]
mov dword [ebp - 0x39c], ecx
mov dword [ebp - 0x3a0], 0x26
mov edx, dword [ebp - 0x394]
sub edx, dword [ebp - 0x398]
mov dword [ebp - 0x3a4], edx
mov eax, dword [ebp - 0x39c]
sub eax, dword [ebp - 0x3a0]
mov dword [ebp - 0x3a8], eax
mov ecx, dword [ebp - 0x3a4]
shl ecx, 4
mov dword [ebp - 0x3d4], ecx
mov edx, dword [ebp - 0x3a8]
mov dword [ebp - 0x3cc], edx
mov eax, dword [ebp - 0x3d4]
or eax, dword [ebp - 0x3cc]
mov dword [ebp - 0x3d8], eax
mov cl, byte [ebp - 0x3d8]
mov byte [ebp - 0x347], cl
movzx edx, byte [ebp - 0x341]
mov al, byte [ebp + edx - 0x748]
mov byte [ebp - 0x345], al
movzx ecx, byte [ebp - 0x33d]
movzx edx, byte [ebp + ecx - 0x748]
mov dword [ebp - 0x798], edx
mov al, byte [ebp - 0x33d]
add al, 1
mov byte [ebp - 0x33d], al
movzx ecx, byte [ebp - 0x33e]
add ecx, dword [ebp - 0x798]
mov byte [ebp - 0x33e], cl
movzx edx, byte [ebp - 0x33e]
movzx eax, byte [ebp - 0x341]
mov cl, byte [ebp + edx - 0x748]
mov byte [ebp + eax - 0x748], cl
movzx edx, byte [ebp - 0x33f]
movzx eax, byte [ebp - 0x33e]
mov cl, byte [ebp + edx - 0x748]
mov byte [ebp + eax - 0x748], cl
movzx edx, byte [ebp - 0x33d]
movzx eax, byte [ebp - 0x33f]
mov cl, byte [ebp + edx - 0x748]
mov byte [ebp + eax - 0x748], cl
movzx edx, byte [ebp - 0x33d]
mov al, byte [ebp - 0x345]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x345]
movzx edx, byte [ebp + ecx - 0x748]
movzx eax, byte [ebp - 0x346]
add eax, edx
mov byte [ebp - 0x346], al
movzx ecx, byte [ebp - 0x347]
movzx edx, byte [ebp - 0x33e]
movzx eax, byte [ebp + edx - 0x748]
movzx edx, byte [ebp - 0x33d]
movzx edx, byte [ebp + edx - 0x748]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x748]
xor ecx, eax
movzx edx, byte [ebp - 0x33f]
movzx eax, byte [ebp + edx - 0x748]
movzx edx, byte [ebp - 0x341]
movzx edx, byte [ebp + edx - 0x748]
add eax, edx
movzx edx, byte [ebp - 0x346]
movzx edx, byte [ebp + edx - 0x748]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x748]
movzx edx, byte [ebp + eax - 0x748]
xor ecx, edx
mov byte [ebp - 0x33f], cl
mov al, byte [ebp - 0x347]
mov byte [ebp - 0x341], al
mov cl, byte [ebp - 0x33f]
mov byte [ebp - 0x34f], cl
cmp dword [ebp - 0x35c], 0
jle 0x4d29c0
mov edx, dword [ebp - 0x35c]
mov al, byte [ebp - 0x34f]
mov byte [ebp + edx - 0x21], al
mov ecx, dword [ebp - 0x374]
add ecx, 4
mov dword [ebp - 0x374], ecx
mov edx, dword [ebp - 0x35c]
add edx, 1
mov dword [ebp - 0x5e8], edx
jmp 0x4d29ef
mov eax, dword [ebp - 0x5e8]
add eax, 1
mov dword [ebp - 0x5e8], eax
mov ecx, dword [ebp - 0x5e8]
cmp ecx, dword [ebp - 0x374]
jge 0x4d312a
mov edx, dword [ebp - 0x35c]
add edx, 1
mov dword [ebp - 0x35c], edx
mov eax, dword [ebp - 0x35c]
shl eax, 1
mov dword [ebp - 0x3c8], eax
mov ecx, dword [ebp - 0x3dc]
add ecx, dword [ebp - 0x3c8]
movzx edx, byte [ecx]
mov dword [ebp - 0x394], edx
mov dword [ebp - 0x398], 0x16
mov eax, dword [ebp - 0x35c]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x3d0], ecx
mov edx, dword [ebp - 0x3dc]
add edx, dword [ebp - 0x3d0]
movzx eax, byte [edx]
mov dword [ebp - 0x39c], eax
mov dword [ebp - 0x3a0], 0x26
movsd xmm0, qword [0xabe238]
movsd qword [ebp - 0x53c], xmm0
movsd xmm0, qword [0xabe190]
movsd qword [ebp - 0x750], xmm0
movsd xmm0, qword [0xabe0a0]
movsd qword [ebp - 0x578], xmm0
movsd xmm0, qword [0xabdf88]
movsd qword [ebp - 0x5a8], xmm0
movsd xmm0, qword [0xabde88]
movsd qword [ebp - 0x580], xmm0
movsd xmm0, qword [0xabdcf8]
movsd qword [ebp - 0x544], xmm0
movsd xmm0, qword [ebp - 0x53c]
subsd xmm0, qword [ebp - 0x544]
movsd qword [ebp - 0x53c], xmm0
movsd xmm0, qword [ebp - 0x578]
addsd xmm0, qword [ebp - 0x544]
movsd qword [ebp - 0x578], xmm0
movsd xmm0, qword [ebp - 0x5a8]
addsd xmm0, qword [ebp - 0x544]
movsd qword [ebp - 0x5a8], xmm0
movsd xmm0, qword [ebp - 0x53c]
addsd xmm0, qword [ebp - 0x544]
movsd qword [ebp - 0x53c], xmm0
movsd xmm0, qword [ebp - 0x578]
mulsd xmm0, qword [ebp - 0x544]
movsd qword [ebp - 0x578], xmm0
movsd xmm0, qword [ebp - 0x578]
addsd xmm0, qword [ebp - 0x544]
movsd qword [ebp - 0x578], xmm0
movsd xmm0, qword [ebp - 0x544]
comisd xmm0, xmmword [ebp - 0x578]
jbe 0x4d2c07
movsd xmm0, qword [ebp - 0x53c]
addsd xmm0, qword [ebp - 0x578]
movsd qword [ebp - 0x53c], xmm0
movsd xmm0, qword [ebp - 0x580]
mulsd xmm0, qword [ebp - 0x53c]
movsd qword [ebp - 0x580], xmm0
movsd xmm0, qword [ebp - 0x750]
addsd xmm0, qword [ebp - 0x5a8]
movsd qword [ebp - 0x750], xmm0
movsd xmm0, qword [ebp - 0x544]
subsd xmm0, qword [ebp - 0x750]
movsd qword [ebp - 0x544], xmm0
movsd xmm0, qword [ebp - 0x578]
mulsd xmm0, qword [ebp - 0x580]
movsd qword [ebp - 0x578], xmm0
movsd xmm0, qword [ebp - 0x53c]
mulsd xmm0, qword [ebp - 0x578]
movsd qword [ebp - 0x53c], xmm0
jmp 0x4d2ca9
movsd xmm0, qword [ebp - 0x5a8]
addsd xmm0, qword [ebp - 0x580]
movsd qword [ebp - 0x5a8], xmm0
movsd xmm0, qword [ebp - 0x53c]
subsd xmm0, qword [ebp - 0x750]
movsd qword [ebp - 0x53c], xmm0
movsd xmm0, qword [ebp - 0x5a8]
subsd xmm0, qword [ebp - 0x580]
movsd qword [ebp - 0x5a8], xmm0
movsd xmm0, qword [ebp - 0x580]
addsd xmm0, qword [ebp - 0x544]
movsd qword [ebp - 0x580], xmm0
movsd xmm0, qword [ebp - 0x580]
mulsd xmm0, qword [ebp - 0x544]
movsd qword [ebp - 0x580], xmm0
movsd xmm0, qword [ebp - 0x5a8]
addsd xmm0, qword [ebp - 0x580]
movsd qword [ebp - 0x5a8], xmm0
mov ecx, dword [ebp - 0x394]
sub ecx, dword [ebp - 0x398]
mov dword [ebp - 0x3a4], ecx
mov edx, dword [ebp - 0x39c]
sub edx, dword [ebp - 0x3a0]
mov dword [ebp - 0x3a8], edx
mov eax, dword [ebp - 0x3a4]
shl eax, 4
mov dword [ebp - 0x3d4], eax
mov ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x3cc], ecx
movss xmm0, dword [0xabe4ac]
movss dword [ebp - 0x388], xmm0
movss xmm0, dword [0xabe420]
movss dword [ebp - 0x390], xmm0
movss xmm0, dword [0xabe388]
movss dword [ebp - 0x414], xmm0
movss xmm0, dword [0xabe2e8]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x388]
addss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x388], xmm0
movss xmm0, dword [ebp - 0x414]
addss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x414], xmm0
movss xmm0, dword [ebp - 0x414]
addss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x414], xmm0
movss xmm0, dword [ebp - 0x388]
subss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x388], xmm0
movss xmm0, dword [ebp - 0x414]
comiss xmm0, dword [ebp - 0x378]
jbe 0x4d2dfe
movss xmm0, dword [ebp - 0x378]
addss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x390]
subss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x390], xmm0
movss xmm0, dword [ebp - 0x378]
subss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x390]
addss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x390], xmm0
mov edx, dword [ebp - 0x3d4]
or edx, dword [ebp - 0x3cc]
mov dword [ebp - 0x3d8], edx
jmp 0x4d2f91
movss xmm0, dword [ebp - 0x388]
addss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x388], xmm0
movss xmm0, dword [ebp - 0x388]
mulss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x388], xmm0
movss xmm0, dword [ebp - 0x388]
addss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x388], xmm0
movss xmm0, dword [ebp - 0x390]
subss xmm0, dword [ebp - 0x414]
movss dword [ebp - 0x390], xmm0
movss xmm0, dword [ebp - 0x388]
addss xmm0, dword [ebp - 0x414]
movss dword [ebp - 0x388], xmm0
movss xmm0, dword [ebp - 0x378]
mulss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x390]
addss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x390], xmm0
movss xmm0, dword [ebp - 0x378]
divss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x414]
comiss xmm0, dword [ebp - 0x388]
jbe 0x4d2f31
movss xmm0, dword [ebp - 0x378]
divss xmm0, dword [ebp - 0x388]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x378]
subss xmm0, dword [ebp - 0x388]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x388]
mulss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x388], xmm0
movss xmm0, dword [ebp - 0x414]
addss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x414], xmm0
jmp 0x4d2f91
movss xmm0, dword [ebp - 0x414]
mulss xmm0, dword [ebp - 0x378]
movss dword [ebp - 0x414], xmm0
movss xmm0, dword [ebp - 0x388]
divss xmm0, dword [ebp - 0x390]
movss dword [ebp - 0x388], xmm0
movss xmm0, dword [ebp - 0x378]
divss xmm0, dword [ebp - 0x388]
movss dword [ebp - 0x378], xmm0
movss xmm0, dword [ebp - 0x390]
divss xmm0, dword [ebp - 0x414]
movss dword [ebp - 0x390], xmm0
mov al, byte [ebp - 0x3d8]
mov byte [ebp - 0x347], al
movzx ecx, byte [ebp - 0x341]
mov dl, byte [ebp + ecx - 0x748]
mov byte [ebp - 0x345], dl
movzx eax, byte [ebp - 0x33d]
movzx ecx, byte [ebp + eax - 0x748]
mov dword [ebp - 0x7cc], ecx
mov dl, byte [ebp - 0x33d]
add dl, 1
mov byte [ebp - 0x33d], dl
movzx eax, byte [ebp - 0x33e]
add eax, dword [ebp - 0x7cc]
mov byte [ebp - 0x33e], al
movzx ecx, byte [ebp - 0x33e]
movzx edx, byte [ebp - 0x341]
mov al, byte [ebp + ecx - 0x748]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x33f]
movzx edx, byte [ebp - 0x33e]
mov al, byte [ebp + ecx - 0x748]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x33d]
movzx edx, byte [ebp - 0x33f]
mov al, byte [ebp + ecx - 0x748]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x33d]
mov dl, byte [ebp - 0x345]
mov byte [ebp + ecx - 0x748], dl
movzx eax, byte [ebp - 0x345]
movzx ecx, byte [ebp + eax - 0x748]
movzx edx, byte [ebp - 0x346]
add edx, ecx
mov byte [ebp - 0x346], dl
movzx eax, byte [ebp - 0x347]
movzx ecx, byte [ebp - 0x33e]
movzx edx, byte [ebp + ecx - 0x748]
movzx ecx, byte [ebp - 0x33d]
movzx ecx, byte [ebp + ecx - 0x748]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x748]
xor eax, edx
movzx ecx, byte [ebp - 0x33f]
movzx edx, byte [ebp + ecx - 0x748]
movzx ecx, byte [ebp - 0x341]
movzx ecx, byte [ebp + ecx - 0x748]
add edx, ecx
movzx ecx, byte [ebp - 0x346]
movzx ecx, byte [ebp + ecx - 0x748]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x748]
movzx ecx, byte [ebp + edx - 0x748]
xor eax, ecx
mov byte [ebp - 0x33f], al
mov dl, byte [ebp - 0x347]
mov byte [ebp - 0x341], dl
mov al, byte [ebp - 0x33f]
mov byte [ebp - 0x34f], al
cmp dword [ebp - 0x35c], 0
jle 0x4d3125
mov ecx, dword [ebp - 0x35c]
mov dl, byte [ebp - 0x34f]
mov byte [ebp + ecx - 0x21], dl
jmp 0x4d29e0
movsd xmm0, qword [0xabe200]
movsd qword [ebp - 0x4d8], xmm0
movsd xmm0, qword [0xabe180]
movsd qword [ebp - 0x508], xmm0
movsd xmm0, qword [0xabe0d8]
movsd qword [ebp - 0x4ec], xmm0
movsd xmm0, qword [0xabdfe0]
movsd qword [ebp - 0x4a4], xmm0
movsd xmm0, qword [0xabdf08]
movsd qword [ebp - 0x498], xmm0
movsd xmm0, qword [0xabde08]
movsd qword [ebp - 0x4ac], xmm0
movsd xmm0, qword [0xabdca8]
movsd qword [ebp - 0x420], xmm0
movsd xmm0, qword [ebp - 0x4d8]
addsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x4d8], xmm0
movsd xmm0, qword [ebp - 0x508]
addsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x508], xmm0
movsd xmm0, qword [ebp - 0x508]
addsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x508], xmm0
movsd xmm0, qword [ebp - 0x4ac]
addsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x4ac], xmm0
movsd xmm0, qword [ebp - 0x4a4]
mulsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x4a4], xmm0
movsd xmm0, qword [ebp - 0x4ec]
addsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x4ec], xmm0
movsd xmm0, qword [ebp - 0x498]
addsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x498], xmm0
movsd xmm0, qword [ebp - 0x4a4]
comisd xmm0, xmmword [ebp - 0x420]
jbe 0x4d3314
movsd xmm0, qword [ebp - 0x4ac]
mulsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x4ac], xmm0
movsd xmm0, qword [ebp - 0x4ac]
mulsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x4ac], xmm0
movsd xmm0, qword [ebp - 0x4ec]
subsd xmm0, qword [ebp - 0x4a4]
movsd qword [ebp - 0x4ec], xmm0
movsd xmm0, qword [ebp - 0x4a4]
mulsd xmm0, qword [ebp - 0x498]
movsd qword [ebp - 0x4a4], xmm0
movsd xmm0, qword [ebp - 0x508]
subsd xmm0, qword [ebp - 0x4ec]
movsd qword [ebp - 0x508], xmm0
movsd xmm0, qword [ebp - 0x420]
addsd xmm0, qword [ebp - 0x4d8]
movsd qword [ebp - 0x420], xmm0
movsd xmm0, qword [ebp - 0x420]
addsd xmm0, qword [ebp - 0x4d8]
movsd qword [ebp - 0x420], xmm0
mov eax, dword [ebp - 0x374]
add eax, 1
mov dword [ebp - 0x374], eax
jmp 0x4d35cf
movsd xmm0, qword [ebp - 0x4ac]
subsd xmm0, qword [ebp - 0x4d8]
movsd qword [ebp - 0x4ac], xmm0
movsd xmm0, qword [ebp - 0x420]
addsd xmm0, qword [ebp - 0x508]
movsd qword [ebp - 0x420], xmm0
movsd xmm0, qword [ebp - 0x420]
addsd xmm0, qword [ebp - 0x508]
movsd qword [ebp - 0x420], xmm0
movsd xmm0, qword [ebp - 0x4a4]
addsd xmm0, qword [ebp - 0x4ac]
movsd qword [ebp - 0x4a4], xmm0
movsd xmm0, qword [ebp - 0x420]
subsd xmm0, qword [ebp - 0x508]
movsd qword [ebp - 0x420], xmm0
movsd xmm0, qword [ebp - 0x4d8]
addsd xmm0, qword [ebp - 0x4ec]
movsd qword [ebp - 0x4d8], xmm0
movsd xmm0, qword [ebp - 0x4a4]
addsd xmm0, qword [ebp - 0x4ac]
movsd qword [ebp - 0x4a4], xmm0
movsd xmm0, qword [ebp - 0x498]
mulsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x498], xmm0
movsd xmm0, qword [ebp - 0x4d8]
subsd xmm0, qword [ebp - 0x4ec]
movsd qword [ebp - 0x4d8], xmm0
movsd xmm0, qword [ebp - 0x4ac]
addsd xmm0, qword [ebp - 0x4d8]
movsd qword [ebp - 0x4ac], xmm0
movsd xmm0, qword [ebp - 0x498]
mulsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x498], xmm0
movsd xmm0, qword [ebp - 0x508]
subsd xmm0, qword [ebp - 0x4a4]
movsd qword [ebp - 0x508], xmm0
movsd xmm0, qword [ebp - 0x498]
addsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x498], xmm0
movsd xmm0, qword [ebp - 0x4a4]
mulsd xmm0, qword [ebp - 0x4ac]
movsd qword [ebp - 0x4a4], xmm0
movsd xmm0, qword [ebp - 0x508]
comisd xmm0, xmmword [ebp - 0x420]
jbe 0x4d3527
movsd xmm0, qword [ebp - 0x4d8]
mulsd xmm0, qword [ebp - 0x4ec]
movsd qword [ebp - 0x4d8], xmm0
movsd xmm0, qword [ebp - 0x4d8]
subsd xmm0, qword [ebp - 0x4ec]
movsd qword [ebp - 0x4d8], xmm0
movsd xmm0, qword [ebp - 0x4ec]
mulsd xmm0, qword [ebp - 0x498]
movsd qword [ebp - 0x4ec], xmm0
movsd xmm0, qword [ebp - 0x420]
mulsd xmm0, qword [ebp - 0x508]
movsd qword [ebp - 0x420], xmm0
movsd xmm0, qword [ebp - 0x4ec]
mulsd xmm0, qword [ebp - 0x498]
movsd qword [ebp - 0x4ec], xmm0
movsd xmm0, qword [ebp - 0x4ec]
divsd xmm0, qword [ebp - 0x498]
movsd qword [ebp - 0x4ec], xmm0
movsd xmm0, qword [ebp - 0x4a4]
mulsd xmm0, qword [ebp - 0x4ac]
movsd qword [ebp - 0x4a4], xmm0
jmp 0x4d35cf
movsd xmm0, qword [ebp - 0x4a4]
divsd xmm0, qword [ebp - 0x498]
movsd qword [ebp - 0x4a4], xmm0
movsd xmm0, qword [ebp - 0x498]
divsd xmm0, qword [ebp - 0x4ac]
movsd qword [ebp - 0x498], xmm0
movsd xmm0, qword [ebp - 0x498]
mulsd xmm0, qword [ebp - 0x4ac]
movsd qword [ebp - 0x498], xmm0
movsd xmm0, qword [ebp - 0x4ac]
subsd xmm0, qword [ebp - 0x420]
movsd qword [ebp - 0x4ac], xmm0
movsd xmm0, qword [ebp - 0x4d8]
mulsd xmm0, qword [ebp - 0x508]
movsd qword [ebp - 0x4d8], xmm0
movsd xmm0, qword [ebp - 0x4a4]
subsd xmm0, qword [ebp - 0x498]
movsd qword [ebp - 0x4a4], xmm0
movsd xmm0, qword [ebp - 0x498]
addsd xmm0, qword [ebp - 0x4ac]
movsd qword [ebp - 0x498], xmm0
mov ecx, dword [ebp - 0x35c]
add ecx, 1
mov dword [ebp - 0x35c], ecx
mov edx, dword [ebp - 0x374]
add edx, 1
mov dword [ebp - 0x374], edx
mov eax, dword [ebp - 0x35c]
shl eax, 1
mov dword [ebp - 0x3c8], eax
mov ecx, dword [ebp - 0x3dc]
add ecx, dword [ebp - 0x3c8]
movzx edx, byte [ecx]
mov dword [ebp - 0x394], edx
mov dword [ebp - 0x398], 0x16
mov eax, dword [ebp - 0x35c]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x3d0], ecx
mov edx, dword [ebp - 0x3dc]
add edx, dword [ebp - 0x3d0]
movzx eax, byte [edx]
mov dword [ebp - 0x39c], eax
mov dword [ebp - 0x3a0], 0x26
mov ecx, dword [ebp - 0x394]
sub ecx, dword [ebp - 0x398]
mov dword [ebp - 0x3a4], ecx
mov edx, dword [ebp - 0x39c]
sub edx, dword [ebp - 0x3a0]
mov dword [ebp - 0x3a8], edx
mov eax, dword [ebp - 0x3a4]
shl eax, 4
mov dword [ebp - 0x3d4], eax
mov ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x3cc], ecx
mov edx, dword [ebp - 0x3d4]
or edx, dword [ebp - 0x3cc]
mov dword [ebp - 0x3d8], edx
mov al, byte [ebp - 0x3d8]
mov byte [ebp - 0x347], al
movzx ecx, byte [ebp - 0x341]
mov dl, byte [ebp + ecx - 0x748]
mov byte [ebp - 0x345], dl
movzx eax, byte [ebp - 0x33d]
movzx ecx, byte [ebp + eax - 0x748]
mov dword [ebp - 0x7c8], ecx
mov dl, byte [ebp - 0x33d]
add dl, 1
mov byte [ebp - 0x33d], dl
movzx eax, byte [ebp - 0x33e]
add eax, dword [ebp - 0x7c8]
mov byte [ebp - 0x33e], al
movzx ecx, byte [ebp - 0x33e]
movzx edx, byte [ebp - 0x341]
mov al, byte [ebp + ecx - 0x748]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x33f]
movzx edx, byte [ebp - 0x33e]
mov al, byte [ebp + ecx - 0x748]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x33d]
movzx edx, byte [ebp - 0x33f]
mov al, byte [ebp + ecx - 0x748]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x33d]
mov dl, byte [ebp - 0x345]
mov byte [ebp + ecx - 0x748], dl
movzx eax, byte [ebp - 0x345]
movzx ecx, byte [ebp + eax - 0x748]
movzx edx, byte [ebp - 0x346]
add edx, ecx
mov byte [ebp - 0x346], dl
movzx eax, byte [ebp - 0x347]
movzx ecx, byte [ebp - 0x33e]
movzx edx, byte [ebp + ecx - 0x748]
movzx ecx, byte [ebp - 0x33d]
movzx ecx, byte [ebp + ecx - 0x748]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x748]
xor eax, edx
movzx ecx, byte [ebp - 0x33f]
movzx edx, byte [ebp + ecx - 0x748]
movzx ecx, byte [ebp - 0x341]
movzx ecx, byte [ebp + ecx - 0x748]
add edx, ecx
movzx ecx, byte [ebp - 0x346]
movzx ecx, byte [ebp + ecx - 0x748]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x748]
movzx ecx, byte [ebp + edx - 0x748]
xor eax, ecx
mov byte [ebp - 0x33f], al
mov dl, byte [ebp - 0x347]
mov byte [ebp - 0x341], dl
mov al, byte [ebp - 0x33f]
mov byte [ebp - 0x34f], al
cmp dword [ebp - 0x35c], 0
jle 0x4d382e
mov ecx, dword [ebp - 0x35c]
mov dl, byte [ebp - 0x34f]
mov byte [ebp + ecx - 0x21], dl
mov eax, dword [ebp - 0x374]
add eax, 4
mov dword [ebp - 0x374], eax
mov ecx, dword [ebp - 0x35c]
add ecx, 1
mov dword [ebp - 0x5e4], ecx
jmp 0x4d385d
mov edx, dword [ebp - 0x5e4]
add edx, 1
mov dword [ebp - 0x5e4], edx
mov eax, dword [ebp - 0x5e4]
cmp eax, dword [ebp - 0x374]
jge 0x4d3e9b
mov ecx, dword [ebp - 0x35c]
add ecx, 1
mov dword [ebp - 0x35c], ecx
mov edx, dword [ebp - 0x35c]
shl edx, 1
mov dword [ebp - 0x3c8], edx
mov eax, dword [ebp - 0x3dc]
add eax, dword [ebp - 0x3c8]
movzx ecx, byte [eax]
mov dword [ebp - 0x394], ecx
mov dword [ebp - 0x398], 0x16
mov edx, dword [ebp - 0x35c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x3d0], eax
mov ecx, dword [ebp - 0x3dc]
add ecx, dword [ebp - 0x3d0]
movzx edx, byte [ecx]
mov dword [ebp - 0x39c], edx
mov dword [ebp - 0x3a0], 0x26
mov eax, dword [ebp - 0x394]
sub eax, dword [ebp - 0x398]
mov dword [ebp - 0x3a4], eax
movss xmm0, dword [0xabe4e0]
movss dword [ebp - 0x38c], xmm0
movss xmm0, dword [0xabe41c]
movss dword [ebp - 0x3e8], xmm0
movss xmm0, dword [0xabe330]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x38c]
mulss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x38c], xmm0
movss xmm0, dword [ebp - 0x3e8]
subss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x3e8], xmm0
movss xmm0, dword [ebp - 0x38c]
subss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x38c], xmm0
movss xmm0, dword [ebp - 0x38c]
comiss xmm0, dword [ebp - 0x3e8]
jbe 0x4d39d4
movss xmm0, dword [ebp - 0x38c]
addss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x38c], xmm0
movss xmm0, dword [ebp - 0x38c]
addss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x38c], xmm0
movss xmm0, dword [ebp - 0x3e8]
addss xmm0, dword [ebp - 0x38c]
movss dword [ebp - 0x3e8], xmm0
mov ecx, dword [ebp - 0x39c]
sub ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x3a8], ecx
jmp 0x4d3b07
movss xmm0, dword [ebp - 0x38c]
subss xmm0, dword [ebp - 0x3e8]
movss dword [ebp - 0x38c], xmm0
movss xmm0, dword [ebp - 0x38c]
addss xmm0, dword [ebp - 0x3e8]
movss dword [ebp - 0x38c], xmm0
movss xmm0, dword [ebp - 0x384]
divss xmm0, dword [ebp - 0x38c]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x384]
subss xmm0, dword [ebp - 0x3e8]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x384]
mulss xmm0, dword [ebp - 0x3e8]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x384]
subss xmm0, dword [ebp - 0x3e8]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x384]
comiss xmm0, dword [ebp - 0x38c]
jbe 0x4d3abf
movss xmm0, dword [ebp - 0x3e8]
addss xmm0, dword [ebp - 0x38c]
movss dword [ebp - 0x3e8], xmm0
movss xmm0, dword [ebp - 0x38c]
addss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x38c], xmm0
movss xmm0, dword [ebp - 0x384]
subss xmm0, dword [ebp - 0x3e8]
movss dword [ebp - 0x384], xmm0
jmp 0x4d3b07
movss xmm0, dword [ebp - 0x3e8]
mulss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x3e8], xmm0
movss xmm0, dword [ebp - 0x384]
subss xmm0, dword [ebp - 0x38c]
movss dword [ebp - 0x384], xmm0
movss xmm0, dword [ebp - 0x3e8]
divss xmm0, dword [ebp - 0x384]
movss dword [ebp - 0x3e8], xmm0
mov edx, dword [ebp - 0x3a4]
shl edx, 4
mov dword [ebp - 0x3d4], edx
mov eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x3cc], eax
mov ecx, dword [ebp - 0x3d4]
or ecx, dword [ebp - 0x3cc]
mov dword [ebp - 0x3d8], ecx
mov dl, byte [ebp - 0x3d8]
mov byte [ebp - 0x347], dl
movzx eax, byte [ebp - 0x341]
mov cl, byte [ebp + eax - 0x748]
mov byte [ebp - 0x345], cl
movzx edx, byte [ebp - 0x33d]
movzx eax, byte [ebp + edx - 0x748]
mov dword [ebp - 0x7c4], eax
mov cl, byte [ebp - 0x33d]
add cl, 1
mov byte [ebp - 0x33d], cl
movzx edx, byte [ebp - 0x33e]
add edx, dword [ebp - 0x7c4]
mov byte [ebp - 0x33e], dl
movzx eax, byte [ebp - 0x33e]
movzx ecx, byte [ebp - 0x341]
mov dl, byte [ebp + eax - 0x748]
mov byte [ebp + ecx - 0x748], dl
movzx eax, byte [ebp - 0x33f]
movzx ecx, byte [ebp - 0x33e]
mov dl, byte [ebp + eax - 0x748]
mov byte [ebp + ecx - 0x748], dl
movzx eax, byte [ebp - 0x33d]
movzx ecx, byte [ebp - 0x33f]
mov dl, byte [ebp + eax - 0x748]
mov byte [ebp + ecx - 0x748], dl
movss xmm0, dword [0xabe598]
movss dword [ebp - 0x4bc], xmm0
movss xmm0, dword [0xabe54c]
movss dword [ebp - 0x3f0], xmm0
movss xmm0, dword [0xabe4b8]
movss dword [ebp - 0x4f8], xmm0
movss xmm0, dword [0xabe3e4]
movss dword [ebp - 0x54c], xmm0
movss xmm0, dword [0xabe320]
movss dword [ebp - 0x450], xmm0
movss xmm0, dword [ebp - 0x3f0]
addss xmm0, dword [ebp - 0x450]
movss dword [ebp - 0x3f0], xmm0
movss xmm0, dword [ebp - 0x3f0]
subss xmm0, dword [ebp - 0x450]
movss dword [ebp - 0x3f0], xmm0
movss xmm0, dword [ebp - 0x4bc]
subss xmm0, dword [ebp - 0x450]
movss dword [ebp - 0x4bc], xmm0
movss xmm0, dword [ebp - 0x3f0]
mulss xmm0, dword [ebp - 0x450]
movss dword [ebp - 0x3f0], xmm0
movss xmm0, dword [ebp - 0x3f0]
subss xmm0, dword [ebp - 0x450]
movss dword [ebp - 0x3f0], xmm0
movss xmm0, dword [ebp - 0x450]
comiss xmm0, dword [ebp - 0x3f0]
jbe 0x4d3d35
movss xmm0, dword [ebp - 0x4f8]
subss xmm0, dword [ebp - 0x54c]
movss dword [ebp - 0x4f8], xmm0
movss xmm0, dword [ebp - 0x4f8]
mulss xmm0, dword [ebp - 0x54c]
movss dword [ebp - 0x4f8], xmm0
movss xmm0, dword [ebp - 0x4bc]
addss xmm0, dword [ebp - 0x3f0]
movss dword [ebp - 0x4bc], xmm0
movss xmm0, dword [ebp - 0x3f0]
divss xmm0, dword [ebp - 0x4f8]
movss dword [ebp - 0x3f0], xmm0
movss xmm0, dword [ebp - 0x54c]
divss xmm0, dword [ebp - 0x450]
movss dword [ebp - 0x54c], xmm0
jmp 0x4d3dc1
movss xmm0, dword [ebp - 0x450]
addss xmm0, dword [ebp - 0x3f0]
movss dword [ebp - 0x450], xmm0
movss xmm0, dword [ebp - 0x450]
addss xmm0, dword [ebp - 0x3f0]
movss dword [ebp - 0x450], xmm0
movss xmm0, dword [ebp - 0x4bc]
subss xmm0, dword [ebp - 0x4f8]
movss dword [ebp - 0x4bc], xmm0
movss xmm0, dword [ebp - 0x4bc]
subss xmm0, dword [ebp - 0x4f8]
movss dword [ebp - 0x4bc], xmm0
movss xmm0, dword [ebp - 0x3f0]
subss xmm0, dword [ebp - 0x54c]
movss dword [ebp - 0x3f0], xmm0
movzx eax, byte [ebp - 0x33d]
mov cl, byte [ebp - 0x345]
mov byte [ebp + eax - 0x748], cl
movzx edx, byte [ebp - 0x345]
movzx eax, byte [ebp + edx - 0x748]
movzx ecx, byte [ebp - 0x346]
add ecx, eax
mov byte [ebp - 0x346], cl
movzx edx, byte [ebp - 0x347]
movzx eax, byte [ebp - 0x33e]
movzx ecx, byte [ebp + eax - 0x748]
movzx eax, byte [ebp - 0x33d]
movzx eax, byte [ebp + eax - 0x748]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x748]
xor edx, ecx
movzx eax, byte [ebp - 0x33f]
movzx ecx, byte [ebp + eax - 0x748]
movzx eax, byte [ebp - 0x341]
movzx eax, byte [ebp + eax - 0x748]
add ecx, eax
movzx eax, byte [ebp - 0x346]
movzx eax, byte [ebp + eax - 0x748]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x748]
movzx eax, byte [ebp + ecx - 0x748]
xor edx, eax
mov byte [ebp - 0x33f], dl
mov cl, byte [ebp - 0x347]
mov byte [ebp - 0x341], cl
mov dl, byte [ebp - 0x33f]
mov byte [ebp - 0x34f], dl
cmp dword [ebp - 0x35c], 0
jle 0x4d3e96
mov eax, dword [ebp - 0x35c]
mov cl, byte [ebp - 0x34f]
mov byte [ebp + eax - 0x21], cl
jmp 0x4d384e
mov edx, dword [ebp - 0x374]
add edx, 1
mov dword [ebp - 0x374], edx
mov eax, dword [ebp - 0x35c]
add eax, 1
mov dword [ebp - 0x35c], eax
mov ecx, dword [ebp - 0x374]
add ecx, 1
mov dword [ebp - 0x374], ecx
mov edx, dword [ebp - 0x35c]
shl edx, 1
mov dword [ebp - 0x3c8], edx
mov eax, dword [ebp - 0x3dc]
add eax, dword [ebp - 0x3c8]
movzx ecx, byte [eax]
mov dword [ebp - 0x394], ecx
mov dword [ebp - 0x398], 0x16
mov edx, dword [ebp - 0x35c]
lea eax, [edx + edx + 1]
mov dword [ebp - 0x3d0], eax
mov ecx, dword [ebp - 0x3dc]
add ecx, dword [ebp - 0x3d0]
movzx edx, byte [ecx]
mov dword [ebp - 0x39c], edx
mov dword [ebp - 0x3a0], 0x26
mov eax, dword [ebp - 0x394]
sub eax, dword [ebp - 0x398]
mov dword [ebp - 0x3a4], eax
mov ecx, dword [ebp - 0x39c]
sub ecx, dword [ebp - 0x3a0]
mov dword [ebp - 0x3a8], ecx
mov edx, dword [ebp - 0x3a4]
shl edx, 4
mov dword [ebp - 0x3d4], edx
mov eax, dword [ebp - 0x3a8]
mov dword [ebp - 0x3cc], eax
mov ecx, dword [ebp - 0x3d4]
or ecx, dword [ebp - 0x3cc]
mov dword [ebp - 0x3d8], ecx
mov dl, byte [ebp - 0x3d8]
mov byte [ebp - 0x347], dl
movzx eax, byte [ebp - 0x341]
mov cl, byte [ebp + eax - 0x748]
mov byte [ebp - 0x345], cl
movzx edx, byte [ebp - 0x33d]
movzx eax, byte [ebp + edx - 0x748]
mov dword [ebp - 0x7c0], eax
mov cl, byte [ebp - 0x33d]
add cl, 1
mov byte [ebp - 0x33d], cl
movzx edx, byte [ebp - 0x33e]
add edx, dword [ebp - 0x7c0]
mov byte [ebp - 0x33e], dl
movzx eax, byte [ebp - 0x33e]
movzx ecx, byte [ebp - 0x341]
mov dl, byte [ebp + eax - 0x748]
mov byte [ebp + ecx - 0x748], dl
movzx eax, byte [ebp - 0x33f]
movzx ecx, byte [ebp - 0x33e]
mov dl, byte [ebp + eax - 0x748]
mov byte [ebp + ecx - 0x748], dl
movzx eax, byte [ebp - 0x33d]
movzx ecx, byte [ebp - 0x33f]
mov dl, byte [ebp + eax - 0x748]
mov byte [ebp + ecx - 0x748], dl
movzx eax, byte [ebp - 0x33d]
mov cl, byte [ebp - 0x345]
mov byte [ebp + eax - 0x748], cl
movzx edx, byte [ebp - 0x345]
movzx eax, byte [ebp + edx - 0x748]
movzx ecx, byte [ebp - 0x346]
add ecx, eax
mov byte [ebp - 0x346], cl
movzx edx, byte [ebp - 0x347]
movzx eax, byte [ebp - 0x33e]
movzx ecx, byte [ebp + eax - 0x748]
movzx eax, byte [ebp - 0x33d]
movzx eax, byte [ebp + eax - 0x748]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x748]
xor edx, ecx
movzx eax, byte [ebp - 0x33f]
movzx ecx, byte [ebp + eax - 0x748]
movzx eax, byte [ebp - 0x341]
movzx eax, byte [ebp + eax - 0x748]
add ecx, eax
movzx eax, byte [ebp - 0x346]
movzx eax, byte [ebp + eax - 0x748]
add ecx, eax
and ecx, 0xff
movzx ecx, byte [ebp + ecx - 0x748]
movzx eax, byte [ebp + ecx - 0x748]
xor edx, eax
mov byte [ebp - 0x33f], dl
mov cl, byte [ebp - 0x347]
mov byte [ebp - 0x341], cl
mov dl, byte [ebp - 0x33f]
mov byte [ebp - 0x34f], dl
cmp dword [ebp - 0x35c], 0
jle 0x4d4109
mov eax, dword [ebp - 0x35c]
mov cl, byte [ebp - 0x34f]
mov byte [ebp + eax - 0x21], cl
mov edx, dword [ebp - 0x35c]
add edx, 1
mov dword [ebp - 0x35c], edx
mov eax, dword [ebp - 0x374]
add eax, 1
mov dword [ebp - 0x374], eax
mov ecx, dword [ebp - 0x35c]
shl ecx, 1
mov dword [ebp - 0x3c8], ecx
mov edx, dword [ebp - 0x3dc]
add edx, dword [ebp - 0x3c8]
movzx eax, byte [edx]
mov dword [ebp - 0x394], eax
mov dword [ebp - 0x398], 0x16
mov ecx, dword [ebp - 0x35c]
lea edx, [ecx + ecx + 1]
mov dword [ebp - 0x3d0], edx
mov eax, dword [ebp - 0x3dc]
add eax, dword [ebp - 0x3d0]
movzx ecx, byte [eax]
mov dword [ebp - 0x39c], ecx
mov dword [ebp - 0x3a0], 0x26
mov edx, dword [ebp - 0x394]
sub edx, dword [ebp - 0x398]
mov dword [ebp - 0x3a4], edx
mov eax, dword [ebp - 0x39c]
sub eax, dword [ebp - 0x3a0]
mov dword [ebp - 0x3a8], eax
mov ecx, dword [ebp - 0x3a4]
shl ecx, 4
mov dword [ebp - 0x3d4], ecx
mov edx, dword [ebp - 0x3a8]
mov dword [ebp - 0x3cc], edx
mov eax, dword [ebp - 0x3d4]
or eax, dword [ebp - 0x3cc]
mov dword [ebp - 0x3d8], eax
mov cl, byte [ebp - 0x3d8]
mov byte [ebp - 0x347], cl
movzx edx, byte [ebp - 0x341]
mov al, byte [ebp + edx - 0x748]
mov byte [ebp - 0x345], al
movzx ecx, byte [ebp - 0x33d]
movzx edx, byte [ebp + ecx - 0x748]
mov dword [ebp - 0x7bc], edx
mov al, byte [ebp - 0x33d]
add al, 1
mov byte [ebp - 0x33d], al
movzx ecx, byte [ebp - 0x33e]
add ecx, dword [ebp - 0x7bc]
mov byte [ebp - 0x33e], cl
movzx edx, byte [ebp - 0x33e]
movzx eax, byte [ebp - 0x341]
mov cl, byte [ebp + edx - 0x748]
mov byte [ebp + eax - 0x748], cl
movss xmm0, dword [0xabe45c]
movss dword [ebp - 0x418], xmm0
movss xmm0, dword [0xabe3dc]
movss dword [ebp - 0x490], xmm0
movss xmm0, dword [0xabe35c]
movss dword [ebp - 0x4b8], xmm0
movss xmm0, dword [0xabe2c4]
movss dword [ebp - 0x4f0], xmm0
movss xmm0, dword [ebp - 0x4b8]
mulss xmm0, dword [ebp - 0x4f0]
movss dword [ebp - 0x4b8], xmm0
movss xmm0, dword [ebp - 0x490]
mulss xmm0, dword [ebp - 0x4f0]
movss dword [ebp - 0x490], xmm0
movss xmm0, dword [ebp - 0x490]
mulss xmm0, dword [ebp - 0x4f0]
movss dword [ebp - 0x490], xmm0
movss xmm0, dword [ebp - 0x490]
subss xmm0, dword [ebp - 0x4f0]
movss dword [ebp - 0x490], xmm0
movss xmm0, dword [ebp - 0x4f0]
comiss xmm0, dword [ebp - 0x490]
jbe 0x4d4359
movss xmm0, dword [ebp - 0x4b8]
mulss xmm0, dword [ebp - 0x418]
movss dword [ebp - 0x4b8], xmm0
movss xmm0, dword [ebp - 0x4b8]
subss xmm0, dword [ebp - 0x418]
movss dword [ebp - 0x4b8], xmm0
movss xmm0, dword [ebp - 0x418]
divss xmm0, dword [ebp - 0x4b8]
movss dword [ebp - 0x418], xmm0
movss xmm0, dword [ebp - 0x418]
addss xmm0, dword [ebp - 0x4b8]
movss dword [ebp - 0x418], xmm0
jmp 0x4d43d5
movss xmm0, dword [ebp - 0x418]
mulss xmm0, dword [ebp - 0x490]
movss dword [ebp - 0x418], xmm0
movss xmm0, dword [ebp - 0x4f0]
subss xmm0, dword [ebp - 0x418]
movss dword [ebp - 0x4f0], xmm0
movss xmm0, dword [ebp - 0x418]
addss xmm0, dword [ebp - 0x490]
movss dword [ebp - 0x418], xmm0
movss xmm0, dword [ebp - 0x418]
mulss xmm0, dword [ebp - 0x490]
movss dword [ebp - 0x418], xmm0
movzx edx, byte [ebp - 0x33f]
movzx eax, byte [ebp - 0x33e]
mov cl, byte [ebp + edx - 0x748]
mov byte [ebp + eax - 0x748], cl
movzx edx, byte [ebp - 0x33d]
movzx eax, byte [ebp - 0x33f]
mov cl, byte [ebp + edx - 0x748]
mov byte [ebp + eax - 0x748], cl
movzx edx, byte [ebp - 0x33d]
mov al, byte [ebp - 0x345]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x345]
movzx edx, byte [ebp + ecx - 0x748]
movzx eax, byte [ebp - 0x346]
add eax, edx
mov byte [ebp - 0x346], al
movzx ecx, byte [ebp - 0x347]
movzx edx, byte [ebp - 0x33e]
movzx eax, byte [ebp + edx - 0x748]
movzx edx, byte [ebp - 0x33d]
movzx edx, byte [ebp + edx - 0x748]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x748]
xor ecx, eax
movzx edx, byte [ebp - 0x33f]
movzx eax, byte [ebp + edx - 0x748]
movzx edx, byte [ebp - 0x341]
movzx edx, byte [ebp + edx - 0x748]
add eax, edx
movzx edx, byte [ebp - 0x346]
movzx edx, byte [ebp + edx - 0x748]
add eax, edx
and eax, 0xff
movzx eax, byte [ebp + eax - 0x748]
movzx edx, byte [ebp + eax - 0x748]
xor ecx, edx
mov byte [ebp - 0x33f], cl
mov al, byte [ebp - 0x347]
mov byte [ebp - 0x341], al
mov cl, byte [ebp - 0x33f]
mov byte [ebp - 0x34f], cl
cmp dword [ebp - 0x35c], 0
jle 0x4d44d8
mov edx, dword [ebp - 0x35c]
mov al, byte [ebp - 0x34f]
mov byte [ebp + edx - 0x21], al
mov ecx, dword [ebp - 0x35c]
add ecx, 1
mov dword [ebp - 0x35c], ecx
mov edx, dword [ebp - 0x374]
add edx, 1
mov dword [ebp - 0x374], edx
mov eax, dword [ebp - 0x35c]
shl eax, 1
mov dword [ebp - 0x3c8], eax
mov ecx, dword [ebp - 0x3dc]
add ecx, dword [ebp - 0x3c8]
movzx edx, byte [ecx]
mov dword [ebp - 0x394], edx
mov dword [ebp - 0x398], 0x16
mov eax, dword [ebp - 0x35c]
lea ecx, [eax + eax + 1]
mov dword [ebp - 0x3d0], ecx
mov edx, dword [ebp - 0x3dc]
add edx, dword [ebp - 0x3d0]
movzx eax, byte [edx]
mov dword [ebp - 0x39c], eax
mov dword [ebp - 0x3a0], 0x26
mov ecx, dword [ebp - 0x394]
sub ecx, dword [ebp - 0x398]
mov dword [ebp - 0x3a4], ecx
mov edx, dword [ebp - 0x39c]
sub edx, dword [ebp - 0x3a0]
mov dword [ebp - 0x3a8], edx
mov eax, dword [ebp - 0x3a4]
shl eax, 4
mov dword [ebp - 0x3d4], eax
mov ecx, dword [ebp - 0x3a8]
mov dword [ebp - 0x3cc], ecx
mov edx, dword [ebp - 0x3d4]
or edx, dword [ebp - 0x3cc]
mov dword [ebp - 0x3d8], edx
mov al, byte [ebp - 0x3d8]
mov byte [ebp - 0x347], al
movzx ecx, byte [ebp - 0x341]
mov dl, byte [ebp + ecx - 0x748]
mov byte [ebp - 0x345], dl
movzx eax, byte [ebp - 0x33d]
movzx ecx, byte [ebp + eax - 0x748]
mov dword [ebp - 0x7b8], ecx
mov dl, byte [ebp - 0x33d]
add dl, 1
mov byte [ebp - 0x33d], dl
movzx eax, byte [ebp - 0x33e]
add eax, dword [ebp - 0x7b8]
mov byte [ebp - 0x33e], al
movzx ecx, byte [ebp - 0x33e]
movzx edx, byte [ebp - 0x341]
mov al, byte [ebp + ecx - 0x748]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x33f]
movzx edx, byte [ebp - 0x33e]
mov al, byte [ebp + ecx - 0x748]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x33d]
movzx edx, byte [ebp - 0x33f]
mov al, byte [ebp + ecx - 0x748]
mov byte [ebp + edx - 0x748], al
movzx ecx, byte [ebp - 0x33d]
mov dl, byte [ebp - 0x345]
mov byte [ebp + ecx - 0x748], dl
movzx eax, byte [ebp - 0x345]
movzx ecx, byte [ebp + eax - 0x748]
movzx edx, byte [ebp - 0x346]
add edx, ecx
mov byte [ebp - 0x346], dl
movzx eax, byte [ebp - 0x347]
movzx ecx, byte [ebp - 0x33e]
movzx edx, byte [ebp + ecx - 0x748]
movzx ecx, byte [ebp - 0x33d]
movzx ecx, byte [ebp + ecx - 0x748]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x748]
xor eax, edx
movzx ecx, byte [ebp - 0x33f]
movzx edx, byte [ebp + ecx - 0x748]
movzx ecx, byte [ebp - 0x341]
movzx ecx, byte [ebp + ecx - 0x748]
add edx, ecx
movzx ecx, byte [ebp - 0x346]
movzx ecx, byte [ebp + ecx - 0x748]
add edx, ecx
and edx, 0xff
movzx edx, byte [ebp + edx - 0x748]
movzx ecx, byte [ebp + edx - 0x748]
xor eax, ecx
mov byte [ebp - 0x33f], al
mov dl, byte [ebp - 0x347]
mov byte [ebp - 0x341], dl
mov al, byte [ebp - 0x33f]
mov byte [ebp - 0x34f], al
cmp dword [ebp - 0x35c], 0
jle 0x4d4737
mov ecx, dword [ebp - 0x35c]
mov dl, byte [ebp - 0x34f]
mov byte [ebp + ecx - 0x21], dl
mov eax, 1
imul ecx, eax, 0xe
mov dword [ebp - 0x62c], ecx
cmp dword [ebp - 0x62c], 0xf
jae 0x4d4750
jmp 0x4d4755
call fcn.00a40cf2
mov edx, dword [ebp - 0x62c]
mov byte [ebp + edx - 0x20], 0
jmp 0x4d47af
mov dword [ebp - 0x5bc], 0
jmp 0x4d477d
mov eax, dword [ebp - 0x5bc]
add eax, 1
mov dword [ebp - 0x5bc], eax
cmp dword [ebp - 0x5bc], 0xf
jge 0x4d47af
mov ecx, dword [ebp - 0x5bc]
mov dword [ebp - 0x634], ecx
cmp dword [ebp - 0x634], 0xf
jae 0x4d479d
jmp 0x4d47a2
call fcn.00a40cf2
mov edx, dword [ebp - 0x634]
mov byte [ebp + edx - 0x20], 0
jmp 0x4d476e
lea eax, [ebp - 0x20]
push eax
mov ecx, dword [ebp - 0x630]
call fcn.00452ce0
mov dword [ebp - 0x7b4], eax
lea ecx, [ebp - 0x300]
push ecx
lea ecx, [ebp - 0x5c]
call fcn.0042f200
mov byte [ebp - 4], 2
lea edx, [ebp - 0xa28]
push edx
lea ecx, [ebp - 0x5c]
call fcn.00450b00
mov eax, dword [eax]
mov dword [ebp - 0x7a0], eax
mov ecx, dword [ebp - 0x7a0]
mov dword [ebp - 0x7a8], ecx
lea edx, [ebp - 0xa18]
push edx
lea ecx, [ebp - 0x5c]
call fcn.00452c00
mov eax, dword [eax]
mov dword [ebp - 0x79c], eax
mov ecx, dword [ebp - 0x79c]
mov dword [ebp - 0x7ac], ecx
lea edx, [ebp - 0xa24]
push edx
lea ecx, [ebp - 0x5c]
call fcn.00450b00
mov eax, dword [eax]
mov dword [ebp - 0x7a4], eax
mov ecx, dword [ebp - 0x7a4]
mov dword [ebp - 0x7d4], ecx
push fcn.00a962ef
mov edx, dword [ebp - 0x7a8]
push edx
mov eax, dword [ebp - 0x7ac]
push eax
mov ecx, dword [ebp - 0x7d4]
push ecx
lea edx, [ebp - 0xa1c]
push edx
call fcn.00439de0
lea ecx, [ebp - 0xc0]
call fcn.00478f10
mov byte [ebp - 4], 3
push 8
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0xc0]
call fcn.0047c8c0
lea ecx, [ebp - 0x5c]
push ecx
lea ecx, [ebp - 0xc0]
call fcn.0047c7d0
lea ecx, [ebp - 0xc0]
call fcn.0047a800
lea ecx, [ebp - 0xc0]
call fcn.0047cbb0
push eax
lea ecx, [ebp - 0x88]
call fcn.004a3010
movzx edx, al
test edx, edx
je 0x4d48f2
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
cmp dword [ebp - 0x31c], eax
jne 0x4d48eb
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xc0]
call fcn.004618d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.0042f650
jmp 0x4d490d
mov byte [ebp - 0x45e], 1
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xc0]
call fcn.004618d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x5c]
call fcn.0042f650
mov eax, dword [ebp - 0x7b4]
mov dword [ebp - 0x7b0], eax
lea ecx, [ebp - 0x324]
push ecx
mov edx, dword [ebp - 0x550]
push edx
call dword [ebp - 0x7b0]
test eax, eax
jne 0x4d47c4
mov eax, dword [ebp - 0x550]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov cl, byte [ebp - 0x45e]
mov byte [ebp - 0x4f1], cl
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xf8]
call fcn.004618d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.0042f650
mov al, byte [ebp - 0x4f1]
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.00a405be
mov esp, ebp
pop ebp
ret 8