Function at 0x5b6597
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1e8
push ebx
push esi
push edi
lea ecx, [ebp - 0x7f]
mov byte [ebp - 0x7f], 0
call fcn.00414894
movsd xmm0, qword [0x706c10]
mov ebx, eax
movsd qword [ebp - 0x70], xmm0
xorps xmm1, xmm1
movsd xmm0, qword [0x706bf8]
movsd qword [ebp - 0x60], xmm0
cmp byte [ebx + 4], 0
movsd xmm0, qword [0x706c00]
movsd qword [ebp - 8], xmm0
movsd xmm0, qword [0x706c08]
movsd qword [ebp - 0x68], xmm0
movsd xmm0, qword [0x706bf0]
mov dword [ebp - 0x2c], ebx
movsd qword [ebp - 0x34], xmm1
movsd qword [ebp - 0x54], xmm0
jne 0x5b6d41
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x24], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x18], ecx
add eax, ecx
mov dword [ebp - 0x48], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x1c], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x20], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5b6787
xor eax, eax
je 0x5b6679
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov edi, dword [ebp - 0x1c]
movd xmm0, eax
imul eax, dword [ebp - 0x24], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x58], ecx
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b673d
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x20]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5b673d
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb36f
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x58]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b66d6
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x24]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x48]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b6c17
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x20]
add ecx, eax
je 0x5b68d7
xor eax, eax
je 0x5b67d1
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x24], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x1c]
movd xmm0, eax
add ebx, dword [ebp - 0x18]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 8]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b688d
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x20]
add ecx, eax
je 0x5b688d
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb3b5
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b6826
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x24]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x20]
add ecx, eax
je 0x5b6a03
xor eax, eax
je 0x5b68fd
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x24], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x18]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b69b9
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x1c]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x20]
add ecx, eax
je 0x5b69b9
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb3fb
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b6952
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x24]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5b6a08
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x24]
sub eax, ecx
mov edi, dword [ebp - 0x18]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x48], ebx
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b6ac7
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x20]
add ecx, eax
je 0x5b6ac7
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb441
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b6a5e
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x58], eax
xor eax, eax
je 0x5b6b10
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x48]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b6bc4
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x20]
add ecx, eax
je 0x5b6bc4
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb487
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b6b5b
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x24]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x58]
cvttsd2si eax, xmm2
and eax, dword [ebx]
add eax, eax
sub ecx, eax
add dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x20]
add ecx, eax
je 0x5b6d41
xor eax, eax
je 0x5b6c3f
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x24]
sub eax, ecx
mov edi, dword [ebp - 0x18]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b6cfb
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x20]
add ecx, eax
je 0x5b6cfb
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb4cd
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b6c92
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
lea ecx, [ebp - 0x71]
mov byte [ebx + 4], 1
mov byte [ebp - 0x71], 0
call fcn.004192ee
mov ebx, eax
mov dword [ebp - 0x2c], ebx
cmp byte [ebx + 4], 0
jne 0x5b749c
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x58], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5b6ee0
xor eax, eax
je 0x5b6dd2
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
imul eax, dword [ebp - 0x20], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x48], ecx
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b6e96
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x24]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5b6e96
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb513
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x48]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b6e2f
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x58]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b7372
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b7030
xor eax, eax
je 0x5b6f2a
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 8]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b6fe6
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b6fe6
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb559
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b6f7f
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b715c
xor eax, eax
je 0x5b7056
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b7112
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b7112
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb59f
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b70ab
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5b7161
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x48], ebx
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b7220
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b7220
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb5e5
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b71b7
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x58], eax
xor eax, eax
je 0x5b7269
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x48]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b731d
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b731d
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb62b
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b72b4
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
mov ecx, dword [ebx]
and eax, ecx
add eax, eax
sub ecx, eax
add ecx, dword [ebp - 0x58]
mov dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b749c
xor eax, eax
je 0x5b739a
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b7456
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b7456
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb671
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b73ed
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
mov byte [ebx + 4], 1
lea ecx, [ebp - 0x72]
mov eax, dword [ebx]
mov dword [ebp - 0x40], eax
mov byte [ebp - 0x72], 0
call fcn.00418142
movsd xmm0, qword [0x706c18]
mov ebx, eax
mov dword [ebp - 0x2c], ebx
movsd qword [ebp - 0x54], xmm0
cmp byte [ebx + 4], 0
jne 0x5b7c07
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x58], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5b764d
xor eax, eax
je 0x5b753f
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
imul eax, dword [ebp - 0x20], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x48], ecx
mulsd xmm0, qword [ebp - 8]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b7603
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x24]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5b7603
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb6b7
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x48]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b759c
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x58]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b7add
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b779d
xor eax, eax
je 0x5b7697
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b7753
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b7753
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb6fd
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b76ec
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b78c9
xor eax, eax
je 0x5b77c3
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b787f
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b787f
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb743
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b7818
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5b78ce
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x48], ebx
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b798d
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b798d
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb789
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b7924
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x58], eax
xor eax, eax
je 0x5b79d6
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x48]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b7a8a
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b7a8a
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb7cf
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b7a21
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x58]
cvttsd2si eax, xmm2
and eax, dword [ebx]
add eax, eax
sub ecx, eax
add dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b7c07
xor eax, eax
je 0x5b7b05
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b7bc1
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b7bc1
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb815
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b7b58
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
cmp dword [ebp - 0x40], 0
mov byte [ebx + 4], 1
je 0x5b8370
lea ecx, [ebp - 0x73]
mov byte [ebp - 0x73], 0
call fcn.00418ede
mov ebx, eax
mov dword [ebp - 0x2c], ebx
cmp byte [ebx + 4], 0
jne 0x5b836c
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x48], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5b7db0
xor eax, eax
je 0x5b7ca2
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
imul eax, dword [ebp - 0x20], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x40], ecx
mulsd xmm0, qword [ebp - 8]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b7d66
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x24]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5b7d66
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb85b
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x40]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b7cff
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x48]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b8242
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b7f00
xor eax, eax
je 0x5b7dfa
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b7eb6
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b7eb6
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb8a1
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b7e4f
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b802c
xor eax, eax
je 0x5b7f26
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b7fe2
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b7fe2
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb8e7
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b7f7b
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5b8031
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x40], ebx
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b80f0
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b80f0
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb92d
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b8087
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x48], eax
xor eax, eax
je 0x5b8139
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x40]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b81ed
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b81ed
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb973
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b8184
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
mov ecx, dword [ebx]
and eax, ecx
add eax, eax
sub ecx, eax
add ecx, dword [ebp - 0x48]
mov dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b836c
xor eax, eax
je 0x5b826a
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b8326
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b8326
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb9b9
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b82bd
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
mov byte [ebx + 4], 1
lea ecx, [ebp - 0x74]
mov byte [ebp - 0x74], 0
call fcn.00415080
movsd xmm0, qword [0x706c20]
mov ebx, eax
mov dword [ebp - 0x2c], ebx
movsd qword [ebp - 0x60], xmm0
cmp byte [ebx + 4], 0
jne 0x5b8ad2
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x48], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5b8518
xor eax, eax
je 0x5b840a
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
imul eax, dword [ebp - 0x20], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x40], ecx
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b84ce
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x24]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5b84ce
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bb9ff
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x40]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b8467
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x48]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b89a8
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b8668
xor eax, eax
je 0x5b8562
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b861e
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b861e
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bba45
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b85b7
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b8794
xor eax, eax
je 0x5b868e
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b874a
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b874a
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bba8b
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b86e3
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5b8799
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x40], ebx
mulsd xmm0, qword [ebp - 8]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b8858
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b8858
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbad1
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b87ef
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x48], eax
xor eax, eax
je 0x5b88a1
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x40]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 8]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b8955
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b8955
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbb17
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b88ec
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x48]
cvttsd2si eax, xmm2
and eax, dword [ebx]
add eax, eax
sub ecx, eax
add dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b8ad2
xor eax, eax
je 0x5b89d0
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b8a8c
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b8a8c
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbb5d
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b8a23
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
mov byte [ebx + 4], 1
mov eax, dword [ebx]
call dword [eax*4 + 0x7cbd90]
lea ecx, [ebp - 0x75]
mov dword [ebp - 0x38], eax
mov byte [ebp - 0x75], 0
call fcn.0041552c
mov ebx, eax
mov dword [ebp - 0x2c], ebx
cmp byte [ebx + 4], 0
jne 0x5b9237
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x48], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5b8c7d
xor eax, eax
je 0x5b8b6f
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
imul eax, dword [ebp - 0x20], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x40], ecx
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b8c33
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x24]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5b8c33
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbba3
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x40]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b8bcc
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x48]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b910d
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b8dcd
xor eax, eax
je 0x5b8cc7
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b8d83
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b8d83
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbbe9
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b8d1c
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b8ef9
xor eax, eax
je 0x5b8df3
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b8eaf
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b8eaf
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbc2f
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b8e48
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5b8efe
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x40], ebx
mulsd xmm0, qword [ebp - 8]
movsd qword [ebp - 0x10], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b8fbd
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b8fbd
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 0x10]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbc75
movsd qword [ebp - 0x10], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b8f54
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 0x10]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x48], eax
xor eax, eax
je 0x5b9006
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x40]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 8]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b90ba
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b90ba
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbcbb
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b9051
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x48]
cvttsd2si eax, xmm2
and eax, dword [ebx]
add eax, eax
sub ecx, eax
add dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9237
xor eax, eax
je 0x5b9135
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b91f1
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b91f1
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbd01
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b9188
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
lea ecx, [ebp - 0x76]
mov byte [ebx + 4], 1
mov byte [ebp - 0x76], 0
call fcn.00418072
movsd xmm0, qword [0x706c28]
mov ebx, eax
mov dword [ebp - 0x2c], ebx
movsd qword [ebp - 0x10], xmm0
cmp byte [ebx + 4], 0
jne 0x5b999d
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x48], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5b93e3
xor eax, eax
je 0x5b92d5
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
imul eax, dword [ebp - 0x20], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x40], ecx
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b9399
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x24]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5b9399
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbd47
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x40]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b9332
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x48]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b9873
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9533
xor eax, eax
je 0x5b942d
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b94e9
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b94e9
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbd8d
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b9482
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b965f
xor eax, eax
je 0x5b9559
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b9615
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9615
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbdd3
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b95ae
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5b9664
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x40], ebx
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b9723
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9723
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbe19
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b96ba
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x48], eax
xor eax, eax
je 0x5b976c
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x40]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b9820
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9820
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbe5f
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b97b7
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x48]
cvttsd2si eax, xmm2
and eax, dword [ebx]
add eax, eax
sub ecx, eax
add dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b999d
xor eax, eax
je 0x5b989b
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x10]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b9957
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9957
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbea5
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b98ee
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
mov byte [ebx + 4], 1
lea ecx, [ebp - 0x77]
mov eax, dword [ebx]
mov dword [ebp - 0x58], eax
mov byte [ebp - 0x77], 0
call fcn.00417e6a
mov ebx, eax
mov dword [ebp - 0x2c], ebx
cmp byte [ebx + 4], 0
jne 0x5ba101
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x40], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5b9b3f
xor eax, eax
je 0x5b9a33
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul esi, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add esi, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b9aef
movsd xmm2, qword [ebp - 0x34]
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, edi
sub eax, ebx
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9aef
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbeeb
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b9a88
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x40]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b9fd7
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9c95
xor eax, eax
je 0x5b9b89
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul esi, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add esi, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b9c45
movsd xmm2, qword [ebp - 0x34]
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, edi
sub eax, ebx
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9c45
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbf31
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b9bde
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9dc1
xor eax, eax
je 0x5b9cbb
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul esi, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add esi, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b9d77
movsd xmm2, qword [ebp - 0x34]
mov edi, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, edi
sub eax, ebx
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9d77
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbf77
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b9d10
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5b9dc6
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x40], ebx
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b9e85
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9e85
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bbfbd
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b9e1c
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x48], eax
xor eax, eax
je 0x5b9ece
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x40]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5b9f82
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5b9f82
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc003
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5b9f19
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
mov ecx, dword [ebx]
and eax, ecx
add eax, eax
sub ecx, eax
add ecx, dword [ebp - 0x48]
mov dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5ba101
xor eax, eax
je 0x5b9fff
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x10]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5ba0bb
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5ba0bb
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc049
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5ba052
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
cmp dword [ebp - 0x58], 0
mov byte [ebx + 4], 1
je 0x5ba86a
lea ecx, [ebp - 0x78]
mov byte [ebp - 0x78], 0
call fcn.00416f2c
mov ebx, eax
mov dword [ebp - 0x2c], ebx
cmp byte [ebx + 4], 0
jne 0x5ba866
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x48], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5ba2aa
xor eax, eax
je 0x5ba19c
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
imul eax, dword [ebp - 0x20], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x40], ecx
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5ba260
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x24]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5ba260
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc08f
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x40]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5ba1f9
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x48]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5ba73c
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5ba3fa
xor eax, eax
je 0x5ba2f4
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5ba3b0
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5ba3b0
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc0d5
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5ba349
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5ba526
xor eax, eax
je 0x5ba420
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5ba4dc
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5ba4dc
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc11b
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5ba475
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5ba52b
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x40], ebx
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5ba5ea
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5ba5ea
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc161
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5ba581
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x48], eax
xor eax, eax
je 0x5ba633
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x40]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5ba6e7
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5ba6e7
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc1a7
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5ba67e
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
mov ecx, dword [ebx]
and eax, ecx
add eax, eax
sub ecx, eax
add ecx, dword [ebp - 0x48]
mov dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5ba866
xor eax, eax
je 0x5ba764
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x10]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5ba820
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5ba820
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc1ed
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5ba7b7
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
mov byte [ebx + 4], 1
lea ecx, [ebp - 0x79]
mov byte [ebp - 0x79], 0
call fcn.00415e50
movsd xmm0, qword [0x706c30]
mov ebx, eax
mov dword [ebp - 0x2c], ebx
movsd qword [ebp - 0x68], xmm0
cmp byte [ebx + 4], 0
jne 0x5bafce
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x48], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5baa12
xor eax, eax
je 0x5ba904
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
imul eax, dword [ebp - 0x20], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x40], ecx
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5ba9c8
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x24]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5ba9c8
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc233
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x40]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5ba961
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x48]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5baea4
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bab62
xor eax, eax
je 0x5baa5c
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bab18
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bab18
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc279
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5baab1
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bac8e
xor eax, eax
je 0x5bab88
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x10]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bac44
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bac44
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc2bf
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5babdd
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5bac93
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x40], ebx
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bad52
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bad52
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc305
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bace9
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x48], eax
xor eax, eax
je 0x5bad9b
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x40]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bae4f
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bae4f
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc34b
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bade6
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
mov ecx, dword [ebx]
and eax, ecx
add eax, eax
sub ecx, eax
add ecx, dword [ebp - 0x48]
mov dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bafce
xor eax, eax
je 0x5baecc
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5baf88
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5baf88
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bc391
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5baf1f
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
push dword [ebp - 0x38]
mov byte [ebx + 4], 1
mov eax, dword [ebx]
call dword [eax*4 + 0x7cbdb8]
pop ecx
mov dword [ebp - 0x1e8], str.011_11011010001_0_110_1011__1011_10__0_01_0_0____11__0100__010_0__1___100
mov dword [ebp - 0x1e4], str.1_0000110_0___01_1_0__100100000___1_1010110__0001_____100___1___110_1__0_00
mov dword [ebp - 0x1e0], str.111_0000_0_10__0___1010_1111011_100_00_011__10__00_1111000_0_10101_11011001
mov dword [ebp - 0x1dc], str.10_0_0111011___11_111_111110001_0_10110011_1_1_0111000001_0_0_010_0_00_1_11
mov dword [ebp - 0x1d8], str._1_00110_0101001_01010_0_01__0011_01_0__010___1_101_00010001_00_0_1__1_0__0
mov dword [ebp - 0x1d4], str._0___0_1_1____1010_100_1101_0_11__0_00101_01001_10_0101_10_0_01000___111_0
mov dword [ebp - 0x1d0], str._001_0_1100_00000_0_000___00_011_00___1_01__0__011__1_0_1110000_____100_110
mov dword [ebp - 0x1cc], str.00001100__011011_00110_0__0110_11101010_11001__1110011010_1000111_0_11110
mov dword [ebp - 0x1c8], str.0001100110_01_0_01___01001_1_000_00001__1___0_0_0_0_000___00_00_11__01_11_1
mov dword [ebp - 0x1c4], str.10_1010100_01__1111010_00010_1_0_0_110_010110__10__0101_01001101100_0_1100
mov dword [ebp - 0x1c0], str.10__10__01001____000__01__11001__111_11___0010110_00___11_1__010__1_0000_10
mov dword [ebp - 0x1bc], str._100_1___01_100_0__110_000_000000___010_0____0_10_1_0__0_1__1__1____1011_00
mov dword [ebp - 0x1b8], str.__1110____00011_0100_11_0__11011_01_0_1_001000__101_0000_111_1______1110__1
mov dword [ebp - 0x1b4], str._1101_00_101_0__11011_0110010_0_0___1_0000___0_1__101000_0___0100___1110
mov dword [ebp - 0x1b0], str.1110__001_1_11__11_110110___100_00_110_11__0100___01_00100000111__01_0_0_01
mov dword [ebp - 0x1ac], str.1_1___11__00100_1_01_10_1_1_0_0010___01_11_11__1_0001000_01__110110_10__001
mov dword [ebp - 0x1a8], str.1_100___00010__000_0__0__0_0_100_11_1_1_0_10_0_1_000_100______00__0_10_101
mov dword [ebp - 0x1a4], str.11000__00____01__100_11_0000_0_1_00010001_11000_1_00_011_010_10_01_101_0000
mov dword [ebp - 0x1a0], str.__1000_1__1_00001_0_1_11100__1_0110_011_011_00_0_11_101_101__0_0101__110_11
mov dword [ebp - 0x19c], str.11__1_000101100__1_10___110_01110101__10_00_0_111101__010__10_01_111_11__0
mov dword [ebp - 0x198], str.010_0_1_0110_11_01001_1110_1001_1_0_0100___0____111_01011_0111_0_11_0__0101
mov dword [ebp - 0x194], str.00___001101101010__0100_1011__10001___000_001_0____01101011_0111_11_00_10
mov dword [ebp - 0x190], str.____1__00_0_1000___000110_01__0_000_01__1_11__00_110_1_000100110__1_0000100
mov dword [ebp - 0x18c], str._1_000_100101_0000101110111__00_0101_10__0__10____11110010__11_1__111___01
mov dword [ebp - 0x188], str._1_1000_10111011__00__0_0_10110__0101101_1_0010_00_10000010_11_______0000_1
mov dword [ebp - 0x184], str.010_010110000_0_1000__11_0_00_011110101_0_1_11001_01110_001_001_100__11__0
mov dword [ebp - 0x180], str.0101__00__10_01_000__0110_001_0__0_0111_0_01____0_11_01_0__000_00_00_0_101
mov dword [ebp - 0x17c], str.11_01_0_1011_11__1_1010_1____1_101000_100_01_1__011_001______0_0_1111_10_0
mov dword [ebp - 0x178], str.00_1__0___10_01_11__1_010_1_0__0_1111_10001_1___000__000_110_0_01___10011_0
mov dword [ebp - 0x174], str.00011010____0_010_10__000001_1_01_11_1001_1100100_1_10100_1_11__11_00110110
mov dword [ebp - 0x170], str.111_01_000_1_10_011_0101__00___0__001_001____011_00_1010__0__0110__0_1_10_0
mov dword [ebp - 0x16c], str.01001_1_0_0001__0_000_0___1_01011000101_1_1_0001011___111_1011011___0___1_1
mov dword [ebp - 0x168], str.000__01_01_1_111_01_1110_00_111111__0000_0011_0111110010__0000101_11100_0
mov dword [ebp - 0x164], str.0001_110_0__1_11_0101_111100100_10011__1_0_111_1_10111_0_011_1_01110000111
mov dword [ebp - 0x160], str._1_0__1_011__0011011010_001_01110__011111001_1__01_10_110_0111_00_0__00_010
mov dword [ebp - 0x15c], str.0_10110100_0011_10___1___1_1_01_01_11_0_00000011_001__1___11_0011_100___0
mov dword [ebp - 0x158], str.0_1_0_0_10001_0000010_11000_011_000_1__0_1_00000_0_0_101_111010001_01100
mov dword [ebp - 0x154], str.1100_10_00_11_0110__0_0__01_000_0_101110_1_000010_100_0_0_101_11000001_0010
mov dword [ebp - 0x150], str.110__0_1100_10_001_011_0001001_0_0_111_1_0_110_01_01110110101_1_1110001_1_0
mov dword [ebp - 0x14c], str.1011___01_0__01_11_01_10_001_000001_0100__100_0_101000__010_10111011_001_01
mov dword [ebp - 0x148], str.__1__110___0011100_0010010__010__011_1__0_1_11_01____101__01000011_10_11_01
mov dword [ebp - 0x144], str.1___00000100____0100101___000_001100_00010__1000__00100_10_1_0_01_10_1_10_1
mov dword [ebp - 0x140], str._00101_01___100__10_001_01_01__1_01001_011__11001_01_01_1010_01__0100101001
mov dword [ebp - 0x13c], str.011_10011111101_0_0_1__01_1010001___00__10_01000__01100100100_01_10__1_1011
mov dword [ebp - 0x138], str.0111_100101000001_10__1001_1110__00__100__0110101_1_1000_110101100_0__10111
mov dword [ebp - 0x134], str.1__00_00100__1_101_1___00___00111_01_10_1_1111__100___100000000_0_00_101000
mov dword [ebp - 0x130], str._01001111____101001110_1__0110_110100_0_000110101_0__11100_0__00__1__110000
mov dword [ebp - 0x12c], str.1011001__0000__010_0_11__01100_01111_111__11011011_1111100111_10___0100011
mov dword [ebp - 0x128], str.1__1001001_0_0__010_0_1__00_001_11110000100_111110011__1111_0010___00_0_0_0
mov dword [ebp - 0x124], str._1__010__01_0_11_0_10__111__000001_001110_0_0000_110_10_0_11__11_00__1_0_10
mov dword [ebp - 0x120], str.11_0_01__0100010__00010_1__010__0_0110_111_1_011_10001111100_011111_100_1_0
mov dword [ebp - 0x11c], str.011100101100011_1001_11__0___00111011_11_1010_1_1_1101101_1100111_001_____0
mov dword [ebp - 0x118], str.100_00111100_0_0_01_1__100__001000101_0100_1100__0_1101001100110_0000111_01
mov dword [ebp - 0x114], str.1__01_01_0000100_00100_00_10111___0_00_011_11__1__0_1011___01110001___1111
mov dword [ebp - 0x110], str.0_0__0_1_1_0_0___0_101110__11_10_10___1_111_1_01_1000_1110_0___011_00100001
mov dword [ebp - 0x10c], str._00010___100110____101_1__011__1___1_01__1_0_1__0_00_10101100_1100_1001_00
mov dword [ebp - 0x108], str.00_1_0_011_1___0100100_0_0_00_0_0_110_10100_11_00_00__0__111110001100_11_1
mov dword [ebp - 0x104], str._00_10_0___0100010100100_10_0111_0__1101011_11001011100_1_0011_100_100__001
mov dword [ebp - 0x100], str.111011_00000011111110111100_0_0_100_0_00_01111__10_1_1110000000100010
mov dword [ebp - 0xfc], str.00110111_1__0_1__00_0_010_0__1011111110_11_1_1_0__111001_000__1100_01__101
mov dword [ebp - 0xf8], str.0_000_1_101000000_1___000_0__1___1__10101_10__111_010_0_00101__101001000011
mov dword [ebp - 0xf4], str.01_111101_11_11_1111__0____000_0_10_001____00_100____1_101100_110_0110_1101
mov dword [ebp - 0xf0], str.011010_0__0100__000110_0____01____0__1_00___1__10_______0_1011_1100_01_10_1
mov dword [ebp - 0xec], str.01_101001____110011_____110101111100_1____10111_01111__1_0__1__00_0__0_1__1
mov dword [ebp - 0xe8], str._11_00__01_0100_01_101__1_11_011110_01_11___00_11____000001_1__110111_00__1
mov dword [ebp - 0xe4], str.1_0_1_00_11__1_01_10111__00_0__1_1____0001_1____00_00_11_1010_1__0_100__101
mov dword [ebp - 0xe0], str.1___1__011__0___0_0_100_0000101_1___0__101_0001001__1_011111_011_000_0_1__1
mov dword [ebp - 0xdc], str.1___00__000011010_1101111___110____011_1_11111_0_10111__11011010_10_00_11_1
mov dword [ebp - 0xd8], str.11_00101___1__11__11000_1011001__10110_100_1_101_0___111_1_010__000__0___01
mov dword [ebp - 0xd4], str.1000110_100001__10001_0__01_01_1001_0_001_110_0_010_100101_1111__1_0__0010
mov dword [ebp - 0xd0], str.11_010_01110__0__0___0___0111100_11__1__0___1__00111_10_11__10_0101001111_0
mov dword [ebp - 0xcc], str.1_000__01__110001_11011_1_0___1001101_11_01___0001_01_1_1__11_1_100000____0
mov dword [ebp - 0xc8], str.00_1_010011_110101___1111101011010001001___10_010101_1010110_1101__0_101011
mov dword [ebp - 0xc4], str.1____01__100_1_01_1_1__0011___110010___0__100_1__10__011_000__010_11_1__1_0
mov dword [ebp - 0xc0], str._1010_1000_1_0__0010__10001__0_101_0111_100_0__0_0111_1__111__0___101____01
mov dword [ebp - 0xbc], str.0000____1101_010_0_01010__0100__100110_1_10010011_00_001_1__11_10_00_1__00
mov dword [ebp - 0xb8], str.1010111_00_11_1_11_100__1_11011011000_000010_11101_10_0__011__1000110___010
mov dword [ebp - 0xb4], str.__1_1_1100_1_1_0_010_0_1_0_0_010_1_0_____0__0101101_0110_10__11__1011_0_10
mov dword [ebp - 0xb0], str.0___11__0_10100_00____100_11_00111__00011_01__00_1_0__100001___10____1_11_1
mov dword [ebp - 0xac], str.001_1_0_1__000_1111101__1001_1_10_10____00__1__1_1___1_011_110_001_00001011
mov dword [ebp - 0xa8], str.___1000110____00__10111_0111___011_____1_0101_11_101____0_1____111_0_0_1_1
mov dword [ebp - 0xa4], str.0_0000010_000_0_010010_1__10__1_0_0__1111010101_111__00011_1101110_01__01
mov dword [ebp - 0xa0], str._110_01_11110000000101101__1000___11100_011_1_0_011_11__00_00__001011_10110
mov dword [ebp - 0x9c], str.__1010101_01_01_1010_001___0__00100_11__0010__001011011_111010100_0111_1_0
mov dword [ebp - 0x98], str.__0___1_111111_1__100_00_1000010101_11_10000_101111_111011__1101_100100_001
mov dword [ebp - 0x94], str.___1_00_10111__0_110__101011__01_1_00010_0_010010_1110101101__01_0___01_1_0
mov dword [ebp - 0x90], str.0____0_0__01_11__01__0011__0_1_001_01_1_1_00__11_1010111000101_011_1_10_0_0
mov dword [ebp - 0x8c], str._00__00110_000100001111_10_1010101_111001_01__010___011_1_0_1_1___0111_1100
mov dword [ebp - 0x88], str.01__101001__0101_11110_01__11010__011011_11_1_01_01____0100111_110_11000111
mov dword [ebp - 0x84], str.10111__001_11_0__00_011_10_1_0__01010_00__11_111_10_01__0___111001__10_1_0
mov dword [ebp - 0x2c], 0
jmp 0x5bc3ec
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b673d
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b677e
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b688d
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b68ce
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b69b9
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b69fa
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b6ac7
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b6b04
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b6bc4
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b6c05
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b6cfb
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b6d38
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b6e96
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b6ed7
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b6fe6
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b7027
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b7112
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b7153
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b7220
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b725d
movsd qword [ebp - 0x54], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x54]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b731d
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b735e
movsd qword [ebp - 0x54], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x54]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b7456
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b7493
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b7603
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b7644
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b7753
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b7794
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b787f
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b78c0
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b798d
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b79ca
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b7a8a
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b7acb
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b7bc1
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b7bfe
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b7d66
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b7da7
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b7eb6
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b7ef7
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b7fe2
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b8023
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b80f0
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b812d
movsd qword [ebp - 0x60], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x60]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b81ed
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b822e
movsd qword [ebp - 0x60], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x60]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b8326
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b8363
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b84ce
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b850f
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b861e
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b865f
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b874a
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b878b
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b8858
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b8895
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b8955
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b8996
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b8a8c
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b8ac9
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b8c33
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b8c74
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b8d83
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b8dc4
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b8eaf
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b8ef0
movsd qword [ebp - 0x4c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x4c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b8fbd
movsd xmm0, qword [ebp - 0x10]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 0x10], xmm0
movsd xmm2, qword [ebp - 0x10]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b8ffa
movsd qword [ebp - 0x10], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x10]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b90ba
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b90fb
movsd qword [ebp - 0x10], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x10]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b91f1
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b922e
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b9399
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b93da
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b94e9
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b952a
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b9615
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b9656
movsd qword [ebp - 0x4c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x4c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b9723
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b9760
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b9820
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b9861
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b9957
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b9994
movsd qword [ebp - 0x4c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x4c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b9aef
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b9b30
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b9c45
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b9c86
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b9d77
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b9db8
movsd qword [ebp - 0x4c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x4c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b9e85
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b9ec2
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5b9f82
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5b9fc3
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5ba0bb
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5ba0f8
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5ba260
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5ba2a1
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5ba3b0
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5ba3f1
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5ba4dc
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5ba51d
movsd qword [ebp - 0x4c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x4c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5ba5ea
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5ba627
movsd qword [ebp - 0x68], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x68]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5ba6e7
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5ba728
movsd qword [ebp - 0x68], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x68]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5ba820
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5ba85d
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5ba9c8
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5baa09
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bab18
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bab59
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bac44
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bac85
movsd qword [ebp - 0x4c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x4c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bad52
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bad8f
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bae4f
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bae90
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5baf88
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bafc5
mov eax, dword [ebp - 0x2c]
push dword [ebp + eax*4 - 0x1e8]
mov eax, dword [0x7cbbfc]
call eax
inc dword [ebp - 0x2c]
pop ecx
cmp dword [ebp - 0x2c], 0x5a
jb 0x5bc3d7
lea ecx, [ebp - 0x7a]
mov byte [ebp - 0x7a], 0
call fcn.00415560
mov ebx, eax
mov dword [ebp - 0x2c], ebx
cmp byte [ebx + 4], 0
jne 0x5bcb49
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x40], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5bc58d
xor eax, eax
je 0x5bc47f
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
imul eax, dword [ebp - 0x20], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x38], ecx
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bc543
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x24]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5bc543
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5be8f1
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x38]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bc4dc
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x40]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bca1f
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bc6dd
xor eax, eax
je 0x5bc5d7
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bc693
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bc693
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5be937
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bc62c
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bc809
xor eax, eax
je 0x5bc703
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x10]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bc7bf
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bc7bf
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5be97d
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bc758
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5bc80e
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x38], ebx
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bc8cd
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bc8cd
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5be9c3
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bc864
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x40], eax
xor eax, eax
je 0x5bc916
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x38]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bc9ca
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bc9ca
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bea09
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bc961
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
mov ecx, dword [ebx]
and eax, ecx
add eax, eax
sub ecx, eax
add ecx, dword [ebp - 0x40]
mov dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bcb49
xor eax, eax
je 0x5bca47
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bcb03
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bcb03
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bea4f
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bca9a
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
lea ecx, [ebp - 0x7b]
mov byte [ebx + 4], 1
mov byte [ebp - 0x7b], 0
call fcn.00419732
movsd xmm0, qword [0x706c38]
mov ebx, eax
mov dword [ebp - 0x2c], ebx
movsd qword [ebp - 0x70], xmm0
cmp byte [ebx + 4], 0
jne 0x5bd2af
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x40], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5bccf5
xor eax, eax
je 0x5bcbe7
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
imul eax, dword [ebp - 0x20], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x38], ecx
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bccab
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x24]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5bccab
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bea95
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x38]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bcc44
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x40]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bd185
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bce45
xor eax, eax
je 0x5bcd3f
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x10]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bcdfb
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bcdfb
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5beadb
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bcd94
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bcf71
xor eax, eax
je 0x5bce6b
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bcf27
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bcf27
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5beb21
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bcec0
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5bcf76
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x38], ebx
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bd035
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bd035
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5beb67
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bcfcc
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x40], eax
xor eax, eax
je 0x5bd07e
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x38]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bd132
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bd132
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bebad
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bd0c9
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x40]
cvttsd2si eax, xmm2
and eax, dword [ebx]
add eax, eax
sub ecx, eax
add dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bd2af
xor eax, eax
je 0x5bd1ad
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bd269
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bd269
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bebf3
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bd200
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
mov byte [ebx + 4], 1
lea ecx, [ebp - 0x7c]
mov eax, dword [ebx]
mov dword [ebp - 0x48], eax
mov byte [ebp - 0x7c], 0
call fcn.004161c4
mov ebx, eax
mov dword [ebp - 0x2c], ebx
cmp byte [ebx + 4], 0
jne 0x5bda0f
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x40], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5bd453
xor eax, eax
je 0x5bd345
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
imul eax, dword [ebp - 0x20], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x38], ecx
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bd409
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x24]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5bd409
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bec39
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x38]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bd3a2
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x40]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bd8e5
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bd5a3
xor eax, eax
je 0x5bd49d
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x10]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bd559
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bd559
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bec7f
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bd4f2
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bd6cf
xor eax, eax
je 0x5bd5c9
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bd685
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bd685
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5becc5
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bd61e
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5bd6d4
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x38], ebx
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bd793
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bd793
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bed0b
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bd72a
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x40], eax
xor eax, eax
je 0x5bd7dc
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x38]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bd890
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bd890
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bed51
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bd827
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
mov ecx, dword [ebx]
and eax, ecx
add eax, eax
sub ecx, eax
add ecx, dword [ebp - 0x40]
mov dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bda0f
xor eax, eax
je 0x5bd90d
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bd9c9
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bd9c9
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bed97
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bd960
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
cmp dword [ebp - 0x48], 0
mov byte [ebx + 4], 1
movsd xmm0, qword [0x706c40]
movsd qword [ebp - 0x54], xmm0
je 0x5be185
lea ecx, [ebp - 0x7d]
mov byte [ebp - 0x7d], 0
call fcn.0041670c
mov ebx, eax
mov dword [ebp - 0x2c], ebx
cmp byte [ebx + 4], 0
jne 0x5be181
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x20], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x1c], ecx
add eax, ecx
mov dword [ebp - 0x40], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x14], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x18], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x24], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5bdbc5
xor eax, eax
je 0x5bdab7
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
imul eax, dword [ebp - 0x20], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x38], ecx
mulsd xmm0, qword [ebp - 0x10]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bdb7b
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x24]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5bdb7b
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5beddd
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x38]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bdb14
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x40]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5be057
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bdd15
xor eax, eax
je 0x5bdc0f
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x68]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bdccb
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bdccb
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bee23
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bdc64
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bde41
xor eax, eax
je 0x5bdd3b
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
imul ebx, dword [ebp - 0x20], 6
sub eax, ecx
movd xmm0, eax
add ebx, dword [ebp - 0x1c]
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x70]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bddf7
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x14]
mov edi, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bddf7
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bee69
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bdd90
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5bde46
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul ebx, esi, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add ebx, edi
mov dword [ebp - 0x38], ebx
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5bdf05
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5bdf05
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5beeaf
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, ebx
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bde9c
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + esi*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x40], eax
xor eax, eax
je 0x5bdf4e
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x38]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5be002
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5be002
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5beef5
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5bdf99
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
mov ecx, dword [ebx]
and eax, ecx
add eax, eax
sub ecx, eax
add ecx, dword [ebp - 0x40]
mov dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5be181
xor eax, eax
je 0x5be07f
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x20]
sub eax, ecx
mov edi, dword [ebp - 0x1c]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5be13b
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x14]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x18]
add eax, dword [ebp - 0x24]
add ecx, eax
je 0x5be13b
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bef3b
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5be0d2
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
mov byte [ebx + 4], 1
lea ecx, [ebp - 0x7e]
mov byte [ebp - 0x7e], 0
call fcn.00417f3a
mov ebx, eax
mov dword [ebp - 0x2c], ebx
cmp byte [ebx + 4], 0
jne 0x5be8e6
call fcn.005c47f6
movsx edi, al
mov dword [ebp - 0x28], edi
call fcn.005c47fc
movsx esi, al
imul esi, edi
mov dword [ebp - 0x24], esi
call fcn.005c480b
movsx ecx, al
imul eax, esi, 9
mov dword [ebp - 0x20], ecx
add eax, ecx
mov dword [ebp - 0x40], eax
call fcn.005c47ff
movsx esi, al
mov dword [ebp - 0x1c], esi
call fcn.005c4811
movsx edi, al
mov dword [ebp - 0x14], edi
call fcn.005c4808
movsx ecx, al
movsx eax, byte [0x7cd83c]
imul eax, esi
mov dword [ebp - 0x18], ecx
shl eax, 3
sub eax, edi
add eax, ecx
movsx ecx, byte [0x7cbbf2]
add ecx, eax
je 0x5be320
xor eax, eax
je 0x5be212
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
sub eax, ecx
mov esi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x20]
mov edi, dword [ebp - 0x14]
movd xmm0, eax
imul eax, dword [ebp - 0x24], 6
cvtdq2pd xmm0, xmm0
add ecx, eax
mov dword [ebp - 0x38], ecx
mulsd xmm0, qword [ebp - 0x10]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5be2d6
movsd xmm2, qword [ebp - 0x34]
mov ebx, dword [ebp - 0x18]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, ebx
add ecx, eax
je 0x5be2d6
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bef81
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x38]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5be26f
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x40]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5be7bc
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
imul eax, eax, 3
sub eax, edi
add eax, dword [ebp - 0x18]
add ecx, eax
je 0x5be475
xor eax, eax
je 0x5be36a
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x24]
sub eax, ecx
mov ecx, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x14]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
imul eax, ebx, 6
mulsd xmm0, qword [ebp - 0x68]
add ecx, eax
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
mov dword [ebp - 0x38], ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5be42e
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x18]
add ecx, eax
je 0x5be42e
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5befc7
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x38]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5be3c6
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x20]
movsx ecx, byte [0x7cbbf7]
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
shl eax, 3
sub eax, edi
add eax, dword [ebp - 0x18]
add ecx, eax
je 0x5be5a6
xor eax, eax
je 0x5be49b
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x24]
sub eax, ecx
mov ecx, dword [ebp - 0x20]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
imul eax, ebx, 6
mulsd xmm0, qword [ebp - 0x70]
add ecx, eax
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
add eax, ecx
mov dword [ebp - 0x38], ecx
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5be55f
movsd xmm2, qword [ebp - 0x34]
mov esi, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x14]
movsx eax, byte [0x7cd83c]
movsx ecx, byte [0x7cbbf2]
imul eax, esi
sub eax, edi
add eax, dword [ebp - 0x18]
add ecx, eax
je 0x5be55f
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bf00d
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
add eax, dword [ebp - 0x38]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5be4f7
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x20]
movsx ecx, byte [0x7cbbf7]
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ecx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ecx], eax
xor eax, eax
je 0x5be5ab
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x24]
sub eax, ecx
mov edi, dword [ebp - 0x20]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mov dword [ebp - 0x38], esi
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5be66a
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x1c]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x18]
add ecx, eax
je 0x5be66a
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bf053
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5be601
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
cvttsd2si eax, xmm2
mov dword [ebp - 0x40], eax
xor eax, eax
je 0x5be6b3
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov esi, dword [ebp - 0x38]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [ebp - 0x60]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5be767
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x1c]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x18]
add ecx, eax
je 0x5be767
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bf099
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5be6fe
movsx eax, byte [0x7cbbf8]
xor edx, edx
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
lea eax, [eax + ecx*2]
movsx ecx, byte [0x7cbbf7]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
mov ecx, dword [ebx]
and eax, ecx
add eax, eax
sub ecx, eax
add ecx, dword [ebp - 0x40]
mov dword [ebx], ecx
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x1c]
movsx ecx, byte [0x7cbbf2]
shl eax, 2
sub eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x18]
add ecx, eax
je 0x5be8e6
xor eax, eax
je 0x5be7e4
add byte [edi], cl
mov esi, 0x7cbbf20d
add byte [ebx], dh
ror byte [edi], cl
mov esi, 0x7cbbf605
add byte [ebx], al
leave
movsx ecx, byte [0x7cbbf2]
xor edx, edx
movsx eax, byte [0x7cbbf6]
add ecx, ecx
mov ebx, dword [ebp - 0x24]
sub eax, ecx
mov edi, dword [ebp - 0x20]
imul esi, ebx, 6
movd xmm0, eax
cvtdq2pd xmm0, xmm0
add esi, edi
mulsd xmm0, qword [ebp - 0x54]
movsd qword [ebp - 8], xmm0
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
je 0x5be8a0
movsd xmm2, qword [ebp - 0x34]
movsx eax, byte [0x7cd83c]
imul eax, dword [ebp - 0x1c]
movsx ecx, byte [0x7cbbf2]
sub eax, dword [ebp - 0x14]
add eax, dword [ebp - 0x18]
add ecx, eax
je 0x5be8a0
movd xmm0, dword [ebp - 0x28]
movsd xmm1, qword [ebp - 8]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm2
ucomisd xmm1, xmm0
movsd xmm0, qword [ebp - 8]
addsd xmm0, xmm2
lahf
test ah, 0x44
jp 0x5bf0df
movsd qword [ebp - 8], xmm0
xor edx, edx
movsx eax, byte [0x7cbbf8]
movsx ecx, byte [0x7cbbf7]
add eax, esi
div ecx
movsx ecx, byte [0x7cbbf0]
sub eax, ecx
jne 0x5be837
movsx eax, byte [0x7cbbf8]
xor edx, edx
movsx ecx, byte [0x7cbbf7]
add eax, edi
lea eax, [eax + ebx*2]
div ecx
movsx ecx, byte [0x7cbbf0]
movsd xmm2, qword [ebp - 8]
sub eax, ecx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x707030]
mulsd xmm2, xmm0
mov ebx, dword [ebp - 0x2c]
cvttsd2si eax, xmm2
xor dword [ebx], eax
mov byte [ebx + 4], 1
push dword [ebx]
call fcn.005ef6a8
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bc543
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bc584
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bc693
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bc6d4
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bc7bf
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bc800
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bc8cd
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bc90a
movsd qword [ebp - 0x70], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x70]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bc9ca
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bca0b
movsd qword [ebp - 0x70], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x70]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bcb03
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bcb40
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bccab
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bccec
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bcdfb
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bce3c
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bcf27
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bcf68
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bd035
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bd072
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bd132
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bd173
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bd269
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bd2a6
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bd409
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bd44a
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bd559
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bd59a
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bd685
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bd6c6
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bd793
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bd7d0
movsd qword [ebp - 0x54], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x54]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bd890
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bd8d1
movsd qword [ebp - 0x54], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x54]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bd9c9
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bda06
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bdb7b
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bdbbc
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bdccb
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bdd0c
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bddf7
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bde38
movsd qword [ebp - 0x44], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x44]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5bdf05
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5bdf42
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5be002
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5be043
movsd qword [ebp - 0x3c], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x3c]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5be13b
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5be178
movsd qword [ebp - 0x10], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x10]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5be2d6
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5be317
movsd qword [ebp - 0x10], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x10]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5be42e
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5be46c
movsd qword [ebp - 0x10], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x10]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5be55f
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5be59d
movsd qword [ebp - 0x10], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x10]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5be66a
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5be6a7
movsd qword [ebp - 0x10], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x10]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5be767
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5be7a8
movsd qword [ebp - 0x10], xmm0
call fcn.005c47f9
movsd xmm1, qword [ebp - 0x10]
movsx eax, al
movd xmm0, eax
cvtdq2pd xmm0, xmm0
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x5be8a0
movsd xmm0, qword [ebp - 8]
addsd xmm0, qword [ebp - 0x34]
movsd qword [ebp - 8], xmm0
movsd xmm2, qword [ebp - 8]
addsd xmm2, qword [ebp - 0x34]
jmp 0x5be8dd