Function at 0x4261e0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x16b18
call fcn.005d4fe0
push ebx
push esi
push edi
xor eax, eax
mov byte [ebp - 1], al
lea ecx, [ebp - 1]
call fcn.004261b0
mov dword [ebp - 0x180], eax
mov ecx, dword [ebp - 0x180]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x427302
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x184], eax
mov dword [ebp - 0x188], 0
jmp 0x42623c
mov ecx, dword [ebp - 0x188]
add ecx, 1
mov dword [ebp - 0x188], ecx
cmp dword [ebp - 0x188], 1
jae 0x427302
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x426514
xor eax, eax
je 0x426286
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4262c2
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ef8]
movsd qword [ebp - 0x86e0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x426462
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x426462
mov dword [ebp - 0x18c], 0
jmp 0x426341
cmp dword [ebp - 0x18c], 0xf
jae 0x42645d
cvtsi2sd xmm0, dword [ebp - 0x18c]
movsd xmm1, qword [ebp - 0x86e0]
addsd xmm1, xmm0
movsd qword [ebp - 0x86e8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x86e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4263b0
mov ecx, dword [ebp - 0x18c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x86e0]
addsd xmm1, xmm0
movsd qword [ebp - 0x86e0], xmm1
jmp 0x4262ac
cvtsi2sd xmm0, dword [ebp - 0x18c]
movsd xmm1, qword [ebp - 0x86e0]
addsd xmm1, xmm0
movsd qword [ebp - 0x86f0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x86f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42640d
mov eax, dword [ebp - 0x18c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x86e0]
addsd xmm1, xmm0
movsd qword [ebp - 0x86e0], xmm1
jmp 0x426426
mov ecx, 1
test ecx, ecx
je 0x426422
jmp 0x4264e2
jmp 0x426449
cvtsi2sd xmm0, dword [ebp - 0x18c]
movsd xmm1, qword [ebp - 0x86e0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x190], edx
jmp 0x4264ec
xor eax, eax
je 0x426453
jmp 0x426462
jmp 0x4262ac
jmp 0x4262ac
mov ecx, 2
test ecx, ecx
je 0x4264e2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x194], eax
cvtsi2sd xmm0, dword [ebp - 0x194]
mov eax, dword [ebp - 0x194]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x86e0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x190], ecx
jmp 0x4264ec
mov dword [ebp - 0x190], 8
mov edx, dword [ebp - 0x188]
shl edx, 2
add edx, dword [ebp - 0x184]
mov eax, dword [ebp - 0x190]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x188]
shl ecx, 2
add ecx, dword [ebp - 0x184]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x427032
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x426824
xor eax, eax
je 0x426596
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4265d2
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ef0]
movsd qword [ebp - 0x86f8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x426772
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x426772
mov dword [ebp - 0x198], 0
jmp 0x426651
cmp dword [ebp - 0x198], 0xf
jae 0x42676d
cvtsi2sd xmm0, dword [ebp - 0x198]
movsd xmm1, qword [ebp - 0x86f8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8700], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8700]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4266c0
mov ecx, dword [ebp - 0x198]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x86f8]
addsd xmm1, xmm0
movsd qword [ebp - 0x86f8], xmm1
jmp 0x4265bc
cvtsi2sd xmm0, dword [ebp - 0x198]
movsd xmm1, qword [ebp - 0x86f8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8708], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8708]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42671d
mov eax, dword [ebp - 0x198]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x86f8]
addsd xmm1, xmm0
movsd qword [ebp - 0x86f8], xmm1
jmp 0x426736
mov ecx, 1
test ecx, ecx
je 0x426732
jmp 0x4267f2
jmp 0x426759
cvtsi2sd xmm0, dword [ebp - 0x198]
movsd xmm1, qword [ebp - 0x86f8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x19c], edx
jmp 0x4267fc
xor eax, eax
je 0x426763
jmp 0x426772
jmp 0x4265bc
jmp 0x4265bc
mov ecx, 2
test ecx, ecx
je 0x4267f2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1a0], eax
cvtsi2sd xmm0, dword [ebp - 0x1a0]
mov eax, dword [ebp - 0x1a0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x86f8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x19c], ecx
jmp 0x4267fc
mov dword [ebp - 0x19c], 8
mov edx, dword [ebp - 0x188]
shl edx, 2
add edx, dword [ebp - 0x184]
mov eax, dword [ebp - 0x19c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x188]
shl ecx, 2
add ecx, dword [ebp - 0x184]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x426aef
xor eax, eax
je 0x426861
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42689d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ee8]
movsd qword [ebp - 0x8710], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x426a3d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x426a3d
mov dword [ebp - 0x1a4], 0
jmp 0x42691c
cmp dword [ebp - 0x1a4], 0xf
jae 0x426a38
cvtsi2sd xmm0, dword [ebp - 0x1a4]
movsd xmm1, qword [ebp - 0x8710]
addsd xmm1, xmm0
movsd qword [ebp - 0x8718], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8718]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42698b
mov ecx, dword [ebp - 0x1a4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8710]
addsd xmm1, xmm0
movsd qword [ebp - 0x8710], xmm1
jmp 0x426887
cvtsi2sd xmm0, dword [ebp - 0x1a4]
movsd xmm1, qword [ebp - 0x8710]
addsd xmm1, xmm0
movsd qword [ebp - 0x8720], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8720]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4269e8
mov eax, dword [ebp - 0x1a4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8710]
addsd xmm1, xmm0
movsd qword [ebp - 0x8710], xmm1
jmp 0x426a01
mov ecx, 1
test ecx, ecx
je 0x4269fd
jmp 0x426abd
jmp 0x426a24
cvtsi2sd xmm0, dword [ebp - 0x1a4]
movsd xmm1, qword [ebp - 0x8710]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1a8], edx
jmp 0x426ac7
xor eax, eax
je 0x426a2e
jmp 0x426a3d
jmp 0x426887
jmp 0x426887
mov ecx, 2
test ecx, ecx
je 0x426abd
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ac], eax
cvtsi2sd xmm0, dword [ebp - 0x1ac]
mov eax, dword [ebp - 0x1ac]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8710]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1a8], ecx
jmp 0x426ac7
mov dword [ebp - 0x1a8], 8
mov edx, dword [ebp - 0x188]
shl edx, 2
add edx, dword [ebp - 0x184]
mov eax, dword [ebp - 0x1a8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x188]
shl ecx, 2
add ecx, dword [ebp - 0x184]
mov dword [ecx], eax
mov edx, dword [ebp - 0x188]
add edx, 0xffffff9f
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8728], xmm0
xor eax, eax
je 0x426b09
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x426b45
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8728]
movsd qword [ebp - 0x8730], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x426ce5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x426ce5
mov dword [ebp - 0x1b0], 0
jmp 0x426bc4
cmp dword [ebp - 0x1b0], 0xf
jae 0x426ce0
cvtsi2sd xmm0, dword [ebp - 0x1b0]
movsd xmm1, qword [ebp - 0x8730]
addsd xmm1, xmm0
movsd qword [ebp - 0x8738], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8738]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x426c33
mov ecx, dword [ebp - 0x1b0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8730]
addsd xmm1, xmm0
movsd qword [ebp - 0x8730], xmm1
jmp 0x426b2f
cvtsi2sd xmm0, dword [ebp - 0x1b0]
movsd xmm1, qword [ebp - 0x8730]
addsd xmm1, xmm0
movsd qword [ebp - 0x8740], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8740]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x426c90
mov eax, dword [ebp - 0x1b0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8730]
addsd xmm1, xmm0
movsd qword [ebp - 0x8730], xmm1
jmp 0x426ca9
mov ecx, 1
test ecx, ecx
je 0x426ca5
jmp 0x426d65
jmp 0x426ccc
cvtsi2sd xmm0, dword [ebp - 0x1b0]
movsd xmm1, qword [ebp - 0x8730]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1b4], edx
jmp 0x426d6f
xor eax, eax
je 0x426cd6
jmp 0x426ce5
jmp 0x426b2f
jmp 0x426b2f
mov ecx, 2
test ecx, ecx
je 0x426d65
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1b8], eax
cvtsi2sd xmm0, dword [ebp - 0x1b8]
mov eax, dword [ebp - 0x1b8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8730]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1b4], ecx
jmp 0x426d6f
mov dword [ebp - 0x1b4], 8
mov edx, dword [ebp - 0x188]
add edx, 0xffffff9f
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8748], xmm0
xor eax, eax
je 0x426d89
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x426dc5
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8748]
movsd qword [ebp - 0x8750], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x426f65
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x426f65
mov dword [ebp - 0x1bc], 0
jmp 0x426e44
cmp dword [ebp - 0x1bc], 0xf
jae 0x426f60
cvtsi2sd xmm0, dword [ebp - 0x1bc]
movsd xmm1, qword [ebp - 0x8750]
addsd xmm1, xmm0
movsd qword [ebp - 0x8758], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8758]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x426eb3
mov ecx, dword [ebp - 0x1bc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8750]
addsd xmm1, xmm0
movsd qword [ebp - 0x8750], xmm1
jmp 0x426daf
cvtsi2sd xmm0, dword [ebp - 0x1bc]
movsd xmm1, qword [ebp - 0x8750]
addsd xmm1, xmm0
movsd qword [ebp - 0x8760], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8760]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x426f10
mov eax, dword [ebp - 0x1bc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8750]
addsd xmm1, xmm0
movsd qword [ebp - 0x8750], xmm1
jmp 0x426f29
mov ecx, 1
test ecx, ecx
je 0x426f25
jmp 0x426fe5
jmp 0x426f4c
cvtsi2sd xmm0, dword [ebp - 0x1bc]
movsd xmm1, qword [ebp - 0x8750]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1c0], edx
jmp 0x426fef
xor eax, eax
je 0x426f56
jmp 0x426f65
jmp 0x426daf
jmp 0x426daf
mov ecx, 2
test ecx, ecx
je 0x426fe5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1c4], eax
cvtsi2sd xmm0, dword [ebp - 0x1c4]
mov eax, dword [ebp - 0x1c4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8750]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1c0], ecx
jmp 0x426fef
mov dword [ebp - 0x1c0], 8
mov edx, dword [ebp - 0x188]
shl edx, 2
add edx, dword [ebp - 0x184]
mov eax, dword [ebp - 0x1b4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x188]
shl ecx, 2
add ecx, dword [ebp - 0x184]
mov edx, dword [ebp - 0x1c0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x188]
shl ecx, 2
add ecx, dword [ebp - 0x184]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4272fd
xor eax, eax
je 0x42706f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4270ab
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ee0]
movsd qword [ebp - 0x8768], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42724b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42724b
mov dword [ebp - 0x1c8], 0
jmp 0x42712a
cmp dword [ebp - 0x1c8], 0xf
jae 0x427246
cvtsi2sd xmm0, dword [ebp - 0x1c8]
movsd xmm1, qword [ebp - 0x8768]
addsd xmm1, xmm0
movsd qword [ebp - 0x8770], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8770]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x427199
mov ecx, dword [ebp - 0x1c8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8768]
addsd xmm1, xmm0
movsd qword [ebp - 0x8768], xmm1
jmp 0x427095
cvtsi2sd xmm0, dword [ebp - 0x1c8]
movsd xmm1, qword [ebp - 0x8768]
addsd xmm1, xmm0
movsd qword [ebp - 0x8778], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8778]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4271f6
mov eax, dword [ebp - 0x1c8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8768]
addsd xmm1, xmm0
movsd qword [ebp - 0x8768], xmm1
jmp 0x42720f
mov ecx, 1
test ecx, ecx
je 0x42720b
jmp 0x4272cb
jmp 0x427232
cvtsi2sd xmm0, dword [ebp - 0x1c8]
movsd xmm1, qword [ebp - 0x8768]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1cc], edx
jmp 0x4272d5
xor eax, eax
je 0x42723c
jmp 0x42724b
jmp 0x427095
jmp 0x427095
mov ecx, 2
test ecx, ecx
je 0x4272cb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1d0], eax
cvtsi2sd xmm0, dword [ebp - 0x1d0]
mov eax, dword [ebp - 0x1d0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8768]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1cc], ecx
jmp 0x4272d5
mov dword [ebp - 0x1cc], 8
mov edx, dword [ebp - 0x188]
shl edx, 2
add edx, dword [ebp - 0x184]
mov eax, dword [ebp - 0x1cc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x188]
shl ecx, 2
add ecx, dword [ebp - 0x184]
mov dword [ecx], eax
jmp 0x42622d
mov edx, dword [ebp - 0x180]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x1d4], eax
mov ecx, dword [ebp - 0x1d4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1d8], ecx
mov edx, dword [ebp - 0x1d8]
mov dword [ebp - 0x1dc], edx
xor eax, eax
mov byte [ebp - 2], al
lea ecx, [ebp - 2]
call fcn.00426180
mov dword [ebp - 0x1e0], eax
mov ecx, dword [ebp - 0x1e0]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x42844d
mov eax, dword [ebp - 0x1e0]
mov dword [ebp - 0x1e4], eax
mov dword [ebp - 0x1e8], 0
jmp 0x427387
mov ecx, dword [ebp - 0x1e8]
add ecx, 1
mov dword [ebp - 0x1e8], ecx
cmp dword [ebp - 0x1e8], 1
jae 0x42844d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42765f
xor eax, eax
je 0x4273d1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42740d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ef0]
movsd qword [ebp - 0x8780], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4275ad
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4275ad
mov dword [ebp - 0x1ec], 0
jmp 0x42748c
cmp dword [ebp - 0x1ec], 0xf
jae 0x4275a8
cvtsi2sd xmm0, dword [ebp - 0x1ec]
movsd xmm1, qword [ebp - 0x8780]
addsd xmm1, xmm0
movsd qword [ebp - 0x8788], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8788]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4274fb
mov ecx, dword [ebp - 0x1ec]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8780]
addsd xmm1, xmm0
movsd qword [ebp - 0x8780], xmm1
jmp 0x4273f7
cvtsi2sd xmm0, dword [ebp - 0x1ec]
movsd xmm1, qword [ebp - 0x8780]
addsd xmm1, xmm0
movsd qword [ebp - 0x8790], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8790]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x427558
mov eax, dword [ebp - 0x1ec]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8780]
addsd xmm1, xmm0
movsd qword [ebp - 0x8780], xmm1
jmp 0x427571
mov ecx, 1
test ecx, ecx
je 0x42756d
jmp 0x42762d
jmp 0x427594
cvtsi2sd xmm0, dword [ebp - 0x1ec]
movsd xmm1, qword [ebp - 0x8780]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f0], edx
jmp 0x427637
xor eax, eax
je 0x42759e
jmp 0x4275ad
jmp 0x4273f7
jmp 0x4273f7
mov ecx, 2
test ecx, ecx
je 0x42762d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1f4], eax
cvtsi2sd xmm0, dword [ebp - 0x1f4]
mov eax, dword [ebp - 0x1f4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8780]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f0], ecx
jmp 0x427637
mov dword [ebp - 0x1f0], 8
mov edx, dword [ebp - 0x1e8]
shl edx, 2
add edx, dword [ebp - 0x1e4]
mov eax, dword [ebp - 0x1f0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1e8]
shl ecx, 2
add ecx, dword [ebp - 0x1e4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42817d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42796f
xor eax, eax
je 0x4276e1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42771d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ee8]
movsd qword [ebp - 0x8798], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4278bd
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4278bd
mov dword [ebp - 0x1f8], 0
jmp 0x42779c
cmp dword [ebp - 0x1f8], 0xf
jae 0x4278b8
cvtsi2sd xmm0, dword [ebp - 0x1f8]
movsd xmm1, qword [ebp - 0x8798]
addsd xmm1, xmm0
movsd qword [ebp - 0x87a0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x87a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42780b
mov ecx, dword [ebp - 0x1f8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8798]
addsd xmm1, xmm0
movsd qword [ebp - 0x8798], xmm1
jmp 0x427707
cvtsi2sd xmm0, dword [ebp - 0x1f8]
movsd xmm1, qword [ebp - 0x8798]
addsd xmm1, xmm0
movsd qword [ebp - 0x87a8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x87a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x427868
mov eax, dword [ebp - 0x1f8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8798]
addsd xmm1, xmm0
movsd qword [ebp - 0x8798], xmm1
jmp 0x427881
mov ecx, 1
test ecx, ecx
je 0x42787d
jmp 0x42793d
jmp 0x4278a4
cvtsi2sd xmm0, dword [ebp - 0x1f8]
movsd xmm1, qword [ebp - 0x8798]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1fc], edx
jmp 0x427947
xor eax, eax
je 0x4278ae
jmp 0x4278bd
jmp 0x427707
jmp 0x427707
mov ecx, 2
test ecx, ecx
je 0x42793d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x200], eax
cvtsi2sd xmm0, dword [ebp - 0x200]
mov eax, dword [ebp - 0x200]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8798]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1fc], ecx
jmp 0x427947
mov dword [ebp - 0x1fc], 8
mov edx, dword [ebp - 0x1e8]
shl edx, 2
add edx, dword [ebp - 0x1e4]
mov eax, dword [ebp - 0x1fc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1e8]
shl ecx, 2
add ecx, dword [ebp - 0x1e4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x427c3a
xor eax, eax
je 0x4279ac
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4279e8
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ee0]
movsd qword [ebp - 0x87b0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x427b88
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x427b88
mov dword [ebp - 0x204], 0
jmp 0x427a67
cmp dword [ebp - 0x204], 0xf
jae 0x427b83
cvtsi2sd xmm0, dword [ebp - 0x204]
movsd xmm1, qword [ebp - 0x87b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x87b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x87b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x427ad6
mov ecx, dword [ebp - 0x204]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x87b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x87b0], xmm1
jmp 0x4279d2
cvtsi2sd xmm0, dword [ebp - 0x204]
movsd xmm1, qword [ebp - 0x87b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x87c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x87c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x427b33
mov eax, dword [ebp - 0x204]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x87b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x87b0], xmm1
jmp 0x427b4c
mov ecx, 1
test ecx, ecx
je 0x427b48
jmp 0x427c08
jmp 0x427b6f
cvtsi2sd xmm0, dword [ebp - 0x204]
movsd xmm1, qword [ebp - 0x87b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x208], edx
jmp 0x427c12
xor eax, eax
je 0x427b79
jmp 0x427b88
jmp 0x4279d2
jmp 0x4279d2
mov ecx, 2
test ecx, ecx
je 0x427c08
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x20c], eax
cvtsi2sd xmm0, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x20c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x87b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x208], ecx
jmp 0x427c12
mov dword [ebp - 0x208], 8
mov edx, dword [ebp - 0x1e8]
shl edx, 2
add edx, dword [ebp - 0x1e4]
mov eax, dword [ebp - 0x208]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1e8]
shl ecx, 2
add ecx, dword [ebp - 0x1e4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1e8]
add edx, 0xffffffa0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x87c8], xmm0
xor eax, eax
je 0x427c54
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x427c90
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x87c8]
movsd qword [ebp - 0x87d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x427e30
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x427e30
mov dword [ebp - 0x210], 0
jmp 0x427d0f
cmp dword [ebp - 0x210], 0xf
jae 0x427e2b
cvtsi2sd xmm0, dword [ebp - 0x210]
movsd xmm1, qword [ebp - 0x87d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x87d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x87d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x427d7e
mov ecx, dword [ebp - 0x210]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x87d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x87d0], xmm1
jmp 0x427c7a
cvtsi2sd xmm0, dword [ebp - 0x210]
movsd xmm1, qword [ebp - 0x87d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x87e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x87e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x427ddb
mov eax, dword [ebp - 0x210]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x87d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x87d0], xmm1
jmp 0x427df4
mov ecx, 1
test ecx, ecx
je 0x427df0
jmp 0x427eb0
jmp 0x427e17
cvtsi2sd xmm0, dword [ebp - 0x210]
movsd xmm1, qword [ebp - 0x87d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x214], edx
jmp 0x427eba
xor eax, eax
je 0x427e21
jmp 0x427e30
jmp 0x427c7a
jmp 0x427c7a
mov ecx, 2
test ecx, ecx
je 0x427eb0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x218], eax
cvtsi2sd xmm0, dword [ebp - 0x218]
mov eax, dword [ebp - 0x218]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x87d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x214], ecx
jmp 0x427eba
mov dword [ebp - 0x214], 8
mov edx, dword [ebp - 0x1e8]
add edx, 0xffffffa0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x87e8], xmm0
xor eax, eax
je 0x427ed4
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x427f10
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x87e8]
movsd qword [ebp - 0x87f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4280b0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4280b0
mov dword [ebp - 0x21c], 0
jmp 0x427f8f
cmp dword [ebp - 0x21c], 0xf
jae 0x4280ab
cvtsi2sd xmm0, dword [ebp - 0x21c]
movsd xmm1, qword [ebp - 0x87f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x87f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x87f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x427ffe
mov ecx, dword [ebp - 0x21c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x87f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x87f0], xmm1
jmp 0x427efa
cvtsi2sd xmm0, dword [ebp - 0x21c]
movsd xmm1, qword [ebp - 0x87f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8800], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8800]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42805b
mov eax, dword [ebp - 0x21c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x87f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x87f0], xmm1
jmp 0x428074
mov ecx, 1
test ecx, ecx
je 0x428070
jmp 0x428130
jmp 0x428097
cvtsi2sd xmm0, dword [ebp - 0x21c]
movsd xmm1, qword [ebp - 0x87f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x220], edx
jmp 0x42813a
xor eax, eax
je 0x4280a1
jmp 0x4280b0
jmp 0x427efa
jmp 0x427efa
mov ecx, 2
test ecx, ecx
je 0x428130
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x224], eax
cvtsi2sd xmm0, dword [ebp - 0x224]
mov eax, dword [ebp - 0x224]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x87f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x220], ecx
jmp 0x42813a
mov dword [ebp - 0x220], 8
mov edx, dword [ebp - 0x1e8]
shl edx, 2
add edx, dword [ebp - 0x1e4]
mov eax, dword [ebp - 0x214]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1e8]
shl ecx, 2
add ecx, dword [ebp - 0x1e4]
mov edx, dword [ebp - 0x220]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1e8]
shl ecx, 2
add ecx, dword [ebp - 0x1e4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x428448
xor eax, eax
je 0x4281ba
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4281f6
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed8]
movsd qword [ebp - 0x8808], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x428396
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x428396
mov dword [ebp - 0x228], 0
jmp 0x428275
cmp dword [ebp - 0x228], 0xf
jae 0x428391
cvtsi2sd xmm0, dword [ebp - 0x228]
movsd xmm1, qword [ebp - 0x8808]
addsd xmm1, xmm0
movsd qword [ebp - 0x8810], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8810]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4282e4
mov ecx, dword [ebp - 0x228]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8808]
addsd xmm1, xmm0
movsd qword [ebp - 0x8808], xmm1
jmp 0x4281e0
cvtsi2sd xmm0, dword [ebp - 0x228]
movsd xmm1, qword [ebp - 0x8808]
addsd xmm1, xmm0
movsd qword [ebp - 0x8818], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8818]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x428341
mov eax, dword [ebp - 0x228]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8808]
addsd xmm1, xmm0
movsd qword [ebp - 0x8808], xmm1
jmp 0x42835a
mov ecx, 1
test ecx, ecx
je 0x428356
jmp 0x428416
jmp 0x42837d
cvtsi2sd xmm0, dword [ebp - 0x228]
movsd xmm1, qword [ebp - 0x8808]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x22c], edx
jmp 0x428420
xor eax, eax
je 0x428387
jmp 0x428396
jmp 0x4281e0
jmp 0x4281e0
mov ecx, 2
test ecx, ecx
je 0x428416
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x230], eax
cvtsi2sd xmm0, dword [ebp - 0x230]
mov eax, dword [ebp - 0x230]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8808]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x22c], ecx
jmp 0x428420
mov dword [ebp - 0x22c], 8
mov edx, dword [ebp - 0x1e8]
shl edx, 2
add edx, dword [ebp - 0x1e4]
mov eax, dword [ebp - 0x22c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1e8]
shl ecx, 2
add ecx, dword [ebp - 0x1e4]
mov dword [ecx], eax
jmp 0x427378
mov edx, dword [ebp - 0x1e0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1e0]
mov dword [ebp - 0x234], eax
mov ecx, dword [ebp - 0x234]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x238], ecx
mov edx, dword [ebp - 0x238]
mov dword [ebp - 0x23c], edx
xor eax, eax
mov byte [ebp - 3], al
lea ecx, [ebp - 3]
call fcn.00426150
mov dword [ebp - 0x240], eax
mov ecx, dword [ebp - 0x240]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x429598
mov eax, dword [ebp - 0x240]
mov dword [ebp - 0x244], eax
mov dword [ebp - 0x248], 0
jmp 0x4284d2
mov ecx, dword [ebp - 0x248]
add ecx, 1
mov dword [ebp - 0x248], ecx
cmp dword [ebp - 0x248], 1
jae 0x429598
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4287aa
xor eax, eax
je 0x42851c
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x428558
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ef0]
movsd qword [ebp - 0x8820], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4286f8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4286f8
mov dword [ebp - 0x24c], 0
jmp 0x4285d7
cmp dword [ebp - 0x24c], 0xf
jae 0x4286f3
cvtsi2sd xmm0, dword [ebp - 0x24c]
movsd xmm1, qword [ebp - 0x8820]
addsd xmm1, xmm0
movsd qword [ebp - 0x8828], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8828]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x428646
mov ecx, dword [ebp - 0x24c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8820]
addsd xmm1, xmm0
movsd qword [ebp - 0x8820], xmm1
jmp 0x428542
cvtsi2sd xmm0, dword [ebp - 0x24c]
movsd xmm1, qword [ebp - 0x8820]
addsd xmm1, xmm0
movsd qword [ebp - 0x8830], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8830]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4286a3
mov eax, dword [ebp - 0x24c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8820]
addsd xmm1, xmm0
movsd qword [ebp - 0x8820], xmm1
jmp 0x4286bc
mov ecx, 1
test ecx, ecx
je 0x4286b8
jmp 0x428778
jmp 0x4286df
cvtsi2sd xmm0, dword [ebp - 0x24c]
movsd xmm1, qword [ebp - 0x8820]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x250], edx
jmp 0x428782
xor eax, eax
je 0x4286e9
jmp 0x4286f8
jmp 0x428542
jmp 0x428542
mov ecx, 2
test ecx, ecx
je 0x428778
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x254], eax
cvtsi2sd xmm0, dword [ebp - 0x254]
mov eax, dword [ebp - 0x254]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8820]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x250], ecx
jmp 0x428782
mov dword [ebp - 0x250], 8
mov edx, dword [ebp - 0x248]
shl edx, 2
add edx, dword [ebp - 0x244]
mov eax, dword [ebp - 0x250]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x248]
shl ecx, 2
add ecx, dword [ebp - 0x244]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4292c8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x428aba
xor eax, eax
je 0x42882c
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x428868
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ee8]
movsd qword [ebp - 0x8838], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x428a08
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x428a08
mov dword [ebp - 0x258], 0
jmp 0x4288e7
cmp dword [ebp - 0x258], 0xf
jae 0x428a03
cvtsi2sd xmm0, dword [ebp - 0x258]
movsd xmm1, qword [ebp - 0x8838]
addsd xmm1, xmm0
movsd qword [ebp - 0x8840], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8840]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x428956
mov ecx, dword [ebp - 0x258]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8838]
addsd xmm1, xmm0
movsd qword [ebp - 0x8838], xmm1
jmp 0x428852
cvtsi2sd xmm0, dword [ebp - 0x258]
movsd xmm1, qword [ebp - 0x8838]
addsd xmm1, xmm0
movsd qword [ebp - 0x8848], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8848]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4289b3
mov eax, dword [ebp - 0x258]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8838]
addsd xmm1, xmm0
movsd qword [ebp - 0x8838], xmm1
jmp 0x4289cc
mov ecx, 1
test ecx, ecx
je 0x4289c8
jmp 0x428a88
jmp 0x4289ef
cvtsi2sd xmm0, dword [ebp - 0x258]
movsd xmm1, qword [ebp - 0x8838]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x25c], edx
jmp 0x428a92
xor eax, eax
je 0x4289f9
jmp 0x428a08
jmp 0x428852
jmp 0x428852
mov ecx, 2
test ecx, ecx
je 0x428a88
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x260], eax
cvtsi2sd xmm0, dword [ebp - 0x260]
mov eax, dword [ebp - 0x260]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8838]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x25c], ecx
jmp 0x428a92
mov dword [ebp - 0x25c], 8
mov edx, dword [ebp - 0x248]
shl edx, 2
add edx, dword [ebp - 0x244]
mov eax, dword [ebp - 0x25c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x248]
shl ecx, 2
add ecx, dword [ebp - 0x244]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x428d85
xor eax, eax
je 0x428af7
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x428b33
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ee0]
movsd qword [ebp - 0x8850], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x428cd3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x428cd3
mov dword [ebp - 0x264], 0
jmp 0x428bb2
cmp dword [ebp - 0x264], 0xf
jae 0x428cce
cvtsi2sd xmm0, dword [ebp - 0x264]
movsd xmm1, qword [ebp - 0x8850]
addsd xmm1, xmm0
movsd qword [ebp - 0x8858], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8858]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x428c21
mov ecx, dword [ebp - 0x264]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8850]
addsd xmm1, xmm0
movsd qword [ebp - 0x8850], xmm1
jmp 0x428b1d
cvtsi2sd xmm0, dword [ebp - 0x264]
movsd xmm1, qword [ebp - 0x8850]
addsd xmm1, xmm0
movsd qword [ebp - 0x8860], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8860]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x428c7e
mov eax, dword [ebp - 0x264]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8850]
addsd xmm1, xmm0
movsd qword [ebp - 0x8850], xmm1
jmp 0x428c97
mov ecx, 1
test ecx, ecx
je 0x428c93
jmp 0x428d53
jmp 0x428cba
cvtsi2sd xmm0, dword [ebp - 0x264]
movsd xmm1, qword [ebp - 0x8850]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x268], edx
jmp 0x428d5d
xor eax, eax
je 0x428cc4
jmp 0x428cd3
jmp 0x428b1d
jmp 0x428b1d
mov ecx, 2
test ecx, ecx
je 0x428d53
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x26c], eax
cvtsi2sd xmm0, dword [ebp - 0x26c]
mov eax, dword [ebp - 0x26c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8850]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x268], ecx
jmp 0x428d5d
mov dword [ebp - 0x268], 8
mov edx, dword [ebp - 0x248]
shl edx, 2
add edx, dword [ebp - 0x244]
mov eax, dword [ebp - 0x268]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x248]
shl ecx, 2
add ecx, dword [ebp - 0x244]
mov dword [ecx], eax
mov edx, dword [ebp - 0x248]
add edx, 0xffffffa0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8868], xmm0
xor eax, eax
je 0x428d9f
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x428ddb
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8868]
movsd qword [ebp - 0x8870], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x428f7b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x428f7b
mov dword [ebp - 0x270], 0
jmp 0x428e5a
cmp dword [ebp - 0x270], 0xf
jae 0x428f76
cvtsi2sd xmm0, dword [ebp - 0x270]
movsd xmm1, qword [ebp - 0x8870]
addsd xmm1, xmm0
movsd qword [ebp - 0x8878], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8878]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x428ec9
mov ecx, dword [ebp - 0x270]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8870]
addsd xmm1, xmm0
movsd qword [ebp - 0x8870], xmm1
jmp 0x428dc5
cvtsi2sd xmm0, dword [ebp - 0x270]
movsd xmm1, qword [ebp - 0x8870]
addsd xmm1, xmm0
movsd qword [ebp - 0x8880], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8880]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x428f26
mov eax, dword [ebp - 0x270]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8870]
addsd xmm1, xmm0
movsd qword [ebp - 0x8870], xmm1
jmp 0x428f3f
mov ecx, 1
test ecx, ecx
je 0x428f3b
jmp 0x428ffb
jmp 0x428f62
cvtsi2sd xmm0, dword [ebp - 0x270]
movsd xmm1, qword [ebp - 0x8870]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x274], edx
jmp 0x429005
xor eax, eax
je 0x428f6c
jmp 0x428f7b
jmp 0x428dc5
jmp 0x428dc5
mov ecx, 2
test ecx, ecx
je 0x428ffb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x278], eax
cvtsi2sd xmm0, dword [ebp - 0x278]
mov eax, dword [ebp - 0x278]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8870]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x274], ecx
jmp 0x429005
mov dword [ebp - 0x274], 8
mov edx, dword [ebp - 0x248]
add edx, 0xffffffa0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8888], xmm0
xor eax, eax
je 0x42901f
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42905b
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8888]
movsd qword [ebp - 0x8890], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4291fb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4291fb
mov dword [ebp - 0x27c], 0
jmp 0x4290da
cmp dword [ebp - 0x27c], 0xf
jae 0x4291f6
cvtsi2sd xmm0, dword [ebp - 0x27c]
movsd xmm1, qword [ebp - 0x8890]
addsd xmm1, xmm0
movsd qword [ebp - 0x8898], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8898]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x429149
mov ecx, dword [ebp - 0x27c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8890]
addsd xmm1, xmm0
movsd qword [ebp - 0x8890], xmm1
jmp 0x429045
cvtsi2sd xmm0, dword [ebp - 0x27c]
movsd xmm1, qword [ebp - 0x8890]
addsd xmm1, xmm0
movsd qword [ebp - 0x88a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x88a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4291a6
mov eax, dword [ebp - 0x27c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8890]
addsd xmm1, xmm0
movsd qword [ebp - 0x8890], xmm1
jmp 0x4291bf
mov ecx, 1
test ecx, ecx
je 0x4291bb
jmp 0x42927b
jmp 0x4291e2
cvtsi2sd xmm0, dword [ebp - 0x27c]
movsd xmm1, qword [ebp - 0x8890]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x280], edx
jmp 0x429285
xor eax, eax
je 0x4291ec
jmp 0x4291fb
jmp 0x429045
jmp 0x429045
mov ecx, 2
test ecx, ecx
je 0x42927b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x284], eax
cvtsi2sd xmm0, dword [ebp - 0x284]
mov eax, dword [ebp - 0x284]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8890]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x280], ecx
jmp 0x429285
mov dword [ebp - 0x280], 8
mov edx, dword [ebp - 0x248]
shl edx, 2
add edx, dword [ebp - 0x244]
mov eax, dword [ebp - 0x274]
add eax, dword [edx]
mov ecx, dword [ebp - 0x248]
shl ecx, 2
add ecx, dword [ebp - 0x244]
mov edx, dword [ebp - 0x280]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x248]
shl ecx, 2
add ecx, dword [ebp - 0x244]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x429593
xor eax, eax
je 0x429305
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x429341
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed8]
movsd qword [ebp - 0x88a8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4294e1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4294e1
mov dword [ebp - 0x288], 0
jmp 0x4293c0
cmp dword [ebp - 0x288], 0xf
jae 0x4294dc
cvtsi2sd xmm0, dword [ebp - 0x288]
movsd xmm1, qword [ebp - 0x88a8]
addsd xmm1, xmm0
movsd qword [ebp - 0x88b0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x88b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42942f
mov ecx, dword [ebp - 0x288]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x88a8]
addsd xmm1, xmm0
movsd qword [ebp - 0x88a8], xmm1
jmp 0x42932b
cvtsi2sd xmm0, dword [ebp - 0x288]
movsd xmm1, qword [ebp - 0x88a8]
addsd xmm1, xmm0
movsd qword [ebp - 0x88b8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x88b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42948c
mov eax, dword [ebp - 0x288]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x88a8]
addsd xmm1, xmm0
movsd qword [ebp - 0x88a8], xmm1
jmp 0x4294a5
mov ecx, 1
test ecx, ecx
je 0x4294a1
jmp 0x429561
jmp 0x4294c8
cvtsi2sd xmm0, dword [ebp - 0x288]
movsd xmm1, qword [ebp - 0x88a8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x28c], edx
jmp 0x42956b
xor eax, eax
je 0x4294d2
jmp 0x4294e1
jmp 0x42932b
jmp 0x42932b
mov ecx, 2
test ecx, ecx
je 0x429561
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x290], eax
cvtsi2sd xmm0, dword [ebp - 0x290]
mov eax, dword [ebp - 0x290]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x88a8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x28c], ecx
jmp 0x42956b
mov dword [ebp - 0x28c], 8
mov edx, dword [ebp - 0x248]
shl edx, 2
add edx, dword [ebp - 0x244]
mov eax, dword [ebp - 0x28c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x248]
shl ecx, 2
add ecx, dword [ebp - 0x244]
mov dword [ecx], eax
jmp 0x4284c3
mov edx, dword [ebp - 0x240]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x240]
mov dword [ebp - 0x294], eax
mov ecx, dword [ebp - 0x294]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x298], ecx
mov edx, dword [ebp - 0x298]
mov dword [ebp - 0x29c], edx
mov eax, dword [ebp - 0x23c]
mov dword [ebp - 0x1dc], eax
cmp dword [ebp - 0x1dc], 0
je 0x42a735
xor ecx, ecx
mov byte [ebp - 4], cl
lea ecx, [ebp - 4]
call fcn.00426120
mov dword [ebp - 0x2a0], eax
mov edx, dword [ebp - 0x2a0]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x42a6fc
mov ecx, dword [ebp - 0x2a0]
mov dword [ebp - 0x2a4], ecx
mov dword [ebp - 0x2a8], 0
jmp 0x429636
mov edx, dword [ebp - 0x2a8]
add edx, 1
mov dword [ebp - 0x2a8], edx
cmp dword [ebp - 0x2a8], 1
jae 0x42a6fc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42990e
xor eax, eax
je 0x429680
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x4296bc
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736ef0]
movsd qword [ebp - 0x88c0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42985c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42985c
mov dword [ebp - 0x2ac], 0
jmp 0x42973b
cmp dword [ebp - 0x2ac], 0xf
jae 0x429857
cvtsi2sd xmm0, dword [ebp - 0x2ac]
movsd xmm1, qword [ebp - 0x88c0]
addsd xmm1, xmm0
movsd qword [ebp - 0x88c8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x88c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4297aa
mov ecx, dword [ebp - 0x2ac]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x88c0]
addsd xmm1, xmm0
movsd qword [ebp - 0x88c0], xmm1
jmp 0x4296a6
cvtsi2sd xmm0, dword [ebp - 0x2ac]
movsd xmm1, qword [ebp - 0x88c0]
addsd xmm1, xmm0
movsd qword [ebp - 0x88d0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x88d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x429807
mov eax, dword [ebp - 0x2ac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x88c0]
addsd xmm1, xmm0
movsd qword [ebp - 0x88c0], xmm1
jmp 0x429820
mov ecx, 1
test ecx, ecx
je 0x42981c
jmp 0x4298dc
jmp 0x429843
cvtsi2sd xmm0, dword [ebp - 0x2ac]
movsd xmm1, qword [ebp - 0x88c0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2b0], edx
jmp 0x4298e6
xor eax, eax
je 0x42984d
jmp 0x42985c
jmp 0x4296a6
jmp 0x4296a6
mov ecx, 2
test ecx, ecx
je 0x4298dc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2b4], eax
cvtsi2sd xmm0, dword [ebp - 0x2b4]
mov eax, dword [ebp - 0x2b4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x88c0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2b0], ecx
jmp 0x4298e6
mov dword [ebp - 0x2b0], 8
mov edx, dword [ebp - 0x2a8]
shl edx, 2
add edx, dword [ebp - 0x2a4]
mov eax, dword [ebp - 0x2b0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2a8]
shl ecx, 2
add ecx, dword [ebp - 0x2a4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42a42c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x429c1e
xor eax, eax
je 0x429990
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4299cc
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ee8]
movsd qword [ebp - 0x88d8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x429b6c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x429b6c
mov dword [ebp - 0x2b8], 0
jmp 0x429a4b
cmp dword [ebp - 0x2b8], 0xf
jae 0x429b67
cvtsi2sd xmm0, dword [ebp - 0x2b8]
movsd xmm1, qword [ebp - 0x88d8]
addsd xmm1, xmm0
movsd qword [ebp - 0x88e0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x88e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x429aba
mov ecx, dword [ebp - 0x2b8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x88d8]
addsd xmm1, xmm0
movsd qword [ebp - 0x88d8], xmm1
jmp 0x4299b6
cvtsi2sd xmm0, dword [ebp - 0x2b8]
movsd xmm1, qword [ebp - 0x88d8]
addsd xmm1, xmm0
movsd qword [ebp - 0x88e8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x88e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x429b17
mov eax, dword [ebp - 0x2b8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x88d8]
addsd xmm1, xmm0
movsd qword [ebp - 0x88d8], xmm1
jmp 0x429b30
mov ecx, 1
test ecx, ecx
je 0x429b2c
jmp 0x429bec
jmp 0x429b53
cvtsi2sd xmm0, dword [ebp - 0x2b8]
movsd xmm1, qword [ebp - 0x88d8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2bc], edx
jmp 0x429bf6
xor eax, eax
je 0x429b5d
jmp 0x429b6c
jmp 0x4299b6
jmp 0x4299b6
mov ecx, 2
test ecx, ecx
je 0x429bec
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2c0], eax
cvtsi2sd xmm0, dword [ebp - 0x2c0]
mov eax, dword [ebp - 0x2c0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x88d8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2bc], ecx
jmp 0x429bf6
mov dword [ebp - 0x2bc], 8
mov edx, dword [ebp - 0x2a8]
shl edx, 2
add edx, dword [ebp - 0x2a4]
mov eax, dword [ebp - 0x2bc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2a8]
shl ecx, 2
add ecx, dword [ebp - 0x2a4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x429ee9
xor eax, eax
je 0x429c5b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x429c97
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ee0]
movsd qword [ebp - 0x88f0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x429e37
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x429e37
mov dword [ebp - 0x2c4], 0
jmp 0x429d16
cmp dword [ebp - 0x2c4], 0xf
jae 0x429e32
cvtsi2sd xmm0, dword [ebp - 0x2c4]
movsd xmm1, qword [ebp - 0x88f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x88f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x88f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x429d85
mov ecx, dword [ebp - 0x2c4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x88f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x88f0], xmm1
jmp 0x429c81
cvtsi2sd xmm0, dword [ebp - 0x2c4]
movsd xmm1, qword [ebp - 0x88f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8900], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8900]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x429de2
mov eax, dword [ebp - 0x2c4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x88f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x88f0], xmm1
jmp 0x429dfb
mov ecx, 1
test ecx, ecx
je 0x429df7
jmp 0x429eb7
jmp 0x429e1e
cvtsi2sd xmm0, dword [ebp - 0x2c4]
movsd xmm1, qword [ebp - 0x88f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2c8], edx
jmp 0x429ec1
xor eax, eax
je 0x429e28
jmp 0x429e37
jmp 0x429c81
jmp 0x429c81
mov ecx, 2
test ecx, ecx
je 0x429eb7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2cc], eax
cvtsi2sd xmm0, dword [ebp - 0x2cc]
mov eax, dword [ebp - 0x2cc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x88f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2c8], ecx
jmp 0x429ec1
mov dword [ebp - 0x2c8], 8
mov edx, dword [ebp - 0x2a8]
shl edx, 2
add edx, dword [ebp - 0x2a4]
mov eax, dword [ebp - 0x2c8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2a8]
shl ecx, 2
add ecx, dword [ebp - 0x2a4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2a8]
add edx, 0xffffffa0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8908], xmm0
xor eax, eax
je 0x429f03
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x429f3f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8908]
movsd qword [ebp - 0x8910], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42a0df
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42a0df
mov dword [ebp - 0x2d0], 0
jmp 0x429fbe
cmp dword [ebp - 0x2d0], 0xf
jae 0x42a0da
cvtsi2sd xmm0, dword [ebp - 0x2d0]
movsd xmm1, qword [ebp - 0x8910]
addsd xmm1, xmm0
movsd qword [ebp - 0x8918], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8918]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42a02d
mov ecx, dword [ebp - 0x2d0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8910]
addsd xmm1, xmm0
movsd qword [ebp - 0x8910], xmm1
jmp 0x429f29
cvtsi2sd xmm0, dword [ebp - 0x2d0]
movsd xmm1, qword [ebp - 0x8910]
addsd xmm1, xmm0
movsd qword [ebp - 0x8920], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8920]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42a08a
mov eax, dword [ebp - 0x2d0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8910]
addsd xmm1, xmm0
movsd qword [ebp - 0x8910], xmm1
jmp 0x42a0a3
mov ecx, 1
test ecx, ecx
je 0x42a09f
jmp 0x42a15f
jmp 0x42a0c6
cvtsi2sd xmm0, dword [ebp - 0x2d0]
movsd xmm1, qword [ebp - 0x8910]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2d4], edx
jmp 0x42a169
xor eax, eax
je 0x42a0d0
jmp 0x42a0df
jmp 0x429f29
jmp 0x429f29
mov ecx, 2
test ecx, ecx
je 0x42a15f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2d8], eax
cvtsi2sd xmm0, dword [ebp - 0x2d8]
mov eax, dword [ebp - 0x2d8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8910]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2d4], ecx
jmp 0x42a169
mov dword [ebp - 0x2d4], 8
mov edx, dword [ebp - 0x2a8]
add edx, 0xffffffa0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8928], xmm0
xor eax, eax
je 0x42a183
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42a1bf
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8928]
movsd qword [ebp - 0x8930], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42a35f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42a35f
mov dword [ebp - 0x2dc], 0
jmp 0x42a23e
cmp dword [ebp - 0x2dc], 0xf
jae 0x42a35a
cvtsi2sd xmm0, dword [ebp - 0x2dc]
movsd xmm1, qword [ebp - 0x8930]
addsd xmm1, xmm0
movsd qword [ebp - 0x8938], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8938]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42a2ad
mov ecx, dword [ebp - 0x2dc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8930]
addsd xmm1, xmm0
movsd qword [ebp - 0x8930], xmm1
jmp 0x42a1a9
cvtsi2sd xmm0, dword [ebp - 0x2dc]
movsd xmm1, qword [ebp - 0x8930]
addsd xmm1, xmm0
movsd qword [ebp - 0x8940], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8940]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42a30a
mov eax, dword [ebp - 0x2dc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8930]
addsd xmm1, xmm0
movsd qword [ebp - 0x8930], xmm1
jmp 0x42a323
mov ecx, 1
test ecx, ecx
je 0x42a31f
jmp 0x42a3df
jmp 0x42a346
cvtsi2sd xmm0, dword [ebp - 0x2dc]
movsd xmm1, qword [ebp - 0x8930]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2e0], edx
jmp 0x42a3e9
xor eax, eax
je 0x42a350
jmp 0x42a35f
jmp 0x42a1a9
jmp 0x42a1a9
mov ecx, 2
test ecx, ecx
je 0x42a3df
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2e4], eax
cvtsi2sd xmm0, dword [ebp - 0x2e4]
mov eax, dword [ebp - 0x2e4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8930]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2e0], ecx
jmp 0x42a3e9
mov dword [ebp - 0x2e0], 8
mov edx, dword [ebp - 0x2a8]
shl edx, 2
add edx, dword [ebp - 0x2a4]
mov eax, dword [ebp - 0x2d4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2a8]
shl ecx, 2
add ecx, dword [ebp - 0x2a4]
mov edx, dword [ebp - 0x2e0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2a8]
shl ecx, 2
add ecx, dword [ebp - 0x2a4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42a6f7
xor eax, eax
je 0x42a469
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42a4a5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed8]
movsd qword [ebp - 0x8948], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42a645
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42a645
mov dword [ebp - 0x2e8], 0
jmp 0x42a524
cmp dword [ebp - 0x2e8], 0xf
jae 0x42a640
cvtsi2sd xmm0, dword [ebp - 0x2e8]
movsd xmm1, qword [ebp - 0x8948]
addsd xmm1, xmm0
movsd qword [ebp - 0x8950], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8950]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42a593
mov ecx, dword [ebp - 0x2e8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8948]
addsd xmm1, xmm0
movsd qword [ebp - 0x8948], xmm1
jmp 0x42a48f
cvtsi2sd xmm0, dword [ebp - 0x2e8]
movsd xmm1, qword [ebp - 0x8948]
addsd xmm1, xmm0
movsd qword [ebp - 0x8958], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8958]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42a5f0
mov eax, dword [ebp - 0x2e8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8948]
addsd xmm1, xmm0
movsd qword [ebp - 0x8948], xmm1
jmp 0x42a609
mov ecx, 1
test ecx, ecx
je 0x42a605
jmp 0x42a6c5
jmp 0x42a62c
cvtsi2sd xmm0, dword [ebp - 0x2e8]
movsd xmm1, qword [ebp - 0x8948]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2ec], edx
jmp 0x42a6cf
xor eax, eax
je 0x42a636
jmp 0x42a645
jmp 0x42a48f
jmp 0x42a48f
mov ecx, 2
test ecx, ecx
je 0x42a6c5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2f0], eax
cvtsi2sd xmm0, dword [ebp - 0x2f0]
mov eax, dword [ebp - 0x2f0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8948]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2ec], ecx
jmp 0x42a6cf
mov dword [ebp - 0x2ec], 8
mov edx, dword [ebp - 0x2a8]
shl edx, 2
add edx, dword [ebp - 0x2a4]
mov eax, dword [ebp - 0x2ec]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2a8]
shl ecx, 2
add ecx, dword [ebp - 0x2a4]
mov dword [ecx], eax
jmp 0x429627
mov edx, dword [ebp - 0x2a0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2a0]
mov dword [ebp - 0x2f4], eax
mov ecx, dword [ebp - 0x2f4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2f8], ecx
mov edx, dword [ebp - 0x2f8]
mov dword [ebp - 0x29c], edx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x2fc], eax
xor ecx, ecx
mov byte [ebp - 5], cl
lea ecx, [ebp - 5]
call fcn.004260f0
mov dword [ebp - 0x300], eax
mov edx, dword [ebp - 0x300]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x42b850
mov ecx, dword [ebp - 0x300]
mov dword [ebp - 0x304], ecx
mov dword [ebp - 0x308], 0
jmp 0x42a78a
mov edx, dword [ebp - 0x308]
add edx, 1
mov dword [ebp - 0x308], edx
cmp dword [ebp - 0x308], 1
jae 0x42b850
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42aa62
xor eax, eax
je 0x42a7d4
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x42a810
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736ee8]
movsd qword [ebp - 0x8960], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42a9b0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42a9b0
mov dword [ebp - 0x30c], 0
jmp 0x42a88f
cmp dword [ebp - 0x30c], 0xf
jae 0x42a9ab
cvtsi2sd xmm0, dword [ebp - 0x30c]
movsd xmm1, qword [ebp - 0x8960]
addsd xmm1, xmm0
movsd qword [ebp - 0x8968], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8968]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42a8fe
mov ecx, dword [ebp - 0x30c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8960]
addsd xmm1, xmm0
movsd qword [ebp - 0x8960], xmm1
jmp 0x42a7fa
cvtsi2sd xmm0, dword [ebp - 0x30c]
movsd xmm1, qword [ebp - 0x8960]
addsd xmm1, xmm0
movsd qword [ebp - 0x8970], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8970]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42a95b
mov eax, dword [ebp - 0x30c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8960]
addsd xmm1, xmm0
movsd qword [ebp - 0x8960], xmm1
jmp 0x42a974
mov ecx, 1
test ecx, ecx
je 0x42a970
jmp 0x42aa30
jmp 0x42a997
cvtsi2sd xmm0, dword [ebp - 0x30c]
movsd xmm1, qword [ebp - 0x8960]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x310], edx
jmp 0x42aa3a
xor eax, eax
je 0x42a9a1
jmp 0x42a9b0
jmp 0x42a7fa
jmp 0x42a7fa
mov ecx, 2
test ecx, ecx
je 0x42aa30
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x314], eax
cvtsi2sd xmm0, dword [ebp - 0x314]
mov eax, dword [ebp - 0x314]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8960]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x310], ecx
jmp 0x42aa3a
mov dword [ebp - 0x310], 8
mov edx, dword [ebp - 0x308]
shl edx, 2
add edx, dword [ebp - 0x304]
mov eax, dword [ebp - 0x310]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x308]
shl ecx, 2
add ecx, dword [ebp - 0x304]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42b580
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42ad72
xor eax, eax
je 0x42aae4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42ab20
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ee0]
movsd qword [ebp - 0x8978], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42acc0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42acc0
mov dword [ebp - 0x318], 0
jmp 0x42ab9f
cmp dword [ebp - 0x318], 0xf
jae 0x42acbb
cvtsi2sd xmm0, dword [ebp - 0x318]
movsd xmm1, qword [ebp - 0x8978]
addsd xmm1, xmm0
movsd qword [ebp - 0x8980], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8980]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42ac0e
mov ecx, dword [ebp - 0x318]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8978]
addsd xmm1, xmm0
movsd qword [ebp - 0x8978], xmm1
jmp 0x42ab0a
cvtsi2sd xmm0, dword [ebp - 0x318]
movsd xmm1, qword [ebp - 0x8978]
addsd xmm1, xmm0
movsd qword [ebp - 0x8988], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8988]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42ac6b
mov eax, dword [ebp - 0x318]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8978]
addsd xmm1, xmm0
movsd qword [ebp - 0x8978], xmm1
jmp 0x42ac84
mov ecx, 1
test ecx, ecx
je 0x42ac80
jmp 0x42ad40
jmp 0x42aca7
cvtsi2sd xmm0, dword [ebp - 0x318]
movsd xmm1, qword [ebp - 0x8978]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x31c], edx
jmp 0x42ad4a
xor eax, eax
je 0x42acb1
jmp 0x42acc0
jmp 0x42ab0a
jmp 0x42ab0a
mov ecx, 2
test ecx, ecx
je 0x42ad40
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x320], eax
cvtsi2sd xmm0, dword [ebp - 0x320]
mov eax, dword [ebp - 0x320]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8978]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x31c], ecx
jmp 0x42ad4a
mov dword [ebp - 0x31c], 8
mov edx, dword [ebp - 0x308]
shl edx, 2
add edx, dword [ebp - 0x304]
mov eax, dword [ebp - 0x31c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x308]
shl ecx, 2
add ecx, dword [ebp - 0x304]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42b03d
xor eax, eax
je 0x42adaf
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42adeb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed8]
movsd qword [ebp - 0x8990], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42af8b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42af8b
mov dword [ebp - 0x324], 0
jmp 0x42ae6a
cmp dword [ebp - 0x324], 0xf
jae 0x42af86
cvtsi2sd xmm0, dword [ebp - 0x324]
movsd xmm1, qword [ebp - 0x8990]
addsd xmm1, xmm0
movsd qword [ebp - 0x8998], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8998]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42aed9
mov ecx, dword [ebp - 0x324]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8990]
addsd xmm1, xmm0
movsd qword [ebp - 0x8990], xmm1
jmp 0x42add5
cvtsi2sd xmm0, dword [ebp - 0x324]
movsd xmm1, qword [ebp - 0x8990]
addsd xmm1, xmm0
movsd qword [ebp - 0x89a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x89a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42af36
mov eax, dword [ebp - 0x324]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8990]
addsd xmm1, xmm0
movsd qword [ebp - 0x8990], xmm1
jmp 0x42af4f
mov ecx, 1
test ecx, ecx
je 0x42af4b
jmp 0x42b00b
jmp 0x42af72
cvtsi2sd xmm0, dword [ebp - 0x324]
movsd xmm1, qword [ebp - 0x8990]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x328], edx
jmp 0x42b015
xor eax, eax
je 0x42af7c
jmp 0x42af8b
jmp 0x42add5
jmp 0x42add5
mov ecx, 2
test ecx, ecx
je 0x42b00b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x32c], eax
cvtsi2sd xmm0, dword [ebp - 0x32c]
mov eax, dword [ebp - 0x32c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8990]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x328], ecx
jmp 0x42b015
mov dword [ebp - 0x328], 8
mov edx, dword [ebp - 0x308]
shl edx, 2
add edx, dword [ebp - 0x304]
mov eax, dword [ebp - 0x328]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x308]
shl ecx, 2
add ecx, dword [ebp - 0x304]
mov dword [ecx], eax
mov edx, dword [ebp - 0x308]
add edx, 0xffffffa1
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x89a8], xmm0
xor eax, eax
je 0x42b057
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42b093
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x89a8]
movsd qword [ebp - 0x89b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42b233
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42b233
mov dword [ebp - 0x330], 0
jmp 0x42b112
cmp dword [ebp - 0x330], 0xf
jae 0x42b22e
cvtsi2sd xmm0, dword [ebp - 0x330]
movsd xmm1, qword [ebp - 0x89b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x89b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x89b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42b181
mov ecx, dword [ebp - 0x330]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x89b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x89b0], xmm1
jmp 0x42b07d
cvtsi2sd xmm0, dword [ebp - 0x330]
movsd xmm1, qword [ebp - 0x89b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x89c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x89c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42b1de
mov eax, dword [ebp - 0x330]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x89b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x89b0], xmm1
jmp 0x42b1f7
mov ecx, 1
test ecx, ecx
je 0x42b1f3
jmp 0x42b2b3
jmp 0x42b21a
cvtsi2sd xmm0, dword [ebp - 0x330]
movsd xmm1, qword [ebp - 0x89b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x334], edx
jmp 0x42b2bd
xor eax, eax
je 0x42b224
jmp 0x42b233
jmp 0x42b07d
jmp 0x42b07d
mov ecx, 2
test ecx, ecx
je 0x42b2b3
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x338], eax
cvtsi2sd xmm0, dword [ebp - 0x338]
mov eax, dword [ebp - 0x338]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x89b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x334], ecx
jmp 0x42b2bd
mov dword [ebp - 0x334], 8
mov edx, dword [ebp - 0x308]
add edx, 0xffffffa1
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x89c8], xmm0
xor eax, eax
je 0x42b2d7
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42b313
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x89c8]
movsd qword [ebp - 0x89d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42b4b3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42b4b3
mov dword [ebp - 0x33c], 0
jmp 0x42b392
cmp dword [ebp - 0x33c], 0xf
jae 0x42b4ae
cvtsi2sd xmm0, dword [ebp - 0x33c]
movsd xmm1, qword [ebp - 0x89d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x89d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x89d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42b401
mov ecx, dword [ebp - 0x33c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x89d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x89d0], xmm1
jmp 0x42b2fd
cvtsi2sd xmm0, dword [ebp - 0x33c]
movsd xmm1, qword [ebp - 0x89d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x89e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x89e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42b45e
mov eax, dword [ebp - 0x33c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x89d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x89d0], xmm1
jmp 0x42b477
mov ecx, 1
test ecx, ecx
je 0x42b473
jmp 0x42b533
jmp 0x42b49a
cvtsi2sd xmm0, dword [ebp - 0x33c]
movsd xmm1, qword [ebp - 0x89d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x340], edx
jmp 0x42b53d
xor eax, eax
je 0x42b4a4
jmp 0x42b4b3
jmp 0x42b2fd
jmp 0x42b2fd
mov ecx, 2
test ecx, ecx
je 0x42b533
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x344], eax
cvtsi2sd xmm0, dword [ebp - 0x344]
mov eax, dword [ebp - 0x344]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x89d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x340], ecx
jmp 0x42b53d
mov dword [ebp - 0x340], 8
mov edx, dword [ebp - 0x308]
shl edx, 2
add edx, dword [ebp - 0x304]
mov eax, dword [ebp - 0x334]
add eax, dword [edx]
mov ecx, dword [ebp - 0x308]
shl ecx, 2
add ecx, dword [ebp - 0x304]
mov edx, dword [ebp - 0x340]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x308]
shl ecx, 2
add ecx, dword [ebp - 0x304]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42b84b
xor eax, eax
je 0x42b5bd
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42b5f9
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed0]
movsd qword [ebp - 0x89e8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42b799
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42b799
mov dword [ebp - 0x348], 0
jmp 0x42b678
cmp dword [ebp - 0x348], 0xf
jae 0x42b794
cvtsi2sd xmm0, dword [ebp - 0x348]
movsd xmm1, qword [ebp - 0x89e8]
addsd xmm1, xmm0
movsd qword [ebp - 0x89f0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x89f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42b6e7
mov ecx, dword [ebp - 0x348]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x89e8]
addsd xmm1, xmm0
movsd qword [ebp - 0x89e8], xmm1
jmp 0x42b5e3
cvtsi2sd xmm0, dword [ebp - 0x348]
movsd xmm1, qword [ebp - 0x89e8]
addsd xmm1, xmm0
movsd qword [ebp - 0x89f8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x89f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42b744
mov eax, dword [ebp - 0x348]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x89e8]
addsd xmm1, xmm0
movsd qword [ebp - 0x89e8], xmm1
jmp 0x42b75d
mov ecx, 1
test ecx, ecx
je 0x42b759
jmp 0x42b819
jmp 0x42b780
cvtsi2sd xmm0, dword [ebp - 0x348]
movsd xmm1, qword [ebp - 0x89e8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x34c], edx
jmp 0x42b823
xor eax, eax
je 0x42b78a
jmp 0x42b799
jmp 0x42b5e3
jmp 0x42b5e3
mov ecx, 2
test ecx, ecx
je 0x42b819
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x350], eax
cvtsi2sd xmm0, dword [ebp - 0x350]
mov eax, dword [ebp - 0x350]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x89e8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x34c], ecx
jmp 0x42b823
mov dword [ebp - 0x34c], 8
mov edx, dword [ebp - 0x308]
shl edx, 2
add edx, dword [ebp - 0x304]
mov eax, dword [ebp - 0x34c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x308]
shl ecx, 2
add ecx, dword [ebp - 0x304]
mov dword [ecx], eax
jmp 0x42a77b
mov edx, dword [ebp - 0x300]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x300]
mov dword [ebp - 0x354], eax
mov ecx, dword [ebp - 0x354]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x358], ecx
mov edx, dword [ebp - 0x358]
mov dword [ebp - 0x35c], edx
xor eax, eax
mov byte [ebp - 6], al
lea ecx, [ebp - 6]
call fcn.004260c0
mov dword [ebp - 0x360], eax
mov ecx, dword [ebp - 0x360]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x42c99b
mov eax, dword [ebp - 0x360]
mov dword [ebp - 0x364], eax
mov dword [ebp - 0x368], 0
jmp 0x42b8d5
mov ecx, dword [ebp - 0x368]
add ecx, 1
mov dword [ebp - 0x368], ecx
cmp dword [ebp - 0x368], 1
jae 0x42c99b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42bbad
xor eax, eax
je 0x42b91f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42b95b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ee8]
movsd qword [ebp - 0x8a00], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42bafb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42bafb
mov dword [ebp - 0x36c], 0
jmp 0x42b9da
cmp dword [ebp - 0x36c], 0xf
jae 0x42baf6
cvtsi2sd xmm0, dword [ebp - 0x36c]
movsd xmm1, qword [ebp - 0x8a00]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a08], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8a08]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42ba49
mov ecx, dword [ebp - 0x36c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8a00]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a00], xmm1
jmp 0x42b945
cvtsi2sd xmm0, dword [ebp - 0x36c]
movsd xmm1, qword [ebp - 0x8a00]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a10], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8a10]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42baa6
mov eax, dword [ebp - 0x36c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8a00]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a00], xmm1
jmp 0x42babf
mov ecx, 1
test ecx, ecx
je 0x42babb
jmp 0x42bb7b
jmp 0x42bae2
cvtsi2sd xmm0, dword [ebp - 0x36c]
movsd xmm1, qword [ebp - 0x8a00]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x370], edx
jmp 0x42bb85
xor eax, eax
je 0x42baec
jmp 0x42bafb
jmp 0x42b945
jmp 0x42b945
mov ecx, 2
test ecx, ecx
je 0x42bb7b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x374], eax
cvtsi2sd xmm0, dword [ebp - 0x374]
mov eax, dword [ebp - 0x374]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8a00]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x370], ecx
jmp 0x42bb85
mov dword [ebp - 0x370], 8
mov edx, dword [ebp - 0x368]
shl edx, 2
add edx, dword [ebp - 0x364]
mov eax, dword [ebp - 0x370]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x368]
shl ecx, 2
add ecx, dword [ebp - 0x364]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42c6cb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42bebd
xor eax, eax
je 0x42bc2f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42bc6b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ee0]
movsd qword [ebp - 0x8a18], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42be0b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42be0b
mov dword [ebp - 0x378], 0
jmp 0x42bcea
cmp dword [ebp - 0x378], 0xf
jae 0x42be06
cvtsi2sd xmm0, dword [ebp - 0x378]
movsd xmm1, qword [ebp - 0x8a18]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a20], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8a20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42bd59
mov ecx, dword [ebp - 0x378]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8a18]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a18], xmm1
jmp 0x42bc55
cvtsi2sd xmm0, dword [ebp - 0x378]
movsd xmm1, qword [ebp - 0x8a18]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a28], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8a28]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42bdb6
mov eax, dword [ebp - 0x378]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8a18]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a18], xmm1
jmp 0x42bdcf
mov ecx, 1
test ecx, ecx
je 0x42bdcb
jmp 0x42be8b
jmp 0x42bdf2
cvtsi2sd xmm0, dword [ebp - 0x378]
movsd xmm1, qword [ebp - 0x8a18]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x37c], edx
jmp 0x42be95
xor eax, eax
je 0x42bdfc
jmp 0x42be0b
jmp 0x42bc55
jmp 0x42bc55
mov ecx, 2
test ecx, ecx
je 0x42be8b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x380], eax
cvtsi2sd xmm0, dword [ebp - 0x380]
mov eax, dword [ebp - 0x380]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8a18]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x37c], ecx
jmp 0x42be95
mov dword [ebp - 0x37c], 8
mov edx, dword [ebp - 0x368]
shl edx, 2
add edx, dword [ebp - 0x364]
mov eax, dword [ebp - 0x37c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x368]
shl ecx, 2
add ecx, dword [ebp - 0x364]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42c188
xor eax, eax
je 0x42befa
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42bf36
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed8]
movsd qword [ebp - 0x8a30], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42c0d6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42c0d6
mov dword [ebp - 0x384], 0
jmp 0x42bfb5
cmp dword [ebp - 0x384], 0xf
jae 0x42c0d1
cvtsi2sd xmm0, dword [ebp - 0x384]
movsd xmm1, qword [ebp - 0x8a30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8a38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42c024
mov ecx, dword [ebp - 0x384]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8a30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a30], xmm1
jmp 0x42bf20
cvtsi2sd xmm0, dword [ebp - 0x384]
movsd xmm1, qword [ebp - 0x8a30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8a40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42c081
mov eax, dword [ebp - 0x384]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8a30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a30], xmm1
jmp 0x42c09a
mov ecx, 1
test ecx, ecx
je 0x42c096
jmp 0x42c156
jmp 0x42c0bd
cvtsi2sd xmm0, dword [ebp - 0x384]
movsd xmm1, qword [ebp - 0x8a30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x388], edx
jmp 0x42c160
xor eax, eax
je 0x42c0c7
jmp 0x42c0d6
jmp 0x42bf20
jmp 0x42bf20
mov ecx, 2
test ecx, ecx
je 0x42c156
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x38c], eax
cvtsi2sd xmm0, dword [ebp - 0x38c]
mov eax, dword [ebp - 0x38c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8a30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x388], ecx
jmp 0x42c160
mov dword [ebp - 0x388], 8
mov edx, dword [ebp - 0x368]
shl edx, 2
add edx, dword [ebp - 0x364]
mov eax, dword [ebp - 0x388]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x368]
shl ecx, 2
add ecx, dword [ebp - 0x364]
mov dword [ecx], eax
mov edx, dword [ebp - 0x368]
add edx, 0xffffffa1
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8a48], xmm0
xor eax, eax
je 0x42c1a2
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42c1de
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8a48]
movsd qword [ebp - 0x8a50], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42c37e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42c37e
mov dword [ebp - 0x390], 0
jmp 0x42c25d
cmp dword [ebp - 0x390], 0xf
jae 0x42c379
cvtsi2sd xmm0, dword [ebp - 0x390]
movsd xmm1, qword [ebp - 0x8a50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8a58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42c2cc
mov ecx, dword [ebp - 0x390]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8a50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a50], xmm1
jmp 0x42c1c8
cvtsi2sd xmm0, dword [ebp - 0x390]
movsd xmm1, qword [ebp - 0x8a50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8a60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42c329
mov eax, dword [ebp - 0x390]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8a50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a50], xmm1
jmp 0x42c342
mov ecx, 1
test ecx, ecx
je 0x42c33e
jmp 0x42c3fe
jmp 0x42c365
cvtsi2sd xmm0, dword [ebp - 0x390]
movsd xmm1, qword [ebp - 0x8a50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x394], edx
jmp 0x42c408
xor eax, eax
je 0x42c36f
jmp 0x42c37e
jmp 0x42c1c8
jmp 0x42c1c8
mov ecx, 2
test ecx, ecx
je 0x42c3fe
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x398], eax
cvtsi2sd xmm0, dword [ebp - 0x398]
mov eax, dword [ebp - 0x398]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8a50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x394], ecx
jmp 0x42c408
mov dword [ebp - 0x394], 8
mov edx, dword [ebp - 0x368]
add edx, 0xffffffa1
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8a68], xmm0
xor eax, eax
je 0x42c422
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42c45e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8a68]
movsd qword [ebp - 0x8a70], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42c5fe
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42c5fe
mov dword [ebp - 0x39c], 0
jmp 0x42c4dd
cmp dword [ebp - 0x39c], 0xf
jae 0x42c5f9
cvtsi2sd xmm0, dword [ebp - 0x39c]
movsd xmm1, qword [ebp - 0x8a70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8a78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42c54c
mov ecx, dword [ebp - 0x39c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8a70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a70], xmm1
jmp 0x42c448
cvtsi2sd xmm0, dword [ebp - 0x39c]
movsd xmm1, qword [ebp - 0x8a70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8a80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42c5a9
mov eax, dword [ebp - 0x39c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8a70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a70], xmm1
jmp 0x42c5c2
mov ecx, 1
test ecx, ecx
je 0x42c5be
jmp 0x42c67e
jmp 0x42c5e5
cvtsi2sd xmm0, dword [ebp - 0x39c]
movsd xmm1, qword [ebp - 0x8a70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x3a0], edx
jmp 0x42c688
xor eax, eax
je 0x42c5ef
jmp 0x42c5fe
jmp 0x42c448
jmp 0x42c448
mov ecx, 2
test ecx, ecx
je 0x42c67e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x3a4], eax
cvtsi2sd xmm0, dword [ebp - 0x3a4]
mov eax, dword [ebp - 0x3a4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8a70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x3a0], ecx
jmp 0x42c688
mov dword [ebp - 0x3a0], 8
mov edx, dword [ebp - 0x368]
shl edx, 2
add edx, dword [ebp - 0x364]
mov eax, dword [ebp - 0x394]
add eax, dword [edx]
mov ecx, dword [ebp - 0x368]
shl ecx, 2
add ecx, dword [ebp - 0x364]
mov edx, dword [ebp - 0x3a0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x368]
shl ecx, 2
add ecx, dword [ebp - 0x364]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42c996
xor eax, eax
je 0x42c708
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42c744
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed0]
movsd qword [ebp - 0x8a88], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42c8e4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42c8e4
mov dword [ebp - 0x3a8], 0
jmp 0x42c7c3
cmp dword [ebp - 0x3a8], 0xf
jae 0x42c8df
cvtsi2sd xmm0, dword [ebp - 0x3a8]
movsd xmm1, qword [ebp - 0x8a88]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a90], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8a90]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42c832
mov ecx, dword [ebp - 0x3a8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8a88]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a88], xmm1
jmp 0x42c72e
cvtsi2sd xmm0, dword [ebp - 0x3a8]
movsd xmm1, qword [ebp - 0x8a88]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a98], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8a98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42c88f
mov eax, dword [ebp - 0x3a8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8a88]
addsd xmm1, xmm0
movsd qword [ebp - 0x8a88], xmm1
jmp 0x42c8a8
mov ecx, 1
test ecx, ecx
je 0x42c8a4
jmp 0x42c964
jmp 0x42c8cb
cvtsi2sd xmm0, dword [ebp - 0x3a8]
movsd xmm1, qword [ebp - 0x8a88]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x3ac], edx
jmp 0x42c96e
xor eax, eax
je 0x42c8d5
jmp 0x42c8e4
jmp 0x42c72e
jmp 0x42c72e
mov ecx, 2
test ecx, ecx
je 0x42c964
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x3b0], eax
cvtsi2sd xmm0, dword [ebp - 0x3b0]
mov eax, dword [ebp - 0x3b0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8a88]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x3ac], ecx
jmp 0x42c96e
mov dword [ebp - 0x3ac], 8
mov edx, dword [ebp - 0x368]
shl edx, 2
add edx, dword [ebp - 0x364]
mov eax, dword [ebp - 0x3ac]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x368]
shl ecx, 2
add ecx, dword [ebp - 0x364]
mov dword [ecx], eax
jmp 0x42b8c6
mov edx, dword [ebp - 0x360]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x360]
mov dword [ebp - 0x3b4], eax
mov ecx, dword [ebp - 0x3b4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x3b8], ecx
mov edx, dword [ebp - 0x3b8]
mov dword [ebp - 0x3bc], edx
xor eax, eax
mov byte [ebp - 7], al
lea ecx, [ebp - 7]
call fcn.00426090
mov dword [ebp - 0x3c0], eax
mov ecx, dword [ebp - 0x3c0]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x42dae6
mov eax, dword [ebp - 0x3c0]
mov dword [ebp - 0x3c4], eax
mov dword [ebp - 0x3c8], 0
jmp 0x42ca20
mov ecx, dword [ebp - 0x3c8]
add ecx, 1
mov dword [ebp - 0x3c8], ecx
cmp dword [ebp - 0x3c8], 1
jae 0x42dae6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42ccf8
xor eax, eax
je 0x42ca6a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42caa6
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ee0]
movsd qword [ebp - 0x8aa0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42cc46
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42cc46
mov dword [ebp - 0x3cc], 0
jmp 0x42cb25
cmp dword [ebp - 0x3cc], 0xf
jae 0x42cc41
cvtsi2sd xmm0, dword [ebp - 0x3cc]
movsd xmm1, qword [ebp - 0x8aa0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8aa8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8aa8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42cb94
mov ecx, dword [ebp - 0x3cc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8aa0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8aa0], xmm1
jmp 0x42ca90
cvtsi2sd xmm0, dword [ebp - 0x3cc]
movsd xmm1, qword [ebp - 0x8aa0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ab0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8ab0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42cbf1
mov eax, dword [ebp - 0x3cc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8aa0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8aa0], xmm1
jmp 0x42cc0a
mov ecx, 1
test ecx, ecx
je 0x42cc06
jmp 0x42ccc6
jmp 0x42cc2d
cvtsi2sd xmm0, dword [ebp - 0x3cc]
movsd xmm1, qword [ebp - 0x8aa0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x3d0], edx
jmp 0x42ccd0
xor eax, eax
je 0x42cc37
jmp 0x42cc46
jmp 0x42ca90
jmp 0x42ca90
mov ecx, 2
test ecx, ecx
je 0x42ccc6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x3d4], eax
cvtsi2sd xmm0, dword [ebp - 0x3d4]
mov eax, dword [ebp - 0x3d4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8aa0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x3d0], ecx
jmp 0x42ccd0
mov dword [ebp - 0x3d0], 8
mov edx, dword [ebp - 0x3c8]
shl edx, 2
add edx, dword [ebp - 0x3c4]
mov eax, dword [ebp - 0x3d0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x3c8]
shl ecx, 2
add ecx, dword [ebp - 0x3c4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42d816
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42d008
xor eax, eax
je 0x42cd7a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42cdb6
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed8]
movsd qword [ebp - 0x8ab8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42cf56
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42cf56
mov dword [ebp - 0x3d8], 0
jmp 0x42ce35
cmp dword [ebp - 0x3d8], 0xf
jae 0x42cf51
cvtsi2sd xmm0, dword [ebp - 0x3d8]
movsd xmm1, qword [ebp - 0x8ab8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ac0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8ac0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42cea4
mov ecx, dword [ebp - 0x3d8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8ab8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ab8], xmm1
jmp 0x42cda0
cvtsi2sd xmm0, dword [ebp - 0x3d8]
movsd xmm1, qword [ebp - 0x8ab8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ac8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8ac8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42cf01
mov eax, dword [ebp - 0x3d8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8ab8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ab8], xmm1
jmp 0x42cf1a
mov ecx, 1
test ecx, ecx
je 0x42cf16
jmp 0x42cfd6
jmp 0x42cf3d
cvtsi2sd xmm0, dword [ebp - 0x3d8]
movsd xmm1, qword [ebp - 0x8ab8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x3dc], edx
jmp 0x42cfe0
xor eax, eax
je 0x42cf47
jmp 0x42cf56
jmp 0x42cda0
jmp 0x42cda0
mov ecx, 2
test ecx, ecx
je 0x42cfd6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x3e0], eax
cvtsi2sd xmm0, dword [ebp - 0x3e0]
mov eax, dword [ebp - 0x3e0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8ab8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x3dc], ecx
jmp 0x42cfe0
mov dword [ebp - 0x3dc], 8
mov edx, dword [ebp - 0x3c8]
shl edx, 2
add edx, dword [ebp - 0x3c4]
mov eax, dword [ebp - 0x3dc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x3c8]
shl ecx, 2
add ecx, dword [ebp - 0x3c4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42d2d3
xor eax, eax
je 0x42d045
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42d081
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed0]
movsd qword [ebp - 0x8ad0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42d221
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42d221
mov dword [ebp - 0x3e4], 0
jmp 0x42d100
cmp dword [ebp - 0x3e4], 0xf
jae 0x42d21c
cvtsi2sd xmm0, dword [ebp - 0x3e4]
movsd xmm1, qword [ebp - 0x8ad0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ad8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8ad8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42d16f
mov ecx, dword [ebp - 0x3e4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8ad0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ad0], xmm1
jmp 0x42d06b
cvtsi2sd xmm0, dword [ebp - 0x3e4]
movsd xmm1, qword [ebp - 0x8ad0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ae0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8ae0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42d1cc
mov eax, dword [ebp - 0x3e4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8ad0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ad0], xmm1
jmp 0x42d1e5
mov ecx, 1
test ecx, ecx
je 0x42d1e1
jmp 0x42d2a1
jmp 0x42d208
cvtsi2sd xmm0, dword [ebp - 0x3e4]
movsd xmm1, qword [ebp - 0x8ad0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x3e8], edx
jmp 0x42d2ab
xor eax, eax
je 0x42d212
jmp 0x42d221
jmp 0x42d06b
jmp 0x42d06b
mov ecx, 2
test ecx, ecx
je 0x42d2a1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x3ec], eax
cvtsi2sd xmm0, dword [ebp - 0x3ec]
mov eax, dword [ebp - 0x3ec]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8ad0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x3e8], ecx
jmp 0x42d2ab
mov dword [ebp - 0x3e8], 8
mov edx, dword [ebp - 0x3c8]
shl edx, 2
add edx, dword [ebp - 0x3c4]
mov eax, dword [ebp - 0x3e8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x3c8]
shl ecx, 2
add ecx, dword [ebp - 0x3c4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x3c8]
add edx, 0xffffffa2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8ae8], xmm0
xor eax, eax
je 0x42d2ed
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42d329
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8ae8]
movsd qword [ebp - 0x8af0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42d4c9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42d4c9
mov dword [ebp - 0x3f0], 0
jmp 0x42d3a8
cmp dword [ebp - 0x3f0], 0xf
jae 0x42d4c4
cvtsi2sd xmm0, dword [ebp - 0x3f0]
movsd xmm1, qword [ebp - 0x8af0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8af8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8af8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42d417
mov ecx, dword [ebp - 0x3f0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8af0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8af0], xmm1
jmp 0x42d313
cvtsi2sd xmm0, dword [ebp - 0x3f0]
movsd xmm1, qword [ebp - 0x8af0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8b00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42d474
mov eax, dword [ebp - 0x3f0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8af0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8af0], xmm1
jmp 0x42d48d
mov ecx, 1
test ecx, ecx
je 0x42d489
jmp 0x42d549
jmp 0x42d4b0
cvtsi2sd xmm0, dword [ebp - 0x3f0]
movsd xmm1, qword [ebp - 0x8af0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x3f4], edx
jmp 0x42d553
xor eax, eax
je 0x42d4ba
jmp 0x42d4c9
jmp 0x42d313
jmp 0x42d313
mov ecx, 2
test ecx, ecx
je 0x42d549
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x3f8], eax
cvtsi2sd xmm0, dword [ebp - 0x3f8]
mov eax, dword [ebp - 0x3f8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8af0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x3f4], ecx
jmp 0x42d553
mov dword [ebp - 0x3f4], 8
mov edx, dword [ebp - 0x3c8]
add edx, 0xffffffa2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8b08], xmm0
xor eax, eax
je 0x42d56d
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42d5a9
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8b08]
movsd qword [ebp - 0x8b10], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42d749
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42d749
mov dword [ebp - 0x3fc], 0
jmp 0x42d628
cmp dword [ebp - 0x3fc], 0xf
jae 0x42d744
cvtsi2sd xmm0, dword [ebp - 0x3fc]
movsd xmm1, qword [ebp - 0x8b10]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8b18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42d697
mov ecx, dword [ebp - 0x3fc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8b10]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b10], xmm1
jmp 0x42d593
cvtsi2sd xmm0, dword [ebp - 0x3fc]
movsd xmm1, qword [ebp - 0x8b10]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8b20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42d6f4
mov eax, dword [ebp - 0x3fc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8b10]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b10], xmm1
jmp 0x42d70d
mov ecx, 1
test ecx, ecx
je 0x42d709
jmp 0x42d7c9
jmp 0x42d730
cvtsi2sd xmm0, dword [ebp - 0x3fc]
movsd xmm1, qword [ebp - 0x8b10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x400], edx
jmp 0x42d7d3
xor eax, eax
je 0x42d73a
jmp 0x42d749
jmp 0x42d593
jmp 0x42d593
mov ecx, 2
test ecx, ecx
je 0x42d7c9
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x404], eax
cvtsi2sd xmm0, dword [ebp - 0x404]
mov eax, dword [ebp - 0x404]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8b10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x400], ecx
jmp 0x42d7d3
mov dword [ebp - 0x400], 8
mov edx, dword [ebp - 0x3c8]
shl edx, 2
add edx, dword [ebp - 0x3c4]
mov eax, dword [ebp - 0x3f4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x3c8]
shl ecx, 2
add ecx, dword [ebp - 0x3c4]
mov edx, dword [ebp - 0x400]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x3c8]
shl ecx, 2
add ecx, dword [ebp - 0x3c4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42dae1
xor eax, eax
je 0x42d853
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42d88f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec8]
movsd qword [ebp - 0x8b28], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42da2f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42da2f
mov dword [ebp - 0x408], 0
jmp 0x42d90e
cmp dword [ebp - 0x408], 0xf
jae 0x42da2a
cvtsi2sd xmm0, dword [ebp - 0x408]
movsd xmm1, qword [ebp - 0x8b28]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b30], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8b30]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42d97d
mov ecx, dword [ebp - 0x408]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8b28]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b28], xmm1
jmp 0x42d879
cvtsi2sd xmm0, dword [ebp - 0x408]
movsd xmm1, qword [ebp - 0x8b28]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b38], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8b38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42d9da
mov eax, dword [ebp - 0x408]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8b28]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b28], xmm1
jmp 0x42d9f3
mov ecx, 1
test ecx, ecx
je 0x42d9ef
jmp 0x42daaf
jmp 0x42da16
cvtsi2sd xmm0, dword [ebp - 0x408]
movsd xmm1, qword [ebp - 0x8b28]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x40c], edx
jmp 0x42dab9
xor eax, eax
je 0x42da20
jmp 0x42da2f
jmp 0x42d879
jmp 0x42d879
mov ecx, 2
test ecx, ecx
je 0x42daaf
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x410], eax
cvtsi2sd xmm0, dword [ebp - 0x410]
mov eax, dword [ebp - 0x410]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8b28]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x40c], ecx
jmp 0x42dab9
mov dword [ebp - 0x40c], 8
mov edx, dword [ebp - 0x3c8]
shl edx, 2
add edx, dword [ebp - 0x3c4]
mov eax, dword [ebp - 0x40c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x3c8]
shl ecx, 2
add ecx, dword [ebp - 0x3c4]
mov dword [ecx], eax
jmp 0x42ca11
mov edx, dword [ebp - 0x3c0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x3c0]
mov dword [ebp - 0x414], eax
mov ecx, dword [ebp - 0x414]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x418], ecx
mov edx, dword [ebp - 0x418]
mov dword [ebp - 0x41c], edx
mov eax, dword [ebp - 0x3bc]
mov dword [ebp - 0x35c], eax
cmp dword [ebp - 0x35c], 0
je 0x42ec83
xor ecx, ecx
mov byte [ebp - 8], cl
lea ecx, [ebp - 8]
call fcn.00426060
mov dword [ebp - 0x420], eax
mov edx, dword [ebp - 0x420]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x42ec4a
mov ecx, dword [ebp - 0x420]
mov dword [ebp - 0x424], ecx
mov dword [ebp - 0x428], 0
jmp 0x42db84
mov edx, dword [ebp - 0x428]
add edx, 1
mov dword [ebp - 0x428], edx
cmp dword [ebp - 0x428], 1
jae 0x42ec4a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42de5c
xor eax, eax
je 0x42dbce
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x42dc0a
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736ee0]
movsd qword [ebp - 0x8b40], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42ddaa
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42ddaa
mov dword [ebp - 0x42c], 0
jmp 0x42dc89
cmp dword [ebp - 0x42c], 0xf
jae 0x42dda5
cvtsi2sd xmm0, dword [ebp - 0x42c]
movsd xmm1, qword [ebp - 0x8b40]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b48], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8b48]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42dcf8
mov ecx, dword [ebp - 0x42c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8b40]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b40], xmm1
jmp 0x42dbf4
cvtsi2sd xmm0, dword [ebp - 0x42c]
movsd xmm1, qword [ebp - 0x8b40]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b50], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8b50]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42dd55
mov eax, dword [ebp - 0x42c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8b40]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b40], xmm1
jmp 0x42dd6e
mov ecx, 1
test ecx, ecx
je 0x42dd6a
jmp 0x42de2a
jmp 0x42dd91
cvtsi2sd xmm0, dword [ebp - 0x42c]
movsd xmm1, qword [ebp - 0x8b40]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x430], edx
jmp 0x42de34
xor eax, eax
je 0x42dd9b
jmp 0x42ddaa
jmp 0x42dbf4
jmp 0x42dbf4
mov ecx, 2
test ecx, ecx
je 0x42de2a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x434], eax
cvtsi2sd xmm0, dword [ebp - 0x434]
mov eax, dword [ebp - 0x434]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8b40]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x430], ecx
jmp 0x42de34
mov dword [ebp - 0x430], 8
mov edx, dword [ebp - 0x428]
shl edx, 2
add edx, dword [ebp - 0x424]
mov eax, dword [ebp - 0x430]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x428]
shl ecx, 2
add ecx, dword [ebp - 0x424]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42e97a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42e16c
xor eax, eax
je 0x42dede
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42df1a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed8]
movsd qword [ebp - 0x8b58], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42e0ba
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42e0ba
mov dword [ebp - 0x438], 0
jmp 0x42df99
cmp dword [ebp - 0x438], 0xf
jae 0x42e0b5
cvtsi2sd xmm0, dword [ebp - 0x438]
movsd xmm1, qword [ebp - 0x8b58]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b60], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8b60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42e008
mov ecx, dword [ebp - 0x438]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8b58]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b58], xmm1
jmp 0x42df04
cvtsi2sd xmm0, dword [ebp - 0x438]
movsd xmm1, qword [ebp - 0x8b58]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b68], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8b68]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42e065
mov eax, dword [ebp - 0x438]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8b58]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b58], xmm1
jmp 0x42e07e
mov ecx, 1
test ecx, ecx
je 0x42e07a
jmp 0x42e13a
jmp 0x42e0a1
cvtsi2sd xmm0, dword [ebp - 0x438]
movsd xmm1, qword [ebp - 0x8b58]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x43c], edx
jmp 0x42e144
xor eax, eax
je 0x42e0ab
jmp 0x42e0ba
jmp 0x42df04
jmp 0x42df04
mov ecx, 2
test ecx, ecx
je 0x42e13a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x440], eax
cvtsi2sd xmm0, dword [ebp - 0x440]
mov eax, dword [ebp - 0x440]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8b58]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x43c], ecx
jmp 0x42e144
mov dword [ebp - 0x43c], 8
mov edx, dword [ebp - 0x428]
shl edx, 2
add edx, dword [ebp - 0x424]
mov eax, dword [ebp - 0x43c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x428]
shl ecx, 2
add ecx, dword [ebp - 0x424]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42e437
xor eax, eax
je 0x42e1a9
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42e1e5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed0]
movsd qword [ebp - 0x8b70], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42e385
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42e385
mov dword [ebp - 0x444], 0
jmp 0x42e264
cmp dword [ebp - 0x444], 0xf
jae 0x42e380
cvtsi2sd xmm0, dword [ebp - 0x444]
movsd xmm1, qword [ebp - 0x8b70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8b78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42e2d3
mov ecx, dword [ebp - 0x444]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8b70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b70], xmm1
jmp 0x42e1cf
cvtsi2sd xmm0, dword [ebp - 0x444]
movsd xmm1, qword [ebp - 0x8b70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8b80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42e330
mov eax, dword [ebp - 0x444]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8b70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b70], xmm1
jmp 0x42e349
mov ecx, 1
test ecx, ecx
je 0x42e345
jmp 0x42e405
jmp 0x42e36c
cvtsi2sd xmm0, dword [ebp - 0x444]
movsd xmm1, qword [ebp - 0x8b70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x448], edx
jmp 0x42e40f
xor eax, eax
je 0x42e376
jmp 0x42e385
jmp 0x42e1cf
jmp 0x42e1cf
mov ecx, 2
test ecx, ecx
je 0x42e405
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x44c], eax
cvtsi2sd xmm0, dword [ebp - 0x44c]
mov eax, dword [ebp - 0x44c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8b70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x448], ecx
jmp 0x42e40f
mov dword [ebp - 0x448], 8
mov edx, dword [ebp - 0x428]
shl edx, 2
add edx, dword [ebp - 0x424]
mov eax, dword [ebp - 0x448]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x428]
shl ecx, 2
add ecx, dword [ebp - 0x424]
mov dword [ecx], eax
mov edx, dword [ebp - 0x428]
add edx, 0xffffffa2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8b88], xmm0
xor eax, eax
je 0x42e451
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42e48d
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8b88]
movsd qword [ebp - 0x8b90], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42e62d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42e62d
mov dword [ebp - 0x450], 0
jmp 0x42e50c
cmp dword [ebp - 0x450], 0xf
jae 0x42e628
cvtsi2sd xmm0, dword [ebp - 0x450]
movsd xmm1, qword [ebp - 0x8b90]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8b98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42e57b
mov ecx, dword [ebp - 0x450]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8b90]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b90], xmm1
jmp 0x42e477
cvtsi2sd xmm0, dword [ebp - 0x450]
movsd xmm1, qword [ebp - 0x8b90]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ba0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8ba0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42e5d8
mov eax, dword [ebp - 0x450]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8b90]
addsd xmm1, xmm0
movsd qword [ebp - 0x8b90], xmm1
jmp 0x42e5f1
mov ecx, 1
test ecx, ecx
je 0x42e5ed
jmp 0x42e6ad
jmp 0x42e614
cvtsi2sd xmm0, dword [ebp - 0x450]
movsd xmm1, qword [ebp - 0x8b90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x454], edx
jmp 0x42e6b7
xor eax, eax
je 0x42e61e
jmp 0x42e62d
jmp 0x42e477
jmp 0x42e477
mov ecx, 2
test ecx, ecx
je 0x42e6ad
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x458], eax
cvtsi2sd xmm0, dword [ebp - 0x458]
mov eax, dword [ebp - 0x458]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8b90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x454], ecx
jmp 0x42e6b7
mov dword [ebp - 0x454], 8
mov edx, dword [ebp - 0x428]
add edx, 0xffffffa2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8ba8], xmm0
xor eax, eax
je 0x42e6d1
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42e70d
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8ba8]
movsd qword [ebp - 0x8bb0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42e8ad
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42e8ad
mov dword [ebp - 0x45c], 0
jmp 0x42e78c
cmp dword [ebp - 0x45c], 0xf
jae 0x42e8a8
cvtsi2sd xmm0, dword [ebp - 0x45c]
movsd xmm1, qword [ebp - 0x8bb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8bb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8bb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42e7fb
mov ecx, dword [ebp - 0x45c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8bb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8bb0], xmm1
jmp 0x42e6f7
cvtsi2sd xmm0, dword [ebp - 0x45c]
movsd xmm1, qword [ebp - 0x8bb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8bc0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8bc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42e858
mov eax, dword [ebp - 0x45c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8bb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8bb0], xmm1
jmp 0x42e871
mov ecx, 1
test ecx, ecx
je 0x42e86d
jmp 0x42e92d
jmp 0x42e894
cvtsi2sd xmm0, dword [ebp - 0x45c]
movsd xmm1, qword [ebp - 0x8bb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x460], edx
jmp 0x42e937
xor eax, eax
je 0x42e89e
jmp 0x42e8ad
jmp 0x42e6f7
jmp 0x42e6f7
mov ecx, 2
test ecx, ecx
je 0x42e92d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x464], eax
cvtsi2sd xmm0, dword [ebp - 0x464]
mov eax, dword [ebp - 0x464]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8bb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x460], ecx
jmp 0x42e937
mov dword [ebp - 0x460], 8
mov edx, dword [ebp - 0x428]
shl edx, 2
add edx, dword [ebp - 0x424]
mov eax, dword [ebp - 0x454]
add eax, dword [edx]
mov ecx, dword [ebp - 0x428]
shl ecx, 2
add ecx, dword [ebp - 0x424]
mov edx, dword [ebp - 0x460]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x428]
shl ecx, 2
add ecx, dword [ebp - 0x424]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42ec45
xor eax, eax
je 0x42e9b7
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42e9f3
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec8]
movsd qword [ebp - 0x8bc8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42eb93
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42eb93
mov dword [ebp - 0x468], 0
jmp 0x42ea72
cmp dword [ebp - 0x468], 0xf
jae 0x42eb8e
cvtsi2sd xmm0, dword [ebp - 0x468]
movsd xmm1, qword [ebp - 0x8bc8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8bd0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8bd0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42eae1
mov ecx, dword [ebp - 0x468]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8bc8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8bc8], xmm1
jmp 0x42e9dd
cvtsi2sd xmm0, dword [ebp - 0x468]
movsd xmm1, qword [ebp - 0x8bc8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8bd8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8bd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42eb3e
mov eax, dword [ebp - 0x468]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8bc8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8bc8], xmm1
jmp 0x42eb57
mov ecx, 1
test ecx, ecx
je 0x42eb53
jmp 0x42ec13
jmp 0x42eb7a
cvtsi2sd xmm0, dword [ebp - 0x468]
movsd xmm1, qword [ebp - 0x8bc8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x46c], edx
jmp 0x42ec1d
xor eax, eax
je 0x42eb84
jmp 0x42eb93
jmp 0x42e9dd
jmp 0x42e9dd
mov ecx, 2
test ecx, ecx
je 0x42ec13
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x470], eax
cvtsi2sd xmm0, dword [ebp - 0x470]
mov eax, dword [ebp - 0x470]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8bc8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x46c], ecx
jmp 0x42ec1d
mov dword [ebp - 0x46c], 8
mov edx, dword [ebp - 0x428]
shl edx, 2
add edx, dword [ebp - 0x424]
mov eax, dword [ebp - 0x46c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x428]
shl ecx, 2
add ecx, dword [ebp - 0x424]
mov dword [ecx], eax
jmp 0x42db75
mov edx, dword [ebp - 0x420]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x420]
mov dword [ebp - 0x474], eax
mov ecx, dword [ebp - 0x474]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x478], ecx
mov edx, dword [ebp - 0x478]
mov dword [ebp - 0x41c], edx
mov eax, dword [ebp - 0x2fc]
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [eax + 0x3c]
mov dword [ebp - 0x47c], ecx
xor edx, edx
mov byte [ebp - 9], dl
lea ecx, [ebp - 9]
call fcn.00426030
mov dword [ebp - 0x480], eax
mov eax, dword [ebp - 0x480]
movzx ecx, byte [eax + 4]
test ecx, ecx
jne 0x42fdaa
mov edx, dword [ebp - 0x480]
mov dword [ebp - 0x484], edx
mov dword [ebp - 0x488], 0
jmp 0x42ece4
mov eax, dword [ebp - 0x488]
add eax, 1
mov dword [ebp - 0x488], eax
cmp dword [ebp - 0x488], 1
jae 0x42fdaa
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx ecx, al
add esi, ecx
call fcn.005e7fe0
movsx edx, al
imul eax, edx, 3
movsx ecx, byte [0x7862ac]
imul eax, ecx
add esi, eax
call fcn.005e7fb0
movsx edx, al
sub esi, edx
je 0x42efbc
xor eax, eax
je 0x42ed2e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42ed6a
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [0x736ee0]
movsd qword [ebp - 0x8be0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42ef0a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42ef0a
mov dword [ebp - 0x48c], 0
jmp 0x42ede9
cmp dword [ebp - 0x48c], 0xf
jae 0x42ef05
cvtsi2sd xmm0, dword [ebp - 0x48c]
movsd xmm1, qword [ebp - 0x8be0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8be8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8be8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42ee58
mov ecx, dword [ebp - 0x48c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8be0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8be0], xmm1
jmp 0x42ed54
cvtsi2sd xmm0, dword [ebp - 0x48c]
movsd xmm1, qword [ebp - 0x8be0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8bf0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8bf0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42eeb5
mov eax, dword [ebp - 0x48c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8be0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8be0], xmm1
jmp 0x42eece
mov ecx, 1
test ecx, ecx
je 0x42eeca
jmp 0x42ef8a
jmp 0x42eef1
cvtsi2sd xmm0, dword [ebp - 0x48c]
movsd xmm1, qword [ebp - 0x8be0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x490], edx
jmp 0x42ef94
xor eax, eax
je 0x42eefb
jmp 0x42ef0a
jmp 0x42ed54
jmp 0x42ed54
mov ecx, 2
test ecx, ecx
je 0x42ef8a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x494], eax
cvtsi2sd xmm0, dword [ebp - 0x494]
mov eax, dword [ebp - 0x494]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8be0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x490], ecx
jmp 0x42ef94
mov dword [ebp - 0x490], 8
mov edx, dword [ebp - 0x488]
shl edx, 2
add edx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x490]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x488]
shl ecx, 2
add ecx, dword [ebp - 0x484]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42fada
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42f2cc
xor eax, eax
je 0x42f03e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42f07a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed8]
movsd qword [ebp - 0x8bf8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42f21a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42f21a
mov dword [ebp - 0x498], 0
jmp 0x42f0f9
cmp dword [ebp - 0x498], 0xf
jae 0x42f215
cvtsi2sd xmm0, dword [ebp - 0x498]
movsd xmm1, qword [ebp - 0x8bf8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c00], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8c00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42f168
mov ecx, dword [ebp - 0x498]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8bf8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8bf8], xmm1
jmp 0x42f064
cvtsi2sd xmm0, dword [ebp - 0x498]
movsd xmm1, qword [ebp - 0x8bf8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c08], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8c08]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42f1c5
mov eax, dword [ebp - 0x498]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8bf8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8bf8], xmm1
jmp 0x42f1de
mov ecx, 1
test ecx, ecx
je 0x42f1da
jmp 0x42f29a
jmp 0x42f201
cvtsi2sd xmm0, dword [ebp - 0x498]
movsd xmm1, qword [ebp - 0x8bf8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x49c], edx
jmp 0x42f2a4
xor eax, eax
je 0x42f20b
jmp 0x42f21a
jmp 0x42f064
jmp 0x42f064
mov ecx, 2
test ecx, ecx
je 0x42f29a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x4a0], eax
cvtsi2sd xmm0, dword [ebp - 0x4a0]
mov eax, dword [ebp - 0x4a0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8bf8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x49c], ecx
jmp 0x42f2a4
mov dword [ebp - 0x49c], 8
mov edx, dword [ebp - 0x488]
shl edx, 2
add edx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x49c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x488]
shl ecx, 2
add ecx, dword [ebp - 0x484]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42f597
xor eax, eax
je 0x42f309
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42f345
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed0]
movsd qword [ebp - 0x8c10], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42f4e5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42f4e5
mov dword [ebp - 0x4a4], 0
jmp 0x42f3c4
cmp dword [ebp - 0x4a4], 0xf
jae 0x42f4e0
cvtsi2sd xmm0, dword [ebp - 0x4a4]
movsd xmm1, qword [ebp - 0x8c10]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8c18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42f433
mov ecx, dword [ebp - 0x4a4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8c10]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c10], xmm1
jmp 0x42f32f
cvtsi2sd xmm0, dword [ebp - 0x4a4]
movsd xmm1, qword [ebp - 0x8c10]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8c20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42f490
mov eax, dword [ebp - 0x4a4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8c10]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c10], xmm1
jmp 0x42f4a9
mov ecx, 1
test ecx, ecx
je 0x42f4a5
jmp 0x42f565
jmp 0x42f4cc
cvtsi2sd xmm0, dword [ebp - 0x4a4]
movsd xmm1, qword [ebp - 0x8c10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x4a8], edx
jmp 0x42f56f
xor eax, eax
je 0x42f4d6
jmp 0x42f4e5
jmp 0x42f32f
jmp 0x42f32f
mov ecx, 2
test ecx, ecx
je 0x42f565
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x4ac], eax
cvtsi2sd xmm0, dword [ebp - 0x4ac]
mov eax, dword [ebp - 0x4ac]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8c10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x4a8], ecx
jmp 0x42f56f
mov dword [ebp - 0x4a8], 8
mov edx, dword [ebp - 0x488]
shl edx, 2
add edx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x4a8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x488]
shl ecx, 2
add ecx, dword [ebp - 0x484]
mov dword [ecx], eax
mov edx, dword [ebp - 0x488]
add edx, 0xffffffa2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8c28], xmm0
xor eax, eax
je 0x42f5b1
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42f5ed
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8c28]
movsd qword [ebp - 0x8c30], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42f78d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42f78d
mov dword [ebp - 0x4b0], 0
jmp 0x42f66c
cmp dword [ebp - 0x4b0], 0xf
jae 0x42f788
cvtsi2sd xmm0, dword [ebp - 0x4b0]
movsd xmm1, qword [ebp - 0x8c30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8c38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42f6db
mov ecx, dword [ebp - 0x4b0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8c30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c30], xmm1
jmp 0x42f5d7
cvtsi2sd xmm0, dword [ebp - 0x4b0]
movsd xmm1, qword [ebp - 0x8c30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8c40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42f738
mov eax, dword [ebp - 0x4b0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8c30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c30], xmm1
jmp 0x42f751
mov ecx, 1
test ecx, ecx
je 0x42f74d
jmp 0x42f80d
jmp 0x42f774
cvtsi2sd xmm0, dword [ebp - 0x4b0]
movsd xmm1, qword [ebp - 0x8c30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x4b4], edx
jmp 0x42f817
xor eax, eax
je 0x42f77e
jmp 0x42f78d
jmp 0x42f5d7
jmp 0x42f5d7
mov ecx, 2
test ecx, ecx
je 0x42f80d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x4b8], eax
cvtsi2sd xmm0, dword [ebp - 0x4b8]
mov eax, dword [ebp - 0x4b8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8c30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x4b4], ecx
jmp 0x42f817
mov dword [ebp - 0x4b4], 8
mov edx, dword [ebp - 0x488]
add edx, 0xffffffa2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8c48], xmm0
xor eax, eax
je 0x42f831
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x42f86d
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8c48]
movsd qword [ebp - 0x8c50], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42fa0d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42fa0d
mov dword [ebp - 0x4bc], 0
jmp 0x42f8ec
cmp dword [ebp - 0x4bc], 0xf
jae 0x42fa08
cvtsi2sd xmm0, dword [ebp - 0x4bc]
movsd xmm1, qword [ebp - 0x8c50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8c58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42f95b
mov ecx, dword [ebp - 0x4bc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8c50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c50], xmm1
jmp 0x42f857
cvtsi2sd xmm0, dword [ebp - 0x4bc]
movsd xmm1, qword [ebp - 0x8c50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8c60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42f9b8
mov eax, dword [ebp - 0x4bc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8c50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c50], xmm1
jmp 0x42f9d1
mov ecx, 1
test ecx, ecx
je 0x42f9cd
jmp 0x42fa8d
jmp 0x42f9f4
cvtsi2sd xmm0, dword [ebp - 0x4bc]
movsd xmm1, qword [ebp - 0x8c50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x4c0], edx
jmp 0x42fa97
xor eax, eax
je 0x42f9fe
jmp 0x42fa0d
jmp 0x42f857
jmp 0x42f857
mov ecx, 2
test ecx, ecx
je 0x42fa8d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x4c4], eax
cvtsi2sd xmm0, dword [ebp - 0x4c4]
mov eax, dword [ebp - 0x4c4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8c50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x4c0], ecx
jmp 0x42fa97
mov dword [ebp - 0x4c0], 8
mov edx, dword [ebp - 0x488]
shl edx, 2
add edx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x4b4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x488]
shl ecx, 2
add ecx, dword [ebp - 0x484]
mov edx, dword [ebp - 0x4c0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x488]
shl ecx, 2
add ecx, dword [ebp - 0x484]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x42fda5
xor eax, eax
je 0x42fb17
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42fb53
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec8]
movsd qword [ebp - 0x8c68], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x42fcf3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x42fcf3
mov dword [ebp - 0x4c8], 0
jmp 0x42fbd2
cmp dword [ebp - 0x4c8], 0xf
jae 0x42fcee
cvtsi2sd xmm0, dword [ebp - 0x4c8]
movsd xmm1, qword [ebp - 0x8c68]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c70], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8c70]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42fc41
mov ecx, dword [ebp - 0x4c8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8c68]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c68], xmm1
jmp 0x42fb3d
cvtsi2sd xmm0, dword [ebp - 0x4c8]
movsd xmm1, qword [ebp - 0x8c68]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c78], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8c78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42fc9e
mov eax, dword [ebp - 0x4c8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8c68]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c68], xmm1
jmp 0x42fcb7
mov ecx, 1
test ecx, ecx
je 0x42fcb3
jmp 0x42fd73
jmp 0x42fcda
cvtsi2sd xmm0, dword [ebp - 0x4c8]
movsd xmm1, qword [ebp - 0x8c68]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x4cc], edx
jmp 0x42fd7d
xor eax, eax
je 0x42fce4
jmp 0x42fcf3
jmp 0x42fb3d
jmp 0x42fb3d
mov ecx, 2
test ecx, ecx
je 0x42fd73
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x4d0], eax
cvtsi2sd xmm0, dword [ebp - 0x4d0]
mov eax, dword [ebp - 0x4d0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8c68]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x4cc], ecx
jmp 0x42fd7d
mov dword [ebp - 0x4cc], 8
mov edx, dword [ebp - 0x488]
shl edx, 2
add edx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x4cc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x488]
shl ecx, 2
add ecx, dword [ebp - 0x484]
mov dword [ecx], eax
jmp 0x42ecd5
mov edx, dword [ebp - 0x480]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x480]
mov dword [ebp - 0x4d4], eax
mov ecx, dword [ebp - 0x4d4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x4d8], ecx
mov edx, dword [ebp - 0x4d8]
mov dword [ebp - 0x4dc], edx
xor eax, eax
mov byte [ebp - 0xa], al
lea ecx, [ebp - 0xa]
call fcn.00426000
mov dword [ebp - 0x4e0], eax
mov ecx, dword [ebp - 0x4e0]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x430ef5
mov eax, dword [ebp - 0x4e0]
mov dword [ebp - 0x4e4], eax
mov dword [ebp - 0x4e8], 0
jmp 0x42fe2f
mov ecx, dword [ebp - 0x4e8]
add ecx, 1
mov dword [ebp - 0x4e8], ecx
cmp dword [ebp - 0x4e8], 1
jae 0x430ef5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x430107
xor eax, eax
je 0x42fe79
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x42feb5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed8]
movsd qword [ebp - 0x8c80], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x430055
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x430055
mov dword [ebp - 0x4ec], 0
jmp 0x42ff34
cmp dword [ebp - 0x4ec], 0xf
jae 0x430050
cvtsi2sd xmm0, dword [ebp - 0x4ec]
movsd xmm1, qword [ebp - 0x8c80]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c88], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8c88]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x42ffa3
mov ecx, dword [ebp - 0x4ec]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8c80]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c80], xmm1
jmp 0x42fe9f
cvtsi2sd xmm0, dword [ebp - 0x4ec]
movsd xmm1, qword [ebp - 0x8c80]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c90], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8c90]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x430000
mov eax, dword [ebp - 0x4ec]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8c80]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c80], xmm1
jmp 0x430019
mov ecx, 1
test ecx, ecx
je 0x430015
jmp 0x4300d5
jmp 0x43003c
cvtsi2sd xmm0, dword [ebp - 0x4ec]
movsd xmm1, qword [ebp - 0x8c80]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x4f0], edx
jmp 0x4300df
xor eax, eax
je 0x430046
jmp 0x430055
jmp 0x42fe9f
jmp 0x42fe9f
mov ecx, 2
test ecx, ecx
je 0x4300d5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x4f4], eax
cvtsi2sd xmm0, dword [ebp - 0x4f4]
mov eax, dword [ebp - 0x4f4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8c80]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x4f0], ecx
jmp 0x4300df
mov dword [ebp - 0x4f0], 8
mov edx, dword [ebp - 0x4e8]
shl edx, 2
add edx, dword [ebp - 0x4e4]
mov eax, dword [ebp - 0x4f0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x4e8]
shl ecx, 2
add ecx, dword [ebp - 0x4e4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x430c25
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x430417
xor eax, eax
je 0x430189
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4301c5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed0]
movsd qword [ebp - 0x8c98], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x430365
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x430365
mov dword [ebp - 0x4f8], 0
jmp 0x430244
cmp dword [ebp - 0x4f8], 0xf
jae 0x430360
cvtsi2sd xmm0, dword [ebp - 0x4f8]
movsd xmm1, qword [ebp - 0x8c98]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ca0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8ca0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4302b3
mov ecx, dword [ebp - 0x4f8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8c98]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c98], xmm1
jmp 0x4301af
cvtsi2sd xmm0, dword [ebp - 0x4f8]
movsd xmm1, qword [ebp - 0x8c98]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ca8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8ca8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x430310
mov eax, dword [ebp - 0x4f8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8c98]
addsd xmm1, xmm0
movsd qword [ebp - 0x8c98], xmm1
jmp 0x430329
mov ecx, 1
test ecx, ecx
je 0x430325
jmp 0x4303e5
jmp 0x43034c
cvtsi2sd xmm0, dword [ebp - 0x4f8]
movsd xmm1, qword [ebp - 0x8c98]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x4fc], edx
jmp 0x4303ef
xor eax, eax
je 0x430356
jmp 0x430365
jmp 0x4301af
jmp 0x4301af
mov ecx, 2
test ecx, ecx
je 0x4303e5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x500], eax
cvtsi2sd xmm0, dword [ebp - 0x500]
mov eax, dword [ebp - 0x500]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8c98]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x4fc], ecx
jmp 0x4303ef
mov dword [ebp - 0x4fc], 8
mov edx, dword [ebp - 0x4e8]
shl edx, 2
add edx, dword [ebp - 0x4e4]
mov eax, dword [ebp - 0x4fc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x4e8]
shl ecx, 2
add ecx, dword [ebp - 0x4e4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4306e2
xor eax, eax
je 0x430454
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x430490
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec8]
movsd qword [ebp - 0x8cb0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x430630
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x430630
mov dword [ebp - 0x504], 0
jmp 0x43050f
cmp dword [ebp - 0x504], 0xf
jae 0x43062b
cvtsi2sd xmm0, dword [ebp - 0x504]
movsd xmm1, qword [ebp - 0x8cb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8cb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8cb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43057e
mov ecx, dword [ebp - 0x504]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8cb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8cb0], xmm1
jmp 0x43047a
cvtsi2sd xmm0, dword [ebp - 0x504]
movsd xmm1, qword [ebp - 0x8cb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8cc0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8cc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4305db
mov eax, dword [ebp - 0x504]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8cb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8cb0], xmm1
jmp 0x4305f4
mov ecx, 1
test ecx, ecx
je 0x4305f0
jmp 0x4306b0
jmp 0x430617
cvtsi2sd xmm0, dword [ebp - 0x504]
movsd xmm1, qword [ebp - 0x8cb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x508], edx
jmp 0x4306ba
xor eax, eax
je 0x430621
jmp 0x430630
jmp 0x43047a
jmp 0x43047a
mov ecx, 2
test ecx, ecx
je 0x4306b0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x50c], eax
cvtsi2sd xmm0, dword [ebp - 0x50c]
mov eax, dword [ebp - 0x50c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8cb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x508], ecx
jmp 0x4306ba
mov dword [ebp - 0x508], 8
mov edx, dword [ebp - 0x4e8]
shl edx, 2
add edx, dword [ebp - 0x4e4]
mov eax, dword [ebp - 0x508]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x4e8]
shl ecx, 2
add ecx, dword [ebp - 0x4e4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x4e8]
add edx, 0xffffffa3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8cc8], xmm0
xor eax, eax
je 0x4306fc
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x430738
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8cc8]
movsd qword [ebp - 0x8cd0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4308d8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4308d8
mov dword [ebp - 0x510], 0
jmp 0x4307b7
cmp dword [ebp - 0x510], 0xf
jae 0x4308d3
cvtsi2sd xmm0, dword [ebp - 0x510]
movsd xmm1, qword [ebp - 0x8cd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8cd8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8cd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x430826
mov ecx, dword [ebp - 0x510]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8cd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8cd0], xmm1
jmp 0x430722
cvtsi2sd xmm0, dword [ebp - 0x510]
movsd xmm1, qword [ebp - 0x8cd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ce0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8ce0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x430883
mov eax, dword [ebp - 0x510]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8cd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8cd0], xmm1
jmp 0x43089c
mov ecx, 1
test ecx, ecx
je 0x430898
jmp 0x430958
jmp 0x4308bf
cvtsi2sd xmm0, dword [ebp - 0x510]
movsd xmm1, qword [ebp - 0x8cd0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x514], edx
jmp 0x430962
xor eax, eax
je 0x4308c9
jmp 0x4308d8
jmp 0x430722
jmp 0x430722
mov ecx, 2
test ecx, ecx
je 0x430958
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x518], eax
cvtsi2sd xmm0, dword [ebp - 0x518]
mov eax, dword [ebp - 0x518]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8cd0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x514], ecx
jmp 0x430962
mov dword [ebp - 0x514], 8
mov edx, dword [ebp - 0x4e8]
add edx, 0xffffffa3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8ce8], xmm0
xor eax, eax
je 0x43097c
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4309b8
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8ce8]
movsd qword [ebp - 0x8cf0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x430b58
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x430b58
mov dword [ebp - 0x51c], 0
jmp 0x430a37
cmp dword [ebp - 0x51c], 0xf
jae 0x430b53
cvtsi2sd xmm0, dword [ebp - 0x51c]
movsd xmm1, qword [ebp - 0x8cf0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8cf8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8cf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x430aa6
mov ecx, dword [ebp - 0x51c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8cf0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8cf0], xmm1
jmp 0x4309a2
cvtsi2sd xmm0, dword [ebp - 0x51c]
movsd xmm1, qword [ebp - 0x8cf0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8d00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x430b03
mov eax, dword [ebp - 0x51c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8cf0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8cf0], xmm1
jmp 0x430b1c
mov ecx, 1
test ecx, ecx
je 0x430b18
jmp 0x430bd8
jmp 0x430b3f
cvtsi2sd xmm0, dword [ebp - 0x51c]
movsd xmm1, qword [ebp - 0x8cf0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x520], edx
jmp 0x430be2
xor eax, eax
je 0x430b49
jmp 0x430b58
jmp 0x4309a2
jmp 0x4309a2
mov ecx, 2
test ecx, ecx
je 0x430bd8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x524], eax
cvtsi2sd xmm0, dword [ebp - 0x524]
mov eax, dword [ebp - 0x524]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8cf0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x520], ecx
jmp 0x430be2
mov dword [ebp - 0x520], 8
mov edx, dword [ebp - 0x4e8]
shl edx, 2
add edx, dword [ebp - 0x4e4]
mov eax, dword [ebp - 0x514]
add eax, dword [edx]
mov ecx, dword [ebp - 0x4e8]
shl ecx, 2
add ecx, dword [ebp - 0x4e4]
mov edx, dword [ebp - 0x520]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x4e8]
shl ecx, 2
add ecx, dword [ebp - 0x4e4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x430ef0
xor eax, eax
je 0x430c62
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x430c9e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec0]
movsd qword [ebp - 0x8d08], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x430e3e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x430e3e
mov dword [ebp - 0x528], 0
jmp 0x430d1d
cmp dword [ebp - 0x528], 0xf
jae 0x430e39
cvtsi2sd xmm0, dword [ebp - 0x528]
movsd xmm1, qword [ebp - 0x8d08]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d10], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8d10]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x430d8c
mov ecx, dword [ebp - 0x528]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8d08]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d08], xmm1
jmp 0x430c88
cvtsi2sd xmm0, dword [ebp - 0x528]
movsd xmm1, qword [ebp - 0x8d08]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d18], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8d18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x430de9
mov eax, dword [ebp - 0x528]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8d08]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d08], xmm1
jmp 0x430e02
mov ecx, 1
test ecx, ecx
je 0x430dfe
jmp 0x430ebe
jmp 0x430e25
cvtsi2sd xmm0, dword [ebp - 0x528]
movsd xmm1, qword [ebp - 0x8d08]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x52c], edx
jmp 0x430ec8
xor eax, eax
je 0x430e2f
jmp 0x430e3e
jmp 0x430c88
jmp 0x430c88
mov ecx, 2
test ecx, ecx
je 0x430ebe
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x530], eax
cvtsi2sd xmm0, dword [ebp - 0x530]
mov eax, dword [ebp - 0x530]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8d08]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x52c], ecx
jmp 0x430ec8
mov dword [ebp - 0x52c], 8
mov edx, dword [ebp - 0x4e8]
shl edx, 2
add edx, dword [ebp - 0x4e4]
mov eax, dword [ebp - 0x52c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x4e8]
shl ecx, 2
add ecx, dword [ebp - 0x4e4]
mov dword [ecx], eax
jmp 0x42fe20
mov edx, dword [ebp - 0x4e0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x4e0]
mov dword [ebp - 0x534], eax
mov ecx, dword [ebp - 0x534]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x538], ecx
mov edx, dword [ebp - 0x538]
mov dword [ebp - 0x53c], edx
xor eax, eax
mov byte [ebp - 0xb], al
lea ecx, [ebp - 0xb]
call fcn.00425fd0
mov dword [ebp - 0x540], eax
mov ecx, dword [ebp - 0x540]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x432040
mov eax, dword [ebp - 0x540]
mov dword [ebp - 0x544], eax
mov dword [ebp - 0x548], 0
jmp 0x430f7a
mov ecx, dword [ebp - 0x548]
add ecx, 1
mov dword [ebp - 0x548], ecx
cmp dword [ebp - 0x548], 1
jae 0x432040
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x431252
xor eax, eax
je 0x430fc4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x431000
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed8]
movsd qword [ebp - 0x8d20], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4311a0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4311a0
mov dword [ebp - 0x54c], 0
jmp 0x43107f
cmp dword [ebp - 0x54c], 0xf
jae 0x43119b
cvtsi2sd xmm0, dword [ebp - 0x54c]
movsd xmm1, qword [ebp - 0x8d20]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d28], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8d28]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4310ee
mov ecx, dword [ebp - 0x54c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8d20]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d20], xmm1
jmp 0x430fea
cvtsi2sd xmm0, dword [ebp - 0x54c]
movsd xmm1, qword [ebp - 0x8d20]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d30], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8d30]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43114b
mov eax, dword [ebp - 0x54c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8d20]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d20], xmm1
jmp 0x431164
mov ecx, 1
test ecx, ecx
je 0x431160
jmp 0x431220
jmp 0x431187
cvtsi2sd xmm0, dword [ebp - 0x54c]
movsd xmm1, qword [ebp - 0x8d20]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x550], edx
jmp 0x43122a
xor eax, eax
je 0x431191
jmp 0x4311a0
jmp 0x430fea
jmp 0x430fea
mov ecx, 2
test ecx, ecx
je 0x431220
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x554], eax
cvtsi2sd xmm0, dword [ebp - 0x554]
mov eax, dword [ebp - 0x554]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8d20]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x550], ecx
jmp 0x43122a
mov dword [ebp - 0x550], 8
mov edx, dword [ebp - 0x548]
shl edx, 2
add edx, dword [ebp - 0x544]
mov eax, dword [ebp - 0x550]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x548]
shl ecx, 2
add ecx, dword [ebp - 0x544]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x431d70
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x431562
xor eax, eax
je 0x4312d4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x431310
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed0]
movsd qword [ebp - 0x8d38], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4314b0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4314b0
mov dword [ebp - 0x558], 0
jmp 0x43138f
cmp dword [ebp - 0x558], 0xf
jae 0x4314ab
cvtsi2sd xmm0, dword [ebp - 0x558]
movsd xmm1, qword [ebp - 0x8d38]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d40], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8d40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4313fe
mov ecx, dword [ebp - 0x558]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8d38]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d38], xmm1
jmp 0x4312fa
cvtsi2sd xmm0, dword [ebp - 0x558]
movsd xmm1, qword [ebp - 0x8d38]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d48], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8d48]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43145b
mov eax, dword [ebp - 0x558]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8d38]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d38], xmm1
jmp 0x431474
mov ecx, 1
test ecx, ecx
je 0x431470
jmp 0x431530
jmp 0x431497
cvtsi2sd xmm0, dword [ebp - 0x558]
movsd xmm1, qword [ebp - 0x8d38]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x55c], edx
jmp 0x43153a
xor eax, eax
je 0x4314a1
jmp 0x4314b0
jmp 0x4312fa
jmp 0x4312fa
mov ecx, 2
test ecx, ecx
je 0x431530
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x560], eax
cvtsi2sd xmm0, dword [ebp - 0x560]
mov eax, dword [ebp - 0x560]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8d38]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x55c], ecx
jmp 0x43153a
mov dword [ebp - 0x55c], 8
mov edx, dword [ebp - 0x548]
shl edx, 2
add edx, dword [ebp - 0x544]
mov eax, dword [ebp - 0x55c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x548]
shl ecx, 2
add ecx, dword [ebp - 0x544]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43182d
xor eax, eax
je 0x43159f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4315db
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec8]
movsd qword [ebp - 0x8d50], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43177b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43177b
mov dword [ebp - 0x564], 0
jmp 0x43165a
cmp dword [ebp - 0x564], 0xf
jae 0x431776
cvtsi2sd xmm0, dword [ebp - 0x564]
movsd xmm1, qword [ebp - 0x8d50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8d58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4316c9
mov ecx, dword [ebp - 0x564]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8d50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d50], xmm1
jmp 0x4315c5
cvtsi2sd xmm0, dword [ebp - 0x564]
movsd xmm1, qword [ebp - 0x8d50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8d60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x431726
mov eax, dword [ebp - 0x564]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8d50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d50], xmm1
jmp 0x43173f
mov ecx, 1
test ecx, ecx
je 0x43173b
jmp 0x4317fb
jmp 0x431762
cvtsi2sd xmm0, dword [ebp - 0x564]
movsd xmm1, qword [ebp - 0x8d50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x568], edx
jmp 0x431805
xor eax, eax
je 0x43176c
jmp 0x43177b
jmp 0x4315c5
jmp 0x4315c5
mov ecx, 2
test ecx, ecx
je 0x4317fb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x56c], eax
cvtsi2sd xmm0, dword [ebp - 0x56c]
mov eax, dword [ebp - 0x56c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8d50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x568], ecx
jmp 0x431805
mov dword [ebp - 0x568], 8
mov edx, dword [ebp - 0x548]
shl edx, 2
add edx, dword [ebp - 0x544]
mov eax, dword [ebp - 0x568]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x548]
shl ecx, 2
add ecx, dword [ebp - 0x544]
mov dword [ecx], eax
mov edx, dword [ebp - 0x548]
add edx, 0xffffffa3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8d68], xmm0
xor eax, eax
je 0x431847
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x431883
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8d68]
movsd qword [ebp - 0x8d70], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x431a23
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x431a23
mov dword [ebp - 0x570], 0
jmp 0x431902
cmp dword [ebp - 0x570], 0xf
jae 0x431a1e
cvtsi2sd xmm0, dword [ebp - 0x570]
movsd xmm1, qword [ebp - 0x8d70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8d78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x431971
mov ecx, dword [ebp - 0x570]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8d70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d70], xmm1
jmp 0x43186d
cvtsi2sd xmm0, dword [ebp - 0x570]
movsd xmm1, qword [ebp - 0x8d70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8d80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4319ce
mov eax, dword [ebp - 0x570]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8d70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d70], xmm1
jmp 0x4319e7
mov ecx, 1
test ecx, ecx
je 0x4319e3
jmp 0x431aa3
jmp 0x431a0a
cvtsi2sd xmm0, dword [ebp - 0x570]
movsd xmm1, qword [ebp - 0x8d70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x574], edx
jmp 0x431aad
xor eax, eax
je 0x431a14
jmp 0x431a23
jmp 0x43186d
jmp 0x43186d
mov ecx, 2
test ecx, ecx
je 0x431aa3
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x578], eax
cvtsi2sd xmm0, dword [ebp - 0x578]
mov eax, dword [ebp - 0x578]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8d70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x574], ecx
jmp 0x431aad
mov dword [ebp - 0x574], 8
mov edx, dword [ebp - 0x548]
add edx, 0xffffffa3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8d88], xmm0
xor eax, eax
je 0x431ac7
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x431b03
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8d88]
movsd qword [ebp - 0x8d90], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x431ca3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x431ca3
mov dword [ebp - 0x57c], 0
jmp 0x431b82
cmp dword [ebp - 0x57c], 0xf
jae 0x431c9e
cvtsi2sd xmm0, dword [ebp - 0x57c]
movsd xmm1, qword [ebp - 0x8d90]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8d98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x431bf1
mov ecx, dword [ebp - 0x57c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8d90]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d90], xmm1
jmp 0x431aed
cvtsi2sd xmm0, dword [ebp - 0x57c]
movsd xmm1, qword [ebp - 0x8d90]
addsd xmm1, xmm0
movsd qword [ebp - 0x8da0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8da0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x431c4e
mov eax, dword [ebp - 0x57c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8d90]
addsd xmm1, xmm0
movsd qword [ebp - 0x8d90], xmm1
jmp 0x431c67
mov ecx, 1
test ecx, ecx
je 0x431c63
jmp 0x431d23
jmp 0x431c8a
cvtsi2sd xmm0, dword [ebp - 0x57c]
movsd xmm1, qword [ebp - 0x8d90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x580], edx
jmp 0x431d2d
xor eax, eax
je 0x431c94
jmp 0x431ca3
jmp 0x431aed
jmp 0x431aed
mov ecx, 2
test ecx, ecx
je 0x431d23
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x584], eax
cvtsi2sd xmm0, dword [ebp - 0x584]
mov eax, dword [ebp - 0x584]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8d90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x580], ecx
jmp 0x431d2d
mov dword [ebp - 0x580], 8
mov edx, dword [ebp - 0x548]
shl edx, 2
add edx, dword [ebp - 0x544]
mov eax, dword [ebp - 0x574]
add eax, dword [edx]
mov ecx, dword [ebp - 0x548]
shl ecx, 2
add ecx, dword [ebp - 0x544]
mov edx, dword [ebp - 0x580]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x548]
shl ecx, 2
add ecx, dword [ebp - 0x544]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43203b
xor eax, eax
je 0x431dad
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x431de9
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec0]
movsd qword [ebp - 0x8da8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x431f89
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x431f89
mov dword [ebp - 0x588], 0
jmp 0x431e68
cmp dword [ebp - 0x588], 0xf
jae 0x431f84
cvtsi2sd xmm0, dword [ebp - 0x588]
movsd xmm1, qword [ebp - 0x8da8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8db0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8db0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x431ed7
mov ecx, dword [ebp - 0x588]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8da8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8da8], xmm1
jmp 0x431dd3
cvtsi2sd xmm0, dword [ebp - 0x588]
movsd xmm1, qword [ebp - 0x8da8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8db8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8db8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x431f34
mov eax, dword [ebp - 0x588]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8da8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8da8], xmm1
jmp 0x431f4d
mov ecx, 1
test ecx, ecx
je 0x431f49
jmp 0x432009
jmp 0x431f70
cvtsi2sd xmm0, dword [ebp - 0x588]
movsd xmm1, qword [ebp - 0x8da8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x58c], edx
jmp 0x432013
xor eax, eax
je 0x431f7a
jmp 0x431f89
jmp 0x431dd3
jmp 0x431dd3
mov ecx, 2
test ecx, ecx
je 0x432009
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x590], eax
cvtsi2sd xmm0, dword [ebp - 0x590]
mov eax, dword [ebp - 0x590]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8da8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x58c], ecx
jmp 0x432013
mov dword [ebp - 0x58c], 8
mov edx, dword [ebp - 0x548]
shl edx, 2
add edx, dword [ebp - 0x544]
mov eax, dword [ebp - 0x58c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x548]
shl ecx, 2
add ecx, dword [ebp - 0x544]
mov dword [ecx], eax
jmp 0x430f6b
mov edx, dword [ebp - 0x540]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x540]
mov dword [ebp - 0x594], eax
mov ecx, dword [ebp - 0x594]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x598], ecx
mov edx, dword [ebp - 0x598]
mov dword [ebp - 0x59c], edx
mov eax, dword [ebp - 0x53c]
mov dword [ebp - 0x4dc], eax
cmp dword [ebp - 0x4dc], 0
je 0x4331dd
xor ecx, ecx
mov byte [ebp - 0xc], cl
lea ecx, [ebp - 0xc]
call fcn.00425fa0
mov dword [ebp - 0x5a0], eax
mov edx, dword [ebp - 0x5a0]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x4331a4
mov ecx, dword [ebp - 0x5a0]
mov dword [ebp - 0x5a4], ecx
mov dword [ebp - 0x5a8], 0
jmp 0x4320de
mov edx, dword [ebp - 0x5a8]
add edx, 1
mov dword [ebp - 0x5a8], edx
cmp dword [ebp - 0x5a8], 1
jae 0x4331a4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4323b6
xor eax, eax
je 0x432128
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x432164
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736ed8]
movsd qword [ebp - 0x8dc0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x432304
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x432304
mov dword [ebp - 0x5ac], 0
jmp 0x4321e3
cmp dword [ebp - 0x5ac], 0xf
jae 0x4322ff
cvtsi2sd xmm0, dword [ebp - 0x5ac]
movsd xmm1, qword [ebp - 0x8dc0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8dc8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8dc8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x432252
mov ecx, dword [ebp - 0x5ac]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8dc0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8dc0], xmm1
jmp 0x43214e
cvtsi2sd xmm0, dword [ebp - 0x5ac]
movsd xmm1, qword [ebp - 0x8dc0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8dd0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8dd0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4322af
mov eax, dword [ebp - 0x5ac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8dc0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8dc0], xmm1
jmp 0x4322c8
mov ecx, 1
test ecx, ecx
je 0x4322c4
jmp 0x432384
jmp 0x4322eb
cvtsi2sd xmm0, dword [ebp - 0x5ac]
movsd xmm1, qword [ebp - 0x8dc0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x5b0], edx
jmp 0x43238e
xor eax, eax
je 0x4322f5
jmp 0x432304
jmp 0x43214e
jmp 0x43214e
mov ecx, 2
test ecx, ecx
je 0x432384
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x5b4], eax
cvtsi2sd xmm0, dword [ebp - 0x5b4]
mov eax, dword [ebp - 0x5b4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8dc0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x5b0], ecx
jmp 0x43238e
mov dword [ebp - 0x5b0], 8
mov edx, dword [ebp - 0x5a8]
shl edx, 2
add edx, dword [ebp - 0x5a4]
mov eax, dword [ebp - 0x5b0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x5a8]
shl ecx, 2
add ecx, dword [ebp - 0x5a4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x432ed4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4326c6
xor eax, eax
je 0x432438
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x432474
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed0]
movsd qword [ebp - 0x8dd8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x432614
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x432614
mov dword [ebp - 0x5b8], 0
jmp 0x4324f3
cmp dword [ebp - 0x5b8], 0xf
jae 0x43260f
cvtsi2sd xmm0, dword [ebp - 0x5b8]
movsd xmm1, qword [ebp - 0x8dd8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8de0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8de0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x432562
mov ecx, dword [ebp - 0x5b8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8dd8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8dd8], xmm1
jmp 0x43245e
cvtsi2sd xmm0, dword [ebp - 0x5b8]
movsd xmm1, qword [ebp - 0x8dd8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8de8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8de8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4325bf
mov eax, dword [ebp - 0x5b8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8dd8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8dd8], xmm1
jmp 0x4325d8
mov ecx, 1
test ecx, ecx
je 0x4325d4
jmp 0x432694
jmp 0x4325fb
cvtsi2sd xmm0, dword [ebp - 0x5b8]
movsd xmm1, qword [ebp - 0x8dd8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x5bc], edx
jmp 0x43269e
xor eax, eax
je 0x432605
jmp 0x432614
jmp 0x43245e
jmp 0x43245e
mov ecx, 2
test ecx, ecx
je 0x432694
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x5c0], eax
cvtsi2sd xmm0, dword [ebp - 0x5c0]
mov eax, dword [ebp - 0x5c0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8dd8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x5bc], ecx
jmp 0x43269e
mov dword [ebp - 0x5bc], 8
mov edx, dword [ebp - 0x5a8]
shl edx, 2
add edx, dword [ebp - 0x5a4]
mov eax, dword [ebp - 0x5bc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x5a8]
shl ecx, 2
add ecx, dword [ebp - 0x5a4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x432991
xor eax, eax
je 0x432703
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43273f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec8]
movsd qword [ebp - 0x8df0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4328df
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4328df
mov dword [ebp - 0x5c4], 0
jmp 0x4327be
cmp dword [ebp - 0x5c4], 0xf
jae 0x4328da
cvtsi2sd xmm0, dword [ebp - 0x5c4]
movsd xmm1, qword [ebp - 0x8df0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8df8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8df8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43282d
mov ecx, dword [ebp - 0x5c4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8df0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8df0], xmm1
jmp 0x432729
cvtsi2sd xmm0, dword [ebp - 0x5c4]
movsd xmm1, qword [ebp - 0x8df0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8e00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43288a
mov eax, dword [ebp - 0x5c4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8df0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8df0], xmm1
jmp 0x4328a3
mov ecx, 1
test ecx, ecx
je 0x43289f
jmp 0x43295f
jmp 0x4328c6
cvtsi2sd xmm0, dword [ebp - 0x5c4]
movsd xmm1, qword [ebp - 0x8df0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x5c8], edx
jmp 0x432969
xor eax, eax
je 0x4328d0
jmp 0x4328df
jmp 0x432729
jmp 0x432729
mov ecx, 2
test ecx, ecx
je 0x43295f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x5cc], eax
cvtsi2sd xmm0, dword [ebp - 0x5cc]
mov eax, dword [ebp - 0x5cc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8df0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x5c8], ecx
jmp 0x432969
mov dword [ebp - 0x5c8], 8
mov edx, dword [ebp - 0x5a8]
shl edx, 2
add edx, dword [ebp - 0x5a4]
mov eax, dword [ebp - 0x5c8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x5a8]
shl ecx, 2
add ecx, dword [ebp - 0x5a4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x5a8]
add edx, 0xffffffa3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8e08], xmm0
xor eax, eax
je 0x4329ab
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4329e7
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8e08]
movsd qword [ebp - 0x8e10], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x432b87
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x432b87
mov dword [ebp - 0x5d0], 0
jmp 0x432a66
cmp dword [ebp - 0x5d0], 0xf
jae 0x432b82
cvtsi2sd xmm0, dword [ebp - 0x5d0]
movsd xmm1, qword [ebp - 0x8e10]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8e18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x432ad5
mov ecx, dword [ebp - 0x5d0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8e10]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e10], xmm1
jmp 0x4329d1
cvtsi2sd xmm0, dword [ebp - 0x5d0]
movsd xmm1, qword [ebp - 0x8e10]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8e20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x432b32
mov eax, dword [ebp - 0x5d0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8e10]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e10], xmm1
jmp 0x432b4b
mov ecx, 1
test ecx, ecx
je 0x432b47
jmp 0x432c07
jmp 0x432b6e
cvtsi2sd xmm0, dword [ebp - 0x5d0]
movsd xmm1, qword [ebp - 0x8e10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x5d4], edx
jmp 0x432c11
xor eax, eax
je 0x432b78
jmp 0x432b87
jmp 0x4329d1
jmp 0x4329d1
mov ecx, 2
test ecx, ecx
je 0x432c07
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x5d8], eax
cvtsi2sd xmm0, dword [ebp - 0x5d8]
mov eax, dword [ebp - 0x5d8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8e10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x5d4], ecx
jmp 0x432c11
mov dword [ebp - 0x5d4], 8
mov edx, dword [ebp - 0x5a8]
add edx, 0xffffffa3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8e28], xmm0
xor eax, eax
je 0x432c2b
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x432c67
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8e28]
movsd qword [ebp - 0x8e30], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x432e07
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x432e07
mov dword [ebp - 0x5dc], 0
jmp 0x432ce6
cmp dword [ebp - 0x5dc], 0xf
jae 0x432e02
cvtsi2sd xmm0, dword [ebp - 0x5dc]
movsd xmm1, qword [ebp - 0x8e30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8e38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x432d55
mov ecx, dword [ebp - 0x5dc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8e30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e30], xmm1
jmp 0x432c51
cvtsi2sd xmm0, dword [ebp - 0x5dc]
movsd xmm1, qword [ebp - 0x8e30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8e40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x432db2
mov eax, dword [ebp - 0x5dc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8e30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e30], xmm1
jmp 0x432dcb
mov ecx, 1
test ecx, ecx
je 0x432dc7
jmp 0x432e87
jmp 0x432dee
cvtsi2sd xmm0, dword [ebp - 0x5dc]
movsd xmm1, qword [ebp - 0x8e30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x5e0], edx
jmp 0x432e91
xor eax, eax
je 0x432df8
jmp 0x432e07
jmp 0x432c51
jmp 0x432c51
mov ecx, 2
test ecx, ecx
je 0x432e87
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x5e4], eax
cvtsi2sd xmm0, dword [ebp - 0x5e4]
mov eax, dword [ebp - 0x5e4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8e30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x5e0], ecx
jmp 0x432e91
mov dword [ebp - 0x5e0], 8
mov edx, dword [ebp - 0x5a8]
shl edx, 2
add edx, dword [ebp - 0x5a4]
mov eax, dword [ebp - 0x5d4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x5a8]
shl ecx, 2
add ecx, dword [ebp - 0x5a4]
mov edx, dword [ebp - 0x5e0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x5a8]
shl ecx, 2
add ecx, dword [ebp - 0x5a4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43319f
xor eax, eax
je 0x432f11
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x432f4d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec0]
movsd qword [ebp - 0x8e48], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4330ed
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4330ed
mov dword [ebp - 0x5e8], 0
jmp 0x432fcc
cmp dword [ebp - 0x5e8], 0xf
jae 0x4330e8
cvtsi2sd xmm0, dword [ebp - 0x5e8]
movsd xmm1, qword [ebp - 0x8e48]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e50], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8e50]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43303b
mov ecx, dword [ebp - 0x5e8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8e48]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e48], xmm1
jmp 0x432f37
cvtsi2sd xmm0, dword [ebp - 0x5e8]
movsd xmm1, qword [ebp - 0x8e48]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e58], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8e58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x433098
mov eax, dword [ebp - 0x5e8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8e48]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e48], xmm1
jmp 0x4330b1
mov ecx, 1
test ecx, ecx
je 0x4330ad
jmp 0x43316d
jmp 0x4330d4
cvtsi2sd xmm0, dword [ebp - 0x5e8]
movsd xmm1, qword [ebp - 0x8e48]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x5ec], edx
jmp 0x433177
xor eax, eax
je 0x4330de
jmp 0x4330ed
jmp 0x432f37
jmp 0x432f37
mov ecx, 2
test ecx, ecx
je 0x43316d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x5f0], eax
cvtsi2sd xmm0, dword [ebp - 0x5f0]
mov eax, dword [ebp - 0x5f0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8e48]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x5ec], ecx
jmp 0x433177
mov dword [ebp - 0x5ec], 8
mov edx, dword [ebp - 0x5a8]
shl edx, 2
add edx, dword [ebp - 0x5a4]
mov eax, dword [ebp - 0x5ec]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x5a8]
shl ecx, 2
add ecx, dword [ebp - 0x5a4]
mov dword [ecx], eax
jmp 0x4320cf
mov edx, dword [ebp - 0x5a0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x5a0]
mov dword [ebp - 0x5f4], eax
mov ecx, dword [ebp - 0x5f4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x5f8], ecx
mov edx, dword [ebp - 0x5f8]
mov dword [ebp - 0x59c], edx
mov eax, dword [ebp - 0x2fc]
mov ecx, dword [ebp - 0x2fc]
add ecx, dword [eax + 0x3c]
add ecx, 0xf8
mov dword [ebp - 0x5fc], ecx
xor edx, edx
mov byte [ebp - 0xd], dl
lea ecx, [ebp - 0xd]
call fcn.00425f70
mov dword [ebp - 0x600], eax
mov eax, dword [ebp - 0x600]
movzx ecx, byte [eax + 4]
test ecx, ecx
jne 0x43430a
mov edx, dword [ebp - 0x600]
mov dword [ebp - 0x604], edx
mov dword [ebp - 0x608], 0
jmp 0x433244
mov eax, dword [ebp - 0x608]
add eax, 1
mov dword [ebp - 0x608], eax
cmp dword [ebp - 0x608], 1
jae 0x43430a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx ecx, al
add esi, ecx
call fcn.005e7fe0
movsx edx, al
imul eax, edx, 3
movsx ecx, byte [0x7862ac]
imul eax, ecx
add esi, eax
call fcn.005e7fb0
movsx edx, al
sub esi, edx
je 0x43351c
xor eax, eax
je 0x43328e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4332ca
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [0x736ed0]
movsd qword [ebp - 0x8e60], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43346a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43346a
mov dword [ebp - 0x60c], 0
jmp 0x433349
cmp dword [ebp - 0x60c], 0xf
jae 0x433465
cvtsi2sd xmm0, dword [ebp - 0x60c]
movsd xmm1, qword [ebp - 0x8e60]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e68], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8e68]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4333b8
mov ecx, dword [ebp - 0x60c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8e60]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e60], xmm1
jmp 0x4332b4
cvtsi2sd xmm0, dword [ebp - 0x60c]
movsd xmm1, qword [ebp - 0x8e60]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e70], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8e70]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x433415
mov eax, dword [ebp - 0x60c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8e60]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e60], xmm1
jmp 0x43342e
mov ecx, 1
test ecx, ecx
je 0x43342a
jmp 0x4334ea
jmp 0x433451
cvtsi2sd xmm0, dword [ebp - 0x60c]
movsd xmm1, qword [ebp - 0x8e60]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x610], edx
jmp 0x4334f4
xor eax, eax
je 0x43345b
jmp 0x43346a
jmp 0x4332b4
jmp 0x4332b4
mov ecx, 2
test ecx, ecx
je 0x4334ea
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x614], eax
cvtsi2sd xmm0, dword [ebp - 0x614]
mov eax, dword [ebp - 0x614]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8e60]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x610], ecx
jmp 0x4334f4
mov dword [ebp - 0x610], 8
mov edx, dword [ebp - 0x608]
shl edx, 2
add edx, dword [ebp - 0x604]
mov eax, dword [ebp - 0x610]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x608]
shl ecx, 2
add ecx, dword [ebp - 0x604]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43403a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43382c
xor eax, eax
je 0x43359e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4335da
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec8]
movsd qword [ebp - 0x8e78], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43377a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43377a
mov dword [ebp - 0x618], 0
jmp 0x433659
cmp dword [ebp - 0x618], 0xf
jae 0x433775
cvtsi2sd xmm0, dword [ebp - 0x618]
movsd xmm1, qword [ebp - 0x8e78]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e80], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8e80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4336c8
mov ecx, dword [ebp - 0x618]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8e78]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e78], xmm1
jmp 0x4335c4
cvtsi2sd xmm0, dword [ebp - 0x618]
movsd xmm1, qword [ebp - 0x8e78]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e88], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8e88]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x433725
mov eax, dword [ebp - 0x618]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8e78]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e78], xmm1
jmp 0x43373e
mov ecx, 1
test ecx, ecx
je 0x43373a
jmp 0x4337fa
jmp 0x433761
cvtsi2sd xmm0, dword [ebp - 0x618]
movsd xmm1, qword [ebp - 0x8e78]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x61c], edx
jmp 0x433804
xor eax, eax
je 0x43376b
jmp 0x43377a
jmp 0x4335c4
jmp 0x4335c4
mov ecx, 2
test ecx, ecx
je 0x4337fa
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x620], eax
cvtsi2sd xmm0, dword [ebp - 0x620]
mov eax, dword [ebp - 0x620]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8e78]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x61c], ecx
jmp 0x433804
mov dword [ebp - 0x61c], 8
mov edx, dword [ebp - 0x608]
shl edx, 2
add edx, dword [ebp - 0x604]
mov eax, dword [ebp - 0x61c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x608]
shl ecx, 2
add ecx, dword [ebp - 0x604]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x433af7
xor eax, eax
je 0x433869
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4338a5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec0]
movsd qword [ebp - 0x8e90], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x433a45
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x433a45
mov dword [ebp - 0x624], 0
jmp 0x433924
cmp dword [ebp - 0x624], 0xf
jae 0x433a40
cvtsi2sd xmm0, dword [ebp - 0x624]
movsd xmm1, qword [ebp - 0x8e90]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8e98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x433993
mov ecx, dword [ebp - 0x624]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8e90]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e90], xmm1
jmp 0x43388f
cvtsi2sd xmm0, dword [ebp - 0x624]
movsd xmm1, qword [ebp - 0x8e90]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ea0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8ea0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4339f0
mov eax, dword [ebp - 0x624]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8e90]
addsd xmm1, xmm0
movsd qword [ebp - 0x8e90], xmm1
jmp 0x433a09
mov ecx, 1
test ecx, ecx
je 0x433a05
jmp 0x433ac5
jmp 0x433a2c
cvtsi2sd xmm0, dword [ebp - 0x624]
movsd xmm1, qword [ebp - 0x8e90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x628], edx
jmp 0x433acf
xor eax, eax
je 0x433a36
jmp 0x433a45
jmp 0x43388f
jmp 0x43388f
mov ecx, 2
test ecx, ecx
je 0x433ac5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x62c], eax
cvtsi2sd xmm0, dword [ebp - 0x62c]
mov eax, dword [ebp - 0x62c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8e90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x628], ecx
jmp 0x433acf
mov dword [ebp - 0x628], 8
mov edx, dword [ebp - 0x608]
shl edx, 2
add edx, dword [ebp - 0x604]
mov eax, dword [ebp - 0x628]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x608]
shl ecx, 2
add ecx, dword [ebp - 0x604]
mov dword [ecx], eax
mov edx, dword [ebp - 0x608]
add edx, 0xffffffa4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8ea8], xmm0
xor eax, eax
je 0x433b11
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x433b4d
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8ea8]
movsd qword [ebp - 0x8eb0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x433ced
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x433ced
mov dword [ebp - 0x630], 0
jmp 0x433bcc
cmp dword [ebp - 0x630], 0xf
jae 0x433ce8
cvtsi2sd xmm0, dword [ebp - 0x630]
movsd xmm1, qword [ebp - 0x8eb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8eb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8eb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x433c3b
mov ecx, dword [ebp - 0x630]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8eb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8eb0], xmm1
jmp 0x433b37
cvtsi2sd xmm0, dword [ebp - 0x630]
movsd xmm1, qword [ebp - 0x8eb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ec0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8ec0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x433c98
mov eax, dword [ebp - 0x630]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8eb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8eb0], xmm1
jmp 0x433cb1
mov ecx, 1
test ecx, ecx
je 0x433cad
jmp 0x433d6d
jmp 0x433cd4
cvtsi2sd xmm0, dword [ebp - 0x630]
movsd xmm1, qword [ebp - 0x8eb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x634], edx
jmp 0x433d77
xor eax, eax
je 0x433cde
jmp 0x433ced
jmp 0x433b37
jmp 0x433b37
mov ecx, 2
test ecx, ecx
je 0x433d6d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x638], eax
cvtsi2sd xmm0, dword [ebp - 0x638]
mov eax, dword [ebp - 0x638]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8eb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x634], ecx
jmp 0x433d77
mov dword [ebp - 0x634], 8
mov edx, dword [ebp - 0x608]
add edx, 0xffffffa4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8ec8], xmm0
xor eax, eax
je 0x433d91
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x433dcd
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8ec8]
movsd qword [ebp - 0x8ed0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x433f6d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x433f6d
mov dword [ebp - 0x63c], 0
jmp 0x433e4c
cmp dword [ebp - 0x63c], 0xf
jae 0x433f68
cvtsi2sd xmm0, dword [ebp - 0x63c]
movsd xmm1, qword [ebp - 0x8ed0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ed8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8ed8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x433ebb
mov ecx, dword [ebp - 0x63c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8ed0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ed0], xmm1
jmp 0x433db7
cvtsi2sd xmm0, dword [ebp - 0x63c]
movsd xmm1, qword [ebp - 0x8ed0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ee0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8ee0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x433f18
mov eax, dword [ebp - 0x63c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8ed0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ed0], xmm1
jmp 0x433f31
mov ecx, 1
test ecx, ecx
je 0x433f2d
jmp 0x433fed
jmp 0x433f54
cvtsi2sd xmm0, dword [ebp - 0x63c]
movsd xmm1, qword [ebp - 0x8ed0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x640], edx
jmp 0x433ff7
xor eax, eax
je 0x433f5e
jmp 0x433f6d
jmp 0x433db7
jmp 0x433db7
mov ecx, 2
test ecx, ecx
je 0x433fed
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x644], eax
cvtsi2sd xmm0, dword [ebp - 0x644]
mov eax, dword [ebp - 0x644]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8ed0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x640], ecx
jmp 0x433ff7
mov dword [ebp - 0x640], 8
mov edx, dword [ebp - 0x608]
shl edx, 2
add edx, dword [ebp - 0x604]
mov eax, dword [ebp - 0x634]
add eax, dword [edx]
mov ecx, dword [ebp - 0x608]
shl ecx, 2
add ecx, dword [ebp - 0x604]
mov edx, dword [ebp - 0x640]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x608]
shl ecx, 2
add ecx, dword [ebp - 0x604]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x434305
xor eax, eax
je 0x434077
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4340b3
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb8]
movsd qword [ebp - 0x8ee8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x434253
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x434253
mov dword [ebp - 0x648], 0
jmp 0x434132
cmp dword [ebp - 0x648], 0xf
jae 0x43424e
cvtsi2sd xmm0, dword [ebp - 0x648]
movsd xmm1, qword [ebp - 0x8ee8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ef0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8ef0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4341a1
mov ecx, dword [ebp - 0x648]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8ee8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ee8], xmm1
jmp 0x43409d
cvtsi2sd xmm0, dword [ebp - 0x648]
movsd xmm1, qword [ebp - 0x8ee8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ef8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8ef8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4341fe
mov eax, dword [ebp - 0x648]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8ee8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ee8], xmm1
jmp 0x434217
mov ecx, 1
test ecx, ecx
je 0x434213
jmp 0x4342d3
jmp 0x43423a
cvtsi2sd xmm0, dword [ebp - 0x648]
movsd xmm1, qword [ebp - 0x8ee8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x64c], edx
jmp 0x4342dd
xor eax, eax
je 0x434244
jmp 0x434253
jmp 0x43409d
jmp 0x43409d
mov ecx, 2
test ecx, ecx
je 0x4342d3
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x650], eax
cvtsi2sd xmm0, dword [ebp - 0x650]
mov eax, dword [ebp - 0x650]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8ee8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x64c], ecx
jmp 0x4342dd
mov dword [ebp - 0x64c], 8
mov edx, dword [ebp - 0x608]
shl edx, 2
add edx, dword [ebp - 0x604]
mov eax, dword [ebp - 0x64c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x608]
shl ecx, 2
add ecx, dword [ebp - 0x604]
mov dword [ecx], eax
jmp 0x433235
mov edx, dword [ebp - 0x600]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x600]
mov dword [ebp - 0x654], eax
mov ecx, dword [ebp - 0x654]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x658], ecx
mov edx, dword [ebp - 0x658]
mov dword [ebp - 0x65c], edx
xor eax, eax
mov byte [ebp - 0xe], al
lea ecx, [ebp - 0xe]
call fcn.00425f40
mov dword [ebp - 0x660], eax
mov ecx, dword [ebp - 0x660]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x435455
mov eax, dword [ebp - 0x660]
mov dword [ebp - 0x664], eax
mov dword [ebp - 0x668], 0
jmp 0x43438f
mov ecx, dword [ebp - 0x668]
add ecx, 1
mov dword [ebp - 0x668], ecx
cmp dword [ebp - 0x668], 1
jae 0x435455
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x434667
xor eax, eax
je 0x4343d9
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x434415
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ed0]
movsd qword [ebp - 0x8f00], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4345b5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4345b5
mov dword [ebp - 0x66c], 0
jmp 0x434494
cmp dword [ebp - 0x66c], 0xf
jae 0x4345b0
cvtsi2sd xmm0, dword [ebp - 0x66c]
movsd xmm1, qword [ebp - 0x8f00]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f08], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8f08]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x434503
mov ecx, dword [ebp - 0x66c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8f00]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f00], xmm1
jmp 0x4343ff
cvtsi2sd xmm0, dword [ebp - 0x66c]
movsd xmm1, qword [ebp - 0x8f00]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f10], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8f10]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x434560
mov eax, dword [ebp - 0x66c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8f00]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f00], xmm1
jmp 0x434579
mov ecx, 1
test ecx, ecx
je 0x434575
jmp 0x434635
jmp 0x43459c
cvtsi2sd xmm0, dword [ebp - 0x66c]
movsd xmm1, qword [ebp - 0x8f00]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x670], edx
jmp 0x43463f
xor eax, eax
je 0x4345a6
jmp 0x4345b5
jmp 0x4343ff
jmp 0x4343ff
mov ecx, 2
test ecx, ecx
je 0x434635
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x674], eax
cvtsi2sd xmm0, dword [ebp - 0x674]
mov eax, dword [ebp - 0x674]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8f00]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x670], ecx
jmp 0x43463f
mov dword [ebp - 0x670], 8
mov edx, dword [ebp - 0x668]
shl edx, 2
add edx, dword [ebp - 0x664]
mov eax, dword [ebp - 0x670]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x668]
shl ecx, 2
add ecx, dword [ebp - 0x664]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x435185
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x434977
xor eax, eax
je 0x4346e9
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x434725
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec8]
movsd qword [ebp - 0x8f18], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4348c5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4348c5
mov dword [ebp - 0x678], 0
jmp 0x4347a4
cmp dword [ebp - 0x678], 0xf
jae 0x4348c0
cvtsi2sd xmm0, dword [ebp - 0x678]
movsd xmm1, qword [ebp - 0x8f18]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f20], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8f20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x434813
mov ecx, dword [ebp - 0x678]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8f18]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f18], xmm1
jmp 0x43470f
cvtsi2sd xmm0, dword [ebp - 0x678]
movsd xmm1, qword [ebp - 0x8f18]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f28], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8f28]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x434870
mov eax, dword [ebp - 0x678]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8f18]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f18], xmm1
jmp 0x434889
mov ecx, 1
test ecx, ecx
je 0x434885
jmp 0x434945
jmp 0x4348ac
cvtsi2sd xmm0, dword [ebp - 0x678]
movsd xmm1, qword [ebp - 0x8f18]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x67c], edx
jmp 0x43494f
xor eax, eax
je 0x4348b6
jmp 0x4348c5
jmp 0x43470f
jmp 0x43470f
mov ecx, 2
test ecx, ecx
je 0x434945
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x680], eax
cvtsi2sd xmm0, dword [ebp - 0x680]
mov eax, dword [ebp - 0x680]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8f18]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x67c], ecx
jmp 0x43494f
mov dword [ebp - 0x67c], 8
mov edx, dword [ebp - 0x668]
shl edx, 2
add edx, dword [ebp - 0x664]
mov eax, dword [ebp - 0x67c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x668]
shl ecx, 2
add ecx, dword [ebp - 0x664]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x434c42
xor eax, eax
je 0x4349b4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4349f0
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec0]
movsd qword [ebp - 0x8f30], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x434b90
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x434b90
mov dword [ebp - 0x684], 0
jmp 0x434a6f
cmp dword [ebp - 0x684], 0xf
jae 0x434b8b
cvtsi2sd xmm0, dword [ebp - 0x684]
movsd xmm1, qword [ebp - 0x8f30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8f38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x434ade
mov ecx, dword [ebp - 0x684]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8f30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f30], xmm1
jmp 0x4349da
cvtsi2sd xmm0, dword [ebp - 0x684]
movsd xmm1, qword [ebp - 0x8f30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8f40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x434b3b
mov eax, dword [ebp - 0x684]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8f30]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f30], xmm1
jmp 0x434b54
mov ecx, 1
test ecx, ecx
je 0x434b50
jmp 0x434c10
jmp 0x434b77
cvtsi2sd xmm0, dword [ebp - 0x684]
movsd xmm1, qword [ebp - 0x8f30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x688], edx
jmp 0x434c1a
xor eax, eax
je 0x434b81
jmp 0x434b90
jmp 0x4349da
jmp 0x4349da
mov ecx, 2
test ecx, ecx
je 0x434c10
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x68c], eax
cvtsi2sd xmm0, dword [ebp - 0x68c]
mov eax, dword [ebp - 0x68c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8f30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x688], ecx
jmp 0x434c1a
mov dword [ebp - 0x688], 8
mov edx, dword [ebp - 0x668]
shl edx, 2
add edx, dword [ebp - 0x664]
mov eax, dword [ebp - 0x688]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x668]
shl ecx, 2
add ecx, dword [ebp - 0x664]
mov dword [ecx], eax
mov edx, dword [ebp - 0x668]
add edx, 0xffffffa4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8f48], xmm0
xor eax, eax
je 0x434c5c
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x434c98
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8f48]
movsd qword [ebp - 0x8f50], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x434e38
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x434e38
mov dword [ebp - 0x690], 0
jmp 0x434d17
cmp dword [ebp - 0x690], 0xf
jae 0x434e33
cvtsi2sd xmm0, dword [ebp - 0x690]
movsd xmm1, qword [ebp - 0x8f50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8f58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x434d86
mov ecx, dword [ebp - 0x690]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8f50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f50], xmm1
jmp 0x434c82
cvtsi2sd xmm0, dword [ebp - 0x690]
movsd xmm1, qword [ebp - 0x8f50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8f60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x434de3
mov eax, dword [ebp - 0x690]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8f50]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f50], xmm1
jmp 0x434dfc
mov ecx, 1
test ecx, ecx
je 0x434df8
jmp 0x434eb8
jmp 0x434e1f
cvtsi2sd xmm0, dword [ebp - 0x690]
movsd xmm1, qword [ebp - 0x8f50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x694], edx
jmp 0x434ec2
xor eax, eax
je 0x434e29
jmp 0x434e38
jmp 0x434c82
jmp 0x434c82
mov ecx, 2
test ecx, ecx
je 0x434eb8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x698], eax
cvtsi2sd xmm0, dword [ebp - 0x698]
mov eax, dword [ebp - 0x698]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8f50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x694], ecx
jmp 0x434ec2
mov dword [ebp - 0x694], 8
mov edx, dword [ebp - 0x668]
add edx, 0xffffffa4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8f68], xmm0
xor eax, eax
je 0x434edc
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x434f18
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8f68]
movsd qword [ebp - 0x8f70], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4350b8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4350b8
mov dword [ebp - 0x69c], 0
jmp 0x434f97
cmp dword [ebp - 0x69c], 0xf
jae 0x4350b3
cvtsi2sd xmm0, dword [ebp - 0x69c]
movsd xmm1, qword [ebp - 0x8f70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8f78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x435006
mov ecx, dword [ebp - 0x69c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8f70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f70], xmm1
jmp 0x434f02
cvtsi2sd xmm0, dword [ebp - 0x69c]
movsd xmm1, qword [ebp - 0x8f70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8f80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x435063
mov eax, dword [ebp - 0x69c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8f70]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f70], xmm1
jmp 0x43507c
mov ecx, 1
test ecx, ecx
je 0x435078
jmp 0x435138
jmp 0x43509f
cvtsi2sd xmm0, dword [ebp - 0x69c]
movsd xmm1, qword [ebp - 0x8f70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x6a0], edx
jmp 0x435142
xor eax, eax
je 0x4350a9
jmp 0x4350b8
jmp 0x434f02
jmp 0x434f02
mov ecx, 2
test ecx, ecx
je 0x435138
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x6a4], eax
cvtsi2sd xmm0, dword [ebp - 0x6a4]
mov eax, dword [ebp - 0x6a4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8f70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x6a0], ecx
jmp 0x435142
mov dword [ebp - 0x6a0], 8
mov edx, dword [ebp - 0x668]
shl edx, 2
add edx, dword [ebp - 0x664]
mov eax, dword [ebp - 0x694]
add eax, dword [edx]
mov ecx, dword [ebp - 0x668]
shl ecx, 2
add ecx, dword [ebp - 0x664]
mov edx, dword [ebp - 0x6a0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x668]
shl ecx, 2
add ecx, dword [ebp - 0x664]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x435450
xor eax, eax
je 0x4351c2
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4351fe
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb8]
movsd qword [ebp - 0x8f88], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43539e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43539e
mov dword [ebp - 0x6a8], 0
jmp 0x43527d
cmp dword [ebp - 0x6a8], 0xf
jae 0x435399
cvtsi2sd xmm0, dword [ebp - 0x6a8]
movsd xmm1, qword [ebp - 0x8f88]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f90], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8f90]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4352ec
mov ecx, dword [ebp - 0x6a8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8f88]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f88], xmm1
jmp 0x4351e8
cvtsi2sd xmm0, dword [ebp - 0x6a8]
movsd xmm1, qword [ebp - 0x8f88]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f98], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8f98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x435349
mov eax, dword [ebp - 0x6a8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8f88]
addsd xmm1, xmm0
movsd qword [ebp - 0x8f88], xmm1
jmp 0x435362
mov ecx, 1
test ecx, ecx
je 0x43535e
jmp 0x43541e
jmp 0x435385
cvtsi2sd xmm0, dword [ebp - 0x6a8]
movsd xmm1, qword [ebp - 0x8f88]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x6ac], edx
jmp 0x435428
xor eax, eax
je 0x43538f
jmp 0x43539e
jmp 0x4351e8
jmp 0x4351e8
mov ecx, 2
test ecx, ecx
je 0x43541e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x6b0], eax
cvtsi2sd xmm0, dword [ebp - 0x6b0]
mov eax, dword [ebp - 0x6b0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8f88]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x6ac], ecx
jmp 0x435428
mov dword [ebp - 0x6ac], 8
mov edx, dword [ebp - 0x668]
shl edx, 2
add edx, dword [ebp - 0x664]
mov eax, dword [ebp - 0x6ac]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x668]
shl ecx, 2
add ecx, dword [ebp - 0x664]
mov dword [ecx], eax
jmp 0x434380
mov edx, dword [ebp - 0x660]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x660]
mov dword [ebp - 0x6b4], eax
mov ecx, dword [ebp - 0x6b4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x6b8], ecx
mov edx, dword [ebp - 0x6b8]
mov dword [ebp - 0x6bc], edx
xor eax, eax
mov byte [ebp - 0xf], al
lea ecx, [ebp - 0xf]
call fcn.00425f10
mov dword [ebp - 0x6c0], eax
mov ecx, dword [ebp - 0x6c0]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4365a0
mov eax, dword [ebp - 0x6c0]
mov dword [ebp - 0x6c4], eax
mov dword [ebp - 0x6c8], 0
jmp 0x4354da
mov ecx, dword [ebp - 0x6c8]
add ecx, 1
mov dword [ebp - 0x6c8], ecx
cmp dword [ebp - 0x6c8], 1
jae 0x4365a0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4357b2
xor eax, eax
je 0x435524
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x435560
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec8]
movsd qword [ebp - 0x8fa0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x435700
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x435700
mov dword [ebp - 0x6cc], 0
jmp 0x4355df
cmp dword [ebp - 0x6cc], 0xf
jae 0x4356fb
cvtsi2sd xmm0, dword [ebp - 0x6cc]
movsd xmm1, qword [ebp - 0x8fa0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8fa8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8fa8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43564e
mov ecx, dword [ebp - 0x6cc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8fa0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8fa0], xmm1
jmp 0x43554a
cvtsi2sd xmm0, dword [ebp - 0x6cc]
movsd xmm1, qword [ebp - 0x8fa0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8fb0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8fb0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4356ab
mov eax, dword [ebp - 0x6cc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8fa0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8fa0], xmm1
jmp 0x4356c4
mov ecx, 1
test ecx, ecx
je 0x4356c0
jmp 0x435780
jmp 0x4356e7
cvtsi2sd xmm0, dword [ebp - 0x6cc]
movsd xmm1, qword [ebp - 0x8fa0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x6d0], edx
jmp 0x43578a
xor eax, eax
je 0x4356f1
jmp 0x435700
jmp 0x43554a
jmp 0x43554a
mov ecx, 2
test ecx, ecx
je 0x435780
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x6d4], eax
cvtsi2sd xmm0, dword [ebp - 0x6d4]
mov eax, dword [ebp - 0x6d4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8fa0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x6d0], ecx
jmp 0x43578a
mov dword [ebp - 0x6d0], 8
mov edx, dword [ebp - 0x6c8]
shl edx, 2
add edx, dword [ebp - 0x6c4]
mov eax, dword [ebp - 0x6d0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x6c8]
shl ecx, 2
add ecx, dword [ebp - 0x6c4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4362d0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x435ac2
xor eax, eax
je 0x435834
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x435870
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec0]
movsd qword [ebp - 0x8fb8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x435a10
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x435a10
mov dword [ebp - 0x6d8], 0
jmp 0x4358ef
cmp dword [ebp - 0x6d8], 0xf
jae 0x435a0b
cvtsi2sd xmm0, dword [ebp - 0x6d8]
movsd xmm1, qword [ebp - 0x8fb8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8fc0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8fc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43595e
mov ecx, dword [ebp - 0x6d8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8fb8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8fb8], xmm1
jmp 0x43585a
cvtsi2sd xmm0, dword [ebp - 0x6d8]
movsd xmm1, qword [ebp - 0x8fb8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8fc8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8fc8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4359bb
mov eax, dword [ebp - 0x6d8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8fb8]
addsd xmm1, xmm0
movsd qword [ebp - 0x8fb8], xmm1
jmp 0x4359d4
mov ecx, 1
test ecx, ecx
je 0x4359d0
jmp 0x435a90
jmp 0x4359f7
cvtsi2sd xmm0, dword [ebp - 0x6d8]
movsd xmm1, qword [ebp - 0x8fb8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x6dc], edx
jmp 0x435a9a
xor eax, eax
je 0x435a01
jmp 0x435a10
jmp 0x43585a
jmp 0x43585a
mov ecx, 2
test ecx, ecx
je 0x435a90
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x6e0], eax
cvtsi2sd xmm0, dword [ebp - 0x6e0]
mov eax, dword [ebp - 0x6e0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8fb8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x6dc], ecx
jmp 0x435a9a
mov dword [ebp - 0x6dc], 8
mov edx, dword [ebp - 0x6c8]
shl edx, 2
add edx, dword [ebp - 0x6c4]
mov eax, dword [ebp - 0x6dc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x6c8]
shl ecx, 2
add ecx, dword [ebp - 0x6c4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x435d8d
xor eax, eax
je 0x435aff
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x435b3b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb8]
movsd qword [ebp - 0x8fd0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x435cdb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x435cdb
mov dword [ebp - 0x6e4], 0
jmp 0x435bba
cmp dword [ebp - 0x6e4], 0xf
jae 0x435cd6
cvtsi2sd xmm0, dword [ebp - 0x6e4]
movsd xmm1, qword [ebp - 0x8fd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8fd8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8fd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x435c29
mov ecx, dword [ebp - 0x6e4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8fd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8fd0], xmm1
jmp 0x435b25
cvtsi2sd xmm0, dword [ebp - 0x6e4]
movsd xmm1, qword [ebp - 0x8fd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8fe0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x8fe0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x435c86
mov eax, dword [ebp - 0x6e4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8fd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8fd0], xmm1
jmp 0x435c9f
mov ecx, 1
test ecx, ecx
je 0x435c9b
jmp 0x435d5b
jmp 0x435cc2
cvtsi2sd xmm0, dword [ebp - 0x6e4]
movsd xmm1, qword [ebp - 0x8fd0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x6e8], edx
jmp 0x435d65
xor eax, eax
je 0x435ccc
jmp 0x435cdb
jmp 0x435b25
jmp 0x435b25
mov ecx, 2
test ecx, ecx
je 0x435d5b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x6ec], eax
cvtsi2sd xmm0, dword [ebp - 0x6ec]
mov eax, dword [ebp - 0x6ec]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8fd0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x6e8], ecx
jmp 0x435d65
mov dword [ebp - 0x6e8], 8
mov edx, dword [ebp - 0x6c8]
shl edx, 2
add edx, dword [ebp - 0x6c4]
mov eax, dword [ebp - 0x6e8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x6c8]
shl ecx, 2
add ecx, dword [ebp - 0x6c4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x6c8]
add edx, 0xffffffa5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x8fe8], xmm0
xor eax, eax
je 0x435da7
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x435de3
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x8fe8]
movsd qword [ebp - 0x8ff0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x435f83
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x435f83
mov dword [ebp - 0x6f0], 0
jmp 0x435e62
cmp dword [ebp - 0x6f0], 0xf
jae 0x435f7e
cvtsi2sd xmm0, dword [ebp - 0x6f0]
movsd xmm1, qword [ebp - 0x8ff0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ff8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8ff8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x435ed1
mov ecx, dword [ebp - 0x6f0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x8ff0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ff0], xmm1
jmp 0x435dcd
cvtsi2sd xmm0, dword [ebp - 0x6f0]
movsd xmm1, qword [ebp - 0x8ff0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9000], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9000]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x435f2e
mov eax, dword [ebp - 0x6f0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x8ff0]
addsd xmm1, xmm0
movsd qword [ebp - 0x8ff0], xmm1
jmp 0x435f47
mov ecx, 1
test ecx, ecx
je 0x435f43
jmp 0x436003
jmp 0x435f6a
cvtsi2sd xmm0, dword [ebp - 0x6f0]
movsd xmm1, qword [ebp - 0x8ff0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x6f4], edx
jmp 0x43600d
xor eax, eax
je 0x435f74
jmp 0x435f83
jmp 0x435dcd
jmp 0x435dcd
mov ecx, 2
test ecx, ecx
je 0x436003
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x6f8], eax
cvtsi2sd xmm0, dword [ebp - 0x6f8]
mov eax, dword [ebp - 0x6f8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x8ff0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x6f4], ecx
jmp 0x43600d
mov dword [ebp - 0x6f4], 8
mov edx, dword [ebp - 0x6c8]
add edx, 0xffffffa5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9008], xmm0
xor eax, eax
je 0x436027
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x436063
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9008]
movsd qword [ebp - 0x9010], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x436203
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x436203
mov dword [ebp - 0x6fc], 0
jmp 0x4360e2
cmp dword [ebp - 0x6fc], 0xf
jae 0x4361fe
cvtsi2sd xmm0, dword [ebp - 0x6fc]
movsd xmm1, qword [ebp - 0x9010]
addsd xmm1, xmm0
movsd qword [ebp - 0x9018], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9018]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x436151
mov ecx, dword [ebp - 0x6fc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9010]
addsd xmm1, xmm0
movsd qword [ebp - 0x9010], xmm1
jmp 0x43604d
cvtsi2sd xmm0, dword [ebp - 0x6fc]
movsd xmm1, qword [ebp - 0x9010]
addsd xmm1, xmm0
movsd qword [ebp - 0x9020], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9020]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4361ae
mov eax, dword [ebp - 0x6fc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9010]
addsd xmm1, xmm0
movsd qword [ebp - 0x9010], xmm1
jmp 0x4361c7
mov ecx, 1
test ecx, ecx
je 0x4361c3
jmp 0x436283
jmp 0x4361ea
cvtsi2sd xmm0, dword [ebp - 0x6fc]
movsd xmm1, qword [ebp - 0x9010]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x700], edx
jmp 0x43628d
xor eax, eax
je 0x4361f4
jmp 0x436203
jmp 0x43604d
jmp 0x43604d
mov ecx, 2
test ecx, ecx
je 0x436283
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x704], eax
cvtsi2sd xmm0, dword [ebp - 0x704]
mov eax, dword [ebp - 0x704]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9010]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x700], ecx
jmp 0x43628d
mov dword [ebp - 0x700], 8
mov edx, dword [ebp - 0x6c8]
shl edx, 2
add edx, dword [ebp - 0x6c4]
mov eax, dword [ebp - 0x6f4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x6c8]
shl ecx, 2
add ecx, dword [ebp - 0x6c4]
mov edx, dword [ebp - 0x700]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x6c8]
shl ecx, 2
add ecx, dword [ebp - 0x6c4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43659b
xor eax, eax
je 0x43630d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x436349
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb0]
movsd qword [ebp - 0x9028], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4364e9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4364e9
mov dword [ebp - 0x708], 0
jmp 0x4363c8
cmp dword [ebp - 0x708], 0xf
jae 0x4364e4
cvtsi2sd xmm0, dword [ebp - 0x708]
movsd xmm1, qword [ebp - 0x9028]
addsd xmm1, xmm0
movsd qword [ebp - 0x9030], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9030]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x436437
mov ecx, dword [ebp - 0x708]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9028]
addsd xmm1, xmm0
movsd qword [ebp - 0x9028], xmm1
jmp 0x436333
cvtsi2sd xmm0, dword [ebp - 0x708]
movsd xmm1, qword [ebp - 0x9028]
addsd xmm1, xmm0
movsd qword [ebp - 0x9038], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9038]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x436494
mov eax, dword [ebp - 0x708]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9028]
addsd xmm1, xmm0
movsd qword [ebp - 0x9028], xmm1
jmp 0x4364ad
mov ecx, 1
test ecx, ecx
je 0x4364a9
jmp 0x436569
jmp 0x4364d0
cvtsi2sd xmm0, dword [ebp - 0x708]
movsd xmm1, qword [ebp - 0x9028]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x70c], edx
jmp 0x436573
xor eax, eax
je 0x4364da
jmp 0x4364e9
jmp 0x436333
jmp 0x436333
mov ecx, 2
test ecx, ecx
je 0x436569
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x710], eax
cvtsi2sd xmm0, dword [ebp - 0x710]
mov eax, dword [ebp - 0x710]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9028]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x70c], ecx
jmp 0x436573
mov dword [ebp - 0x70c], 8
mov edx, dword [ebp - 0x6c8]
shl edx, 2
add edx, dword [ebp - 0x6c4]
mov eax, dword [ebp - 0x70c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x6c8]
shl ecx, 2
add ecx, dword [ebp - 0x6c4]
mov dword [ecx], eax
jmp 0x4354cb
mov edx, dword [ebp - 0x6c0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x6c0]
mov dword [ebp - 0x714], eax
mov ecx, dword [ebp - 0x714]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x718], ecx
mov edx, dword [ebp - 0x718]
mov dword [ebp - 0x71c], edx
mov eax, dword [ebp - 0x6bc]
mov dword [ebp - 0x65c], eax
cmp dword [ebp - 0x65c], 0
je 0x43773d
xor ecx, ecx
mov byte [ebp - 0x10], cl
lea ecx, [ebp - 0x10]
call fcn.00425ee0
mov dword [ebp - 0x720], eax
mov edx, dword [ebp - 0x720]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x437704
mov ecx, dword [ebp - 0x720]
mov dword [ebp - 0x724], ecx
mov dword [ebp - 0x728], 0
jmp 0x43663e
mov edx, dword [ebp - 0x728]
add edx, 1
mov dword [ebp - 0x728], edx
cmp dword [ebp - 0x728], 1
jae 0x437704
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x436916
xor eax, eax
je 0x436688
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x4366c4
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736ec8]
movsd qword [ebp - 0x9040], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x436864
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x436864
mov dword [ebp - 0x72c], 0
jmp 0x436743
cmp dword [ebp - 0x72c], 0xf
jae 0x43685f
cvtsi2sd xmm0, dword [ebp - 0x72c]
movsd xmm1, qword [ebp - 0x9040]
addsd xmm1, xmm0
movsd qword [ebp - 0x9048], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9048]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4367b2
mov ecx, dword [ebp - 0x72c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9040]
addsd xmm1, xmm0
movsd qword [ebp - 0x9040], xmm1
jmp 0x4366ae
cvtsi2sd xmm0, dword [ebp - 0x72c]
movsd xmm1, qword [ebp - 0x9040]
addsd xmm1, xmm0
movsd qword [ebp - 0x9050], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9050]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43680f
mov eax, dword [ebp - 0x72c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9040]
addsd xmm1, xmm0
movsd qword [ebp - 0x9040], xmm1
jmp 0x436828
mov ecx, 1
test ecx, ecx
je 0x436824
jmp 0x4368e4
jmp 0x43684b
cvtsi2sd xmm0, dword [ebp - 0x72c]
movsd xmm1, qword [ebp - 0x9040]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x730], edx
jmp 0x4368ee
xor eax, eax
je 0x436855
jmp 0x436864
jmp 0x4366ae
jmp 0x4366ae
mov ecx, 2
test ecx, ecx
je 0x4368e4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x734], eax
cvtsi2sd xmm0, dword [ebp - 0x734]
mov eax, dword [ebp - 0x734]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9040]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x730], ecx
jmp 0x4368ee
mov dword [ebp - 0x730], 8
mov edx, dword [ebp - 0x728]
shl edx, 2
add edx, dword [ebp - 0x724]
mov eax, dword [ebp - 0x730]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x728]
shl ecx, 2
add ecx, dword [ebp - 0x724]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x437434
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x436c26
xor eax, eax
je 0x436998
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4369d4
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec0]
movsd qword [ebp - 0x9058], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x436b74
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x436b74
mov dword [ebp - 0x738], 0
jmp 0x436a53
cmp dword [ebp - 0x738], 0xf
jae 0x436b6f
cvtsi2sd xmm0, dword [ebp - 0x738]
movsd xmm1, qword [ebp - 0x9058]
addsd xmm1, xmm0
movsd qword [ebp - 0x9060], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9060]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x436ac2
mov ecx, dword [ebp - 0x738]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9058]
addsd xmm1, xmm0
movsd qword [ebp - 0x9058], xmm1
jmp 0x4369be
cvtsi2sd xmm0, dword [ebp - 0x738]
movsd xmm1, qword [ebp - 0x9058]
addsd xmm1, xmm0
movsd qword [ebp - 0x9068], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9068]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x436b1f
mov eax, dword [ebp - 0x738]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9058]
addsd xmm1, xmm0
movsd qword [ebp - 0x9058], xmm1
jmp 0x436b38
mov ecx, 1
test ecx, ecx
je 0x436b34
jmp 0x436bf4
jmp 0x436b5b
cvtsi2sd xmm0, dword [ebp - 0x738]
movsd xmm1, qword [ebp - 0x9058]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x73c], edx
jmp 0x436bfe
xor eax, eax
je 0x436b65
jmp 0x436b74
jmp 0x4369be
jmp 0x4369be
mov ecx, 2
test ecx, ecx
je 0x436bf4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x740], eax
cvtsi2sd xmm0, dword [ebp - 0x740]
mov eax, dword [ebp - 0x740]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9058]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x73c], ecx
jmp 0x436bfe
mov dword [ebp - 0x73c], 8
mov edx, dword [ebp - 0x728]
shl edx, 2
add edx, dword [ebp - 0x724]
mov eax, dword [ebp - 0x73c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x728]
shl ecx, 2
add ecx, dword [ebp - 0x724]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x436ef1
xor eax, eax
je 0x436c63
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x436c9f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb8]
movsd qword [ebp - 0x9070], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x436e3f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x436e3f
mov dword [ebp - 0x744], 0
jmp 0x436d1e
cmp dword [ebp - 0x744], 0xf
jae 0x436e3a
cvtsi2sd xmm0, dword [ebp - 0x744]
movsd xmm1, qword [ebp - 0x9070]
addsd xmm1, xmm0
movsd qword [ebp - 0x9078], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9078]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x436d8d
mov ecx, dword [ebp - 0x744]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9070]
addsd xmm1, xmm0
movsd qword [ebp - 0x9070], xmm1
jmp 0x436c89
cvtsi2sd xmm0, dword [ebp - 0x744]
movsd xmm1, qword [ebp - 0x9070]
addsd xmm1, xmm0
movsd qword [ebp - 0x9080], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9080]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x436dea
mov eax, dword [ebp - 0x744]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9070]
addsd xmm1, xmm0
movsd qword [ebp - 0x9070], xmm1
jmp 0x436e03
mov ecx, 1
test ecx, ecx
je 0x436dff
jmp 0x436ebf
jmp 0x436e26
cvtsi2sd xmm0, dword [ebp - 0x744]
movsd xmm1, qword [ebp - 0x9070]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x748], edx
jmp 0x436ec9
xor eax, eax
je 0x436e30
jmp 0x436e3f
jmp 0x436c89
jmp 0x436c89
mov ecx, 2
test ecx, ecx
je 0x436ebf
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x74c], eax
cvtsi2sd xmm0, dword [ebp - 0x74c]
mov eax, dword [ebp - 0x74c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9070]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x748], ecx
jmp 0x436ec9
mov dword [ebp - 0x748], 8
mov edx, dword [ebp - 0x728]
shl edx, 2
add edx, dword [ebp - 0x724]
mov eax, dword [ebp - 0x748]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x728]
shl ecx, 2
add ecx, dword [ebp - 0x724]
mov dword [ecx], eax
mov edx, dword [ebp - 0x728]
add edx, 0xffffffa5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9088], xmm0
xor eax, eax
je 0x436f0b
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x436f47
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9088]
movsd qword [ebp - 0x9090], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4370e7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4370e7
mov dword [ebp - 0x750], 0
jmp 0x436fc6
cmp dword [ebp - 0x750], 0xf
jae 0x4370e2
cvtsi2sd xmm0, dword [ebp - 0x750]
movsd xmm1, qword [ebp - 0x9090]
addsd xmm1, xmm0
movsd qword [ebp - 0x9098], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9098]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x437035
mov ecx, dword [ebp - 0x750]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9090]
addsd xmm1, xmm0
movsd qword [ebp - 0x9090], xmm1
jmp 0x436f31
cvtsi2sd xmm0, dword [ebp - 0x750]
movsd xmm1, qword [ebp - 0x9090]
addsd xmm1, xmm0
movsd qword [ebp - 0x90a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x90a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x437092
mov eax, dword [ebp - 0x750]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9090]
addsd xmm1, xmm0
movsd qword [ebp - 0x9090], xmm1
jmp 0x4370ab
mov ecx, 1
test ecx, ecx
je 0x4370a7
jmp 0x437167
jmp 0x4370ce
cvtsi2sd xmm0, dword [ebp - 0x750]
movsd xmm1, qword [ebp - 0x9090]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x754], edx
jmp 0x437171
xor eax, eax
je 0x4370d8
jmp 0x4370e7
jmp 0x436f31
jmp 0x436f31
mov ecx, 2
test ecx, ecx
je 0x437167
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x758], eax
cvtsi2sd xmm0, dword [ebp - 0x758]
mov eax, dword [ebp - 0x758]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9090]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x754], ecx
jmp 0x437171
mov dword [ebp - 0x754], 8
mov edx, dword [ebp - 0x728]
add edx, 0xffffffa5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x90a8], xmm0
xor eax, eax
je 0x43718b
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4371c7
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x90a8]
movsd qword [ebp - 0x90b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x437367
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x437367
mov dword [ebp - 0x75c], 0
jmp 0x437246
cmp dword [ebp - 0x75c], 0xf
jae 0x437362
cvtsi2sd xmm0, dword [ebp - 0x75c]
movsd xmm1, qword [ebp - 0x90b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x90b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x90b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4372b5
mov ecx, dword [ebp - 0x75c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x90b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x90b0], xmm1
jmp 0x4371b1
cvtsi2sd xmm0, dword [ebp - 0x75c]
movsd xmm1, qword [ebp - 0x90b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x90c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x90c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x437312
mov eax, dword [ebp - 0x75c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x90b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x90b0], xmm1
jmp 0x43732b
mov ecx, 1
test ecx, ecx
je 0x437327
jmp 0x4373e7
jmp 0x43734e
cvtsi2sd xmm0, dword [ebp - 0x75c]
movsd xmm1, qword [ebp - 0x90b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x760], edx
jmp 0x4373f1
xor eax, eax
je 0x437358
jmp 0x437367
jmp 0x4371b1
jmp 0x4371b1
mov ecx, 2
test ecx, ecx
je 0x4373e7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x764], eax
cvtsi2sd xmm0, dword [ebp - 0x764]
mov eax, dword [ebp - 0x764]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x90b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x760], ecx
jmp 0x4373f1
mov dword [ebp - 0x760], 8
mov edx, dword [ebp - 0x728]
shl edx, 2
add edx, dword [ebp - 0x724]
mov eax, dword [ebp - 0x754]
add eax, dword [edx]
mov ecx, dword [ebp - 0x728]
shl ecx, 2
add ecx, dword [ebp - 0x724]
mov edx, dword [ebp - 0x760]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x728]
shl ecx, 2
add ecx, dword [ebp - 0x724]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4376ff
xor eax, eax
je 0x437471
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4374ad
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb0]
movsd qword [ebp - 0x90c8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43764d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43764d
mov dword [ebp - 0x768], 0
jmp 0x43752c
cmp dword [ebp - 0x768], 0xf
jae 0x437648
cvtsi2sd xmm0, dword [ebp - 0x768]
movsd xmm1, qword [ebp - 0x90c8]
addsd xmm1, xmm0
movsd qword [ebp - 0x90d0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x90d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43759b
mov ecx, dword [ebp - 0x768]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x90c8]
addsd xmm1, xmm0
movsd qword [ebp - 0x90c8], xmm1
jmp 0x437497
cvtsi2sd xmm0, dword [ebp - 0x768]
movsd xmm1, qword [ebp - 0x90c8]
addsd xmm1, xmm0
movsd qword [ebp - 0x90d8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x90d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4375f8
mov eax, dword [ebp - 0x768]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x90c8]
addsd xmm1, xmm0
movsd qword [ebp - 0x90c8], xmm1
jmp 0x437611
mov ecx, 1
test ecx, ecx
je 0x43760d
jmp 0x4376cd
jmp 0x437634
cvtsi2sd xmm0, dword [ebp - 0x768]
movsd xmm1, qword [ebp - 0x90c8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x76c], edx
jmp 0x4376d7
xor eax, eax
je 0x43763e
jmp 0x43764d
jmp 0x437497
jmp 0x437497
mov ecx, 2
test ecx, ecx
je 0x4376cd
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x770], eax
cvtsi2sd xmm0, dword [ebp - 0x770]
mov eax, dword [ebp - 0x770]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x90c8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x76c], ecx
jmp 0x4376d7
mov dword [ebp - 0x76c], 8
mov edx, dword [ebp - 0x728]
shl edx, 2
add edx, dword [ebp - 0x724]
mov eax, dword [ebp - 0x76c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x728]
shl ecx, 2
add ecx, dword [ebp - 0x724]
mov dword [ecx], eax
jmp 0x43662f
mov edx, dword [ebp - 0x720]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x720]
mov dword [ebp - 0x774], eax
mov ecx, dword [ebp - 0x774]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x778], ecx
mov edx, dword [ebp - 0x778]
mov dword [ebp - 0x71c], edx
cmp dword [ebp - 0x2fc], 0
je 0x437758
cmp dword [ebp - 0x47c], 0
je 0x437758
cmp dword [ebp - 0x5fc], 0
jne 0x43775f
xor al, al
jmp 0x5a9e46
xor eax, eax
mov byte [ebp - 0x11], al
lea ecx, [ebp - 0x11]
call fcn.00425eb0
mov dword [ebp - 0x77c], eax
mov ecx, dword [ebp - 0x77c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x438871
mov eax, dword [ebp - 0x77c]
mov dword [ebp - 0x780], eax
mov dword [ebp - 0x784], 0
jmp 0x4377ab
mov ecx, dword [ebp - 0x784]
add ecx, 1
mov dword [ebp - 0x784], ecx
cmp dword [ebp - 0x784], 1
jae 0x438871
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x437a83
xor eax, eax
je 0x4377f5
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x437831
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec8]
movsd qword [ebp - 0x90e0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4379d1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4379d1
mov dword [ebp - 0x788], 0
jmp 0x4378b0
cmp dword [ebp - 0x788], 0xf
jae 0x4379cc
cvtsi2sd xmm0, dword [ebp - 0x788]
movsd xmm1, qword [ebp - 0x90e0]
addsd xmm1, xmm0
movsd qword [ebp - 0x90e8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x90e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43791f
mov ecx, dword [ebp - 0x788]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x90e0]
addsd xmm1, xmm0
movsd qword [ebp - 0x90e0], xmm1
jmp 0x43781b
cvtsi2sd xmm0, dword [ebp - 0x788]
movsd xmm1, qword [ebp - 0x90e0]
addsd xmm1, xmm0
movsd qword [ebp - 0x90f0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x90f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43797c
mov eax, dword [ebp - 0x788]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x90e0]
addsd xmm1, xmm0
movsd qword [ebp - 0x90e0], xmm1
jmp 0x437995
mov ecx, 1
test ecx, ecx
je 0x437991
jmp 0x437a51
jmp 0x4379b8
cvtsi2sd xmm0, dword [ebp - 0x788]
movsd xmm1, qword [ebp - 0x90e0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x78c], edx
jmp 0x437a5b
xor eax, eax
je 0x4379c2
jmp 0x4379d1
jmp 0x43781b
jmp 0x43781b
mov ecx, 2
test ecx, ecx
je 0x437a51
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x790], eax
cvtsi2sd xmm0, dword [ebp - 0x790]
mov eax, dword [ebp - 0x790]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x90e0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x78c], ecx
jmp 0x437a5b
mov dword [ebp - 0x78c], 8
mov edx, dword [ebp - 0x784]
shl edx, 2
add edx, dword [ebp - 0x780]
mov eax, dword [ebp - 0x78c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x784]
shl ecx, 2
add ecx, dword [ebp - 0x780]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4385a1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x437d93
xor eax, eax
je 0x437b05
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x437b41
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec0]
movsd qword [ebp - 0x90f8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x437ce1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x437ce1
mov dword [ebp - 0x794], 0
jmp 0x437bc0
cmp dword [ebp - 0x794], 0xf
jae 0x437cdc
cvtsi2sd xmm0, dword [ebp - 0x794]
movsd xmm1, qword [ebp - 0x90f8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9100], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9100]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x437c2f
mov ecx, dword [ebp - 0x794]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x90f8]
addsd xmm1, xmm0
movsd qword [ebp - 0x90f8], xmm1
jmp 0x437b2b
cvtsi2sd xmm0, dword [ebp - 0x794]
movsd xmm1, qword [ebp - 0x90f8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9108], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9108]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x437c8c
mov eax, dword [ebp - 0x794]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x90f8]
addsd xmm1, xmm0
movsd qword [ebp - 0x90f8], xmm1
jmp 0x437ca5
mov ecx, 1
test ecx, ecx
je 0x437ca1
jmp 0x437d61
jmp 0x437cc8
cvtsi2sd xmm0, dword [ebp - 0x794]
movsd xmm1, qword [ebp - 0x90f8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x798], edx
jmp 0x437d6b
xor eax, eax
je 0x437cd2
jmp 0x437ce1
jmp 0x437b2b
jmp 0x437b2b
mov ecx, 2
test ecx, ecx
je 0x437d61
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x79c], eax
cvtsi2sd xmm0, dword [ebp - 0x79c]
mov eax, dword [ebp - 0x79c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x90f8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x798], ecx
jmp 0x437d6b
mov dword [ebp - 0x798], 8
mov edx, dword [ebp - 0x784]
shl edx, 2
add edx, dword [ebp - 0x780]
mov eax, dword [ebp - 0x798]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x784]
shl ecx, 2
add ecx, dword [ebp - 0x780]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43805e
xor eax, eax
je 0x437dd0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x437e0c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb8]
movsd qword [ebp - 0x9110], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x437fac
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x437fac
mov dword [ebp - 0x7a0], 0
jmp 0x437e8b
cmp dword [ebp - 0x7a0], 0xf
jae 0x437fa7
cvtsi2sd xmm0, dword [ebp - 0x7a0]
movsd xmm1, qword [ebp - 0x9110]
addsd xmm1, xmm0
movsd qword [ebp - 0x9118], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9118]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x437efa
mov ecx, dword [ebp - 0x7a0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9110]
addsd xmm1, xmm0
movsd qword [ebp - 0x9110], xmm1
jmp 0x437df6
cvtsi2sd xmm0, dword [ebp - 0x7a0]
movsd xmm1, qword [ebp - 0x9110]
addsd xmm1, xmm0
movsd qword [ebp - 0x9120], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9120]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x437f57
mov eax, dword [ebp - 0x7a0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9110]
addsd xmm1, xmm0
movsd qword [ebp - 0x9110], xmm1
jmp 0x437f70
mov ecx, 1
test ecx, ecx
je 0x437f6c
jmp 0x43802c
jmp 0x437f93
cvtsi2sd xmm0, dword [ebp - 0x7a0]
movsd xmm1, qword [ebp - 0x9110]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x7a4], edx
jmp 0x438036
xor eax, eax
je 0x437f9d
jmp 0x437fac
jmp 0x437df6
jmp 0x437df6
mov ecx, 2
test ecx, ecx
je 0x43802c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x7a8], eax
cvtsi2sd xmm0, dword [ebp - 0x7a8]
mov eax, dword [ebp - 0x7a8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9110]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x7a4], ecx
jmp 0x438036
mov dword [ebp - 0x7a4], 8
mov edx, dword [ebp - 0x784]
shl edx, 2
add edx, dword [ebp - 0x780]
mov eax, dword [ebp - 0x7a4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x784]
shl ecx, 2
add ecx, dword [ebp - 0x780]
mov dword [ecx], eax
mov edx, dword [ebp - 0x784]
add edx, 0xffffffa5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9128], xmm0
xor eax, eax
je 0x438078
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4380b4
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9128]
movsd qword [ebp - 0x9130], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x438254
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x438254
mov dword [ebp - 0x7ac], 0
jmp 0x438133
cmp dword [ebp - 0x7ac], 0xf
jae 0x43824f
cvtsi2sd xmm0, dword [ebp - 0x7ac]
movsd xmm1, qword [ebp - 0x9130]
addsd xmm1, xmm0
movsd qword [ebp - 0x9138], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9138]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4381a2
mov ecx, dword [ebp - 0x7ac]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9130]
addsd xmm1, xmm0
movsd qword [ebp - 0x9130], xmm1
jmp 0x43809e
cvtsi2sd xmm0, dword [ebp - 0x7ac]
movsd xmm1, qword [ebp - 0x9130]
addsd xmm1, xmm0
movsd qword [ebp - 0x9140], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9140]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4381ff
mov eax, dword [ebp - 0x7ac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9130]
addsd xmm1, xmm0
movsd qword [ebp - 0x9130], xmm1
jmp 0x438218
mov ecx, 1
test ecx, ecx
je 0x438214
jmp 0x4382d4
jmp 0x43823b
cvtsi2sd xmm0, dword [ebp - 0x7ac]
movsd xmm1, qword [ebp - 0x9130]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x7b0], edx
jmp 0x4382de
xor eax, eax
je 0x438245
jmp 0x438254
jmp 0x43809e
jmp 0x43809e
mov ecx, 2
test ecx, ecx
je 0x4382d4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x7b4], eax
cvtsi2sd xmm0, dword [ebp - 0x7b4]
mov eax, dword [ebp - 0x7b4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9130]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x7b0], ecx
jmp 0x4382de
mov dword [ebp - 0x7b0], 8
mov edx, dword [ebp - 0x784]
add edx, 0xffffffa5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9148], xmm0
xor eax, eax
je 0x4382f8
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x438334
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9148]
movsd qword [ebp - 0x9150], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4384d4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4384d4
mov dword [ebp - 0x7b8], 0
jmp 0x4383b3
cmp dword [ebp - 0x7b8], 0xf
jae 0x4384cf
cvtsi2sd xmm0, dword [ebp - 0x7b8]
movsd xmm1, qword [ebp - 0x9150]
addsd xmm1, xmm0
movsd qword [ebp - 0x9158], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9158]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x438422
mov ecx, dword [ebp - 0x7b8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9150]
addsd xmm1, xmm0
movsd qword [ebp - 0x9150], xmm1
jmp 0x43831e
cvtsi2sd xmm0, dword [ebp - 0x7b8]
movsd xmm1, qword [ebp - 0x9150]
addsd xmm1, xmm0
movsd qword [ebp - 0x9160], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9160]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43847f
mov eax, dword [ebp - 0x7b8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9150]
addsd xmm1, xmm0
movsd qword [ebp - 0x9150], xmm1
jmp 0x438498
mov ecx, 1
test ecx, ecx
je 0x438494
jmp 0x438554
jmp 0x4384bb
cvtsi2sd xmm0, dword [ebp - 0x7b8]
movsd xmm1, qword [ebp - 0x9150]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x7bc], edx
jmp 0x43855e
xor eax, eax
je 0x4384c5
jmp 0x4384d4
jmp 0x43831e
jmp 0x43831e
mov ecx, 2
test ecx, ecx
je 0x438554
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x7c0], eax
cvtsi2sd xmm0, dword [ebp - 0x7c0]
mov eax, dword [ebp - 0x7c0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9150]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x7bc], ecx
jmp 0x43855e
mov dword [ebp - 0x7bc], 8
mov edx, dword [ebp - 0x784]
shl edx, 2
add edx, dword [ebp - 0x780]
mov eax, dword [ebp - 0x7b0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x784]
shl ecx, 2
add ecx, dword [ebp - 0x780]
mov edx, dword [ebp - 0x7bc]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x784]
shl ecx, 2
add ecx, dword [ebp - 0x780]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43886c
xor eax, eax
je 0x4385de
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43861a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb0]
movsd qword [ebp - 0x9168], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4387ba
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4387ba
mov dword [ebp - 0x7c4], 0
jmp 0x438699
cmp dword [ebp - 0x7c4], 0xf
jae 0x4387b5
cvtsi2sd xmm0, dword [ebp - 0x7c4]
movsd xmm1, qword [ebp - 0x9168]
addsd xmm1, xmm0
movsd qword [ebp - 0x9170], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9170]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x438708
mov ecx, dword [ebp - 0x7c4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9168]
addsd xmm1, xmm0
movsd qword [ebp - 0x9168], xmm1
jmp 0x438604
cvtsi2sd xmm0, dword [ebp - 0x7c4]
movsd xmm1, qword [ebp - 0x9168]
addsd xmm1, xmm0
movsd qword [ebp - 0x9178], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9178]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x438765
mov eax, dword [ebp - 0x7c4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9168]
addsd xmm1, xmm0
movsd qword [ebp - 0x9168], xmm1
jmp 0x43877e
mov ecx, 1
test ecx, ecx
je 0x43877a
jmp 0x43883a
jmp 0x4387a1
cvtsi2sd xmm0, dword [ebp - 0x7c4]
movsd xmm1, qword [ebp - 0x9168]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x7c8], edx
jmp 0x438844
xor eax, eax
je 0x4387ab
jmp 0x4387ba
jmp 0x438604
jmp 0x438604
mov ecx, 2
test ecx, ecx
je 0x43883a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x7cc], eax
cvtsi2sd xmm0, dword [ebp - 0x7cc]
mov eax, dword [ebp - 0x7cc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9168]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x7c8], ecx
jmp 0x438844
mov dword [ebp - 0x7c8], 8
mov edx, dword [ebp - 0x784]
shl edx, 2
add edx, dword [ebp - 0x780]
mov eax, dword [ebp - 0x7c8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x784]
shl ecx, 2
add ecx, dword [ebp - 0x780]
mov dword [ecx], eax
jmp 0x43779c
mov edx, dword [ebp - 0x77c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x77c]
mov dword [ebp - 0x7d0], eax
mov ecx, dword [ebp - 0x7d0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x7d4], ecx
mov edx, dword [ebp - 0x7d4]
mov dword [ebp - 0x7d8], edx
xor eax, eax
mov byte [ebp - 0x12], al
lea ecx, [ebp - 0x12]
call fcn.00425e80
mov dword [ebp - 0x7dc], eax
mov ecx, dword [ebp - 0x7dc]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4399bc
mov eax, dword [ebp - 0x7dc]
mov dword [ebp - 0x7e0], eax
mov dword [ebp - 0x7e4], 0
jmp 0x4388f6
mov ecx, dword [ebp - 0x7e4]
add ecx, 1
mov dword [ebp - 0x7e4], ecx
cmp dword [ebp - 0x7e4], 1
jae 0x4399bc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x438bce
xor eax, eax
je 0x438940
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43897c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec0]
movsd qword [ebp - 0x9180], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x438b1c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x438b1c
mov dword [ebp - 0x7e8], 0
jmp 0x4389fb
cmp dword [ebp - 0x7e8], 0xf
jae 0x438b17
cvtsi2sd xmm0, dword [ebp - 0x7e8]
movsd xmm1, qword [ebp - 0x9180]
addsd xmm1, xmm0
movsd qword [ebp - 0x9188], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9188]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x438a6a
mov ecx, dword [ebp - 0x7e8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9180]
addsd xmm1, xmm0
movsd qword [ebp - 0x9180], xmm1
jmp 0x438966
cvtsi2sd xmm0, dword [ebp - 0x7e8]
movsd xmm1, qword [ebp - 0x9180]
addsd xmm1, xmm0
movsd qword [ebp - 0x9190], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9190]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x438ac7
mov eax, dword [ebp - 0x7e8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9180]
addsd xmm1, xmm0
movsd qword [ebp - 0x9180], xmm1
jmp 0x438ae0
mov ecx, 1
test ecx, ecx
je 0x438adc
jmp 0x438b9c
jmp 0x438b03
cvtsi2sd xmm0, dword [ebp - 0x7e8]
movsd xmm1, qword [ebp - 0x9180]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x7ec], edx
jmp 0x438ba6
xor eax, eax
je 0x438b0d
jmp 0x438b1c
jmp 0x438966
jmp 0x438966
mov ecx, 2
test ecx, ecx
je 0x438b9c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x7f0], eax
cvtsi2sd xmm0, dword [ebp - 0x7f0]
mov eax, dword [ebp - 0x7f0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9180]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x7ec], ecx
jmp 0x438ba6
mov dword [ebp - 0x7ec], 8
mov edx, dword [ebp - 0x7e4]
shl edx, 2
add edx, dword [ebp - 0x7e0]
mov eax, dword [ebp - 0x7ec]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x7e4]
shl ecx, 2
add ecx, dword [ebp - 0x7e0]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4396ec
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x438ede
xor eax, eax
je 0x438c50
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x438c8c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb8]
movsd qword [ebp - 0x9198], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x438e2c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x438e2c
mov dword [ebp - 0x7f4], 0
jmp 0x438d0b
cmp dword [ebp - 0x7f4], 0xf
jae 0x438e27
cvtsi2sd xmm0, dword [ebp - 0x7f4]
movsd xmm1, qword [ebp - 0x9198]
addsd xmm1, xmm0
movsd qword [ebp - 0x91a0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x91a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x438d7a
mov ecx, dword [ebp - 0x7f4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9198]
addsd xmm1, xmm0
movsd qword [ebp - 0x9198], xmm1
jmp 0x438c76
cvtsi2sd xmm0, dword [ebp - 0x7f4]
movsd xmm1, qword [ebp - 0x9198]
addsd xmm1, xmm0
movsd qword [ebp - 0x91a8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x91a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x438dd7
mov eax, dword [ebp - 0x7f4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9198]
addsd xmm1, xmm0
movsd qword [ebp - 0x9198], xmm1
jmp 0x438df0
mov ecx, 1
test ecx, ecx
je 0x438dec
jmp 0x438eac
jmp 0x438e13
cvtsi2sd xmm0, dword [ebp - 0x7f4]
movsd xmm1, qword [ebp - 0x9198]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x7f8], edx
jmp 0x438eb6
xor eax, eax
je 0x438e1d
jmp 0x438e2c
jmp 0x438c76
jmp 0x438c76
mov ecx, 2
test ecx, ecx
je 0x438eac
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x7fc], eax
cvtsi2sd xmm0, dword [ebp - 0x7fc]
mov eax, dword [ebp - 0x7fc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9198]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x7f8], ecx
jmp 0x438eb6
mov dword [ebp - 0x7f8], 8
mov edx, dword [ebp - 0x7e4]
shl edx, 2
add edx, dword [ebp - 0x7e0]
mov eax, dword [ebp - 0x7f8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x7e4]
shl ecx, 2
add ecx, dword [ebp - 0x7e0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4391a9
xor eax, eax
je 0x438f1b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x438f57
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb0]
movsd qword [ebp - 0x91b0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4390f7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4390f7
mov dword [ebp - 0x800], 0
jmp 0x438fd6
cmp dword [ebp - 0x800], 0xf
jae 0x4390f2
cvtsi2sd xmm0, dword [ebp - 0x800]
movsd xmm1, qword [ebp - 0x91b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x91b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x91b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x439045
mov ecx, dword [ebp - 0x800]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x91b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x91b0], xmm1
jmp 0x438f41
cvtsi2sd xmm0, dword [ebp - 0x800]
movsd xmm1, qword [ebp - 0x91b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x91c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x91c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4390a2
mov eax, dword [ebp - 0x800]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x91b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x91b0], xmm1
jmp 0x4390bb
mov ecx, 1
test ecx, ecx
je 0x4390b7
jmp 0x439177
jmp 0x4390de
cvtsi2sd xmm0, dword [ebp - 0x800]
movsd xmm1, qword [ebp - 0x91b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x804], edx
jmp 0x439181
xor eax, eax
je 0x4390e8
jmp 0x4390f7
jmp 0x438f41
jmp 0x438f41
mov ecx, 2
test ecx, ecx
je 0x439177
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x808], eax
cvtsi2sd xmm0, dword [ebp - 0x808]
mov eax, dword [ebp - 0x808]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x91b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x804], ecx
jmp 0x439181
mov dword [ebp - 0x804], 8
mov edx, dword [ebp - 0x7e4]
shl edx, 2
add edx, dword [ebp - 0x7e0]
mov eax, dword [ebp - 0x804]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x7e4]
shl ecx, 2
add ecx, dword [ebp - 0x7e0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x7e4]
add edx, 0xffffffa6
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x91c8], xmm0
xor eax, eax
je 0x4391c3
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4391ff
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x91c8]
movsd qword [ebp - 0x91d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43939f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43939f
mov dword [ebp - 0x80c], 0
jmp 0x43927e
cmp dword [ebp - 0x80c], 0xf
jae 0x43939a
cvtsi2sd xmm0, dword [ebp - 0x80c]
movsd xmm1, qword [ebp - 0x91d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x91d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x91d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4392ed
mov ecx, dword [ebp - 0x80c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x91d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x91d0], xmm1
jmp 0x4391e9
cvtsi2sd xmm0, dword [ebp - 0x80c]
movsd xmm1, qword [ebp - 0x91d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x91e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x91e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43934a
mov eax, dword [ebp - 0x80c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x91d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x91d0], xmm1
jmp 0x439363
mov ecx, 1
test ecx, ecx
je 0x43935f
jmp 0x43941f
jmp 0x439386
cvtsi2sd xmm0, dword [ebp - 0x80c]
movsd xmm1, qword [ebp - 0x91d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x810], edx
jmp 0x439429
xor eax, eax
je 0x439390
jmp 0x43939f
jmp 0x4391e9
jmp 0x4391e9
mov ecx, 2
test ecx, ecx
je 0x43941f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x814], eax
cvtsi2sd xmm0, dword [ebp - 0x814]
mov eax, dword [ebp - 0x814]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x91d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x810], ecx
jmp 0x439429
mov dword [ebp - 0x810], 8
mov edx, dword [ebp - 0x7e4]
add edx, 0xffffffa6
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x91e8], xmm0
xor eax, eax
je 0x439443
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43947f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x91e8]
movsd qword [ebp - 0x91f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43961f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43961f
mov dword [ebp - 0x818], 0
jmp 0x4394fe
cmp dword [ebp - 0x818], 0xf
jae 0x43961a
cvtsi2sd xmm0, dword [ebp - 0x818]
movsd xmm1, qword [ebp - 0x91f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x91f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x91f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43956d
mov ecx, dword [ebp - 0x818]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x91f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x91f0], xmm1
jmp 0x439469
cvtsi2sd xmm0, dword [ebp - 0x818]
movsd xmm1, qword [ebp - 0x91f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9200], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9200]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4395ca
mov eax, dword [ebp - 0x818]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x91f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x91f0], xmm1
jmp 0x4395e3
mov ecx, 1
test ecx, ecx
je 0x4395df
jmp 0x43969f
jmp 0x439606
cvtsi2sd xmm0, dword [ebp - 0x818]
movsd xmm1, qword [ebp - 0x91f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x81c], edx
jmp 0x4396a9
xor eax, eax
je 0x439610
jmp 0x43961f
jmp 0x439469
jmp 0x439469
mov ecx, 2
test ecx, ecx
je 0x43969f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x820], eax
cvtsi2sd xmm0, dword [ebp - 0x820]
mov eax, dword [ebp - 0x820]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x91f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x81c], ecx
jmp 0x4396a9
mov dword [ebp - 0x81c], 8
mov edx, dword [ebp - 0x7e4]
shl edx, 2
add edx, dword [ebp - 0x7e0]
mov eax, dword [ebp - 0x810]
add eax, dword [edx]
mov ecx, dword [ebp - 0x7e4]
shl ecx, 2
add ecx, dword [ebp - 0x7e0]
mov edx, dword [ebp - 0x81c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x7e4]
shl ecx, 2
add ecx, dword [ebp - 0x7e0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4399b7
xor eax, eax
je 0x439729
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x439765
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea8]
movsd qword [ebp - 0x9208], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x439905
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x439905
mov dword [ebp - 0x824], 0
jmp 0x4397e4
cmp dword [ebp - 0x824], 0xf
jae 0x439900
cvtsi2sd xmm0, dword [ebp - 0x824]
movsd xmm1, qword [ebp - 0x9208]
addsd xmm1, xmm0
movsd qword [ebp - 0x9210], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9210]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x439853
mov ecx, dword [ebp - 0x824]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9208]
addsd xmm1, xmm0
movsd qword [ebp - 0x9208], xmm1
jmp 0x43974f
cvtsi2sd xmm0, dword [ebp - 0x824]
movsd xmm1, qword [ebp - 0x9208]
addsd xmm1, xmm0
movsd qword [ebp - 0x9218], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9218]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4398b0
mov eax, dword [ebp - 0x824]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9208]
addsd xmm1, xmm0
movsd qword [ebp - 0x9208], xmm1
jmp 0x4398c9
mov ecx, 1
test ecx, ecx
je 0x4398c5
jmp 0x439985
jmp 0x4398ec
cvtsi2sd xmm0, dword [ebp - 0x824]
movsd xmm1, qword [ebp - 0x9208]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x828], edx
jmp 0x43998f
xor eax, eax
je 0x4398f6
jmp 0x439905
jmp 0x43974f
jmp 0x43974f
mov ecx, 2
test ecx, ecx
je 0x439985
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x82c], eax
cvtsi2sd xmm0, dword [ebp - 0x82c]
mov eax, dword [ebp - 0x82c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9208]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x828], ecx
jmp 0x43998f
mov dword [ebp - 0x828], 8
mov edx, dword [ebp - 0x7e4]
shl edx, 2
add edx, dword [ebp - 0x7e0]
mov eax, dword [ebp - 0x828]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x7e4]
shl ecx, 2
add ecx, dword [ebp - 0x7e0]
mov dword [ecx], eax
jmp 0x4388e7
mov edx, dword [ebp - 0x7dc]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x7dc]
mov dword [ebp - 0x830], eax
mov ecx, dword [ebp - 0x830]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x834], ecx
mov edx, dword [ebp - 0x834]
mov dword [ebp - 0x838], edx
xor eax, eax
mov byte [ebp - 0x13], al
lea ecx, [ebp - 0x13]
call fcn.00425e50
mov dword [ebp - 0x83c], eax
mov ecx, dword [ebp - 0x83c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x43ab07
mov eax, dword [ebp - 0x83c]
mov dword [ebp - 0x840], eax
mov dword [ebp - 0x844], 0
jmp 0x439a41
mov ecx, dword [ebp - 0x844]
add ecx, 1
mov dword [ebp - 0x844], ecx
cmp dword [ebp - 0x844], 1
jae 0x43ab07
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x439d19
xor eax, eax
je 0x439a8b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x439ac7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ec0]
movsd qword [ebp - 0x9220], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x439c67
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x439c67
mov dword [ebp - 0x848], 0
jmp 0x439b46
cmp dword [ebp - 0x848], 0xf
jae 0x439c62
cvtsi2sd xmm0, dword [ebp - 0x848]
movsd xmm1, qword [ebp - 0x9220]
addsd xmm1, xmm0
movsd qword [ebp - 0x9228], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9228]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x439bb5
mov ecx, dword [ebp - 0x848]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9220]
addsd xmm1, xmm0
movsd qword [ebp - 0x9220], xmm1
jmp 0x439ab1
cvtsi2sd xmm0, dword [ebp - 0x848]
movsd xmm1, qword [ebp - 0x9220]
addsd xmm1, xmm0
movsd qword [ebp - 0x9230], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9230]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x439c12
mov eax, dword [ebp - 0x848]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9220]
addsd xmm1, xmm0
movsd qword [ebp - 0x9220], xmm1
jmp 0x439c2b
mov ecx, 1
test ecx, ecx
je 0x439c27
jmp 0x439ce7
jmp 0x439c4e
cvtsi2sd xmm0, dword [ebp - 0x848]
movsd xmm1, qword [ebp - 0x9220]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x84c], edx
jmp 0x439cf1
xor eax, eax
je 0x439c58
jmp 0x439c67
jmp 0x439ab1
jmp 0x439ab1
mov ecx, 2
test ecx, ecx
je 0x439ce7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x850], eax
cvtsi2sd xmm0, dword [ebp - 0x850]
mov eax, dword [ebp - 0x850]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9220]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x84c], ecx
jmp 0x439cf1
mov dword [ebp - 0x84c], 8
mov edx, dword [ebp - 0x844]
shl edx, 2
add edx, dword [ebp - 0x840]
mov eax, dword [ebp - 0x84c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x844]
shl ecx, 2
add ecx, dword [ebp - 0x840]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43a837
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43a029
xor eax, eax
je 0x439d9b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x439dd7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb8]
movsd qword [ebp - 0x9238], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x439f77
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x439f77
mov dword [ebp - 0x854], 0
jmp 0x439e56
cmp dword [ebp - 0x854], 0xf
jae 0x439f72
cvtsi2sd xmm0, dword [ebp - 0x854]
movsd xmm1, qword [ebp - 0x9238]
addsd xmm1, xmm0
movsd qword [ebp - 0x9240], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9240]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x439ec5
mov ecx, dword [ebp - 0x854]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9238]
addsd xmm1, xmm0
movsd qword [ebp - 0x9238], xmm1
jmp 0x439dc1
cvtsi2sd xmm0, dword [ebp - 0x854]
movsd xmm1, qword [ebp - 0x9238]
addsd xmm1, xmm0
movsd qword [ebp - 0x9248], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9248]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x439f22
mov eax, dword [ebp - 0x854]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9238]
addsd xmm1, xmm0
movsd qword [ebp - 0x9238], xmm1
jmp 0x439f3b
mov ecx, 1
test ecx, ecx
je 0x439f37
jmp 0x439ff7
jmp 0x439f5e
cvtsi2sd xmm0, dword [ebp - 0x854]
movsd xmm1, qword [ebp - 0x9238]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x858], edx
jmp 0x43a001
xor eax, eax
je 0x439f68
jmp 0x439f77
jmp 0x439dc1
jmp 0x439dc1
mov ecx, 2
test ecx, ecx
je 0x439ff7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x85c], eax
cvtsi2sd xmm0, dword [ebp - 0x85c]
mov eax, dword [ebp - 0x85c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9238]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x858], ecx
jmp 0x43a001
mov dword [ebp - 0x858], 8
mov edx, dword [ebp - 0x844]
shl edx, 2
add edx, dword [ebp - 0x840]
mov eax, dword [ebp - 0x858]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x844]
shl ecx, 2
add ecx, dword [ebp - 0x840]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43a2f4
xor eax, eax
je 0x43a066
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43a0a2
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb0]
movsd qword [ebp - 0x9250], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43a242
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43a242
mov dword [ebp - 0x860], 0
jmp 0x43a121
cmp dword [ebp - 0x860], 0xf
jae 0x43a23d
cvtsi2sd xmm0, dword [ebp - 0x860]
movsd xmm1, qword [ebp - 0x9250]
addsd xmm1, xmm0
movsd qword [ebp - 0x9258], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9258]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43a190
mov ecx, dword [ebp - 0x860]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9250]
addsd xmm1, xmm0
movsd qword [ebp - 0x9250], xmm1
jmp 0x43a08c
cvtsi2sd xmm0, dword [ebp - 0x860]
movsd xmm1, qword [ebp - 0x9250]
addsd xmm1, xmm0
movsd qword [ebp - 0x9260], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9260]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43a1ed
mov eax, dword [ebp - 0x860]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9250]
addsd xmm1, xmm0
movsd qword [ebp - 0x9250], xmm1
jmp 0x43a206
mov ecx, 1
test ecx, ecx
je 0x43a202
jmp 0x43a2c2
jmp 0x43a229
cvtsi2sd xmm0, dword [ebp - 0x860]
movsd xmm1, qword [ebp - 0x9250]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x864], edx
jmp 0x43a2cc
xor eax, eax
je 0x43a233
jmp 0x43a242
jmp 0x43a08c
jmp 0x43a08c
mov ecx, 2
test ecx, ecx
je 0x43a2c2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x868], eax
cvtsi2sd xmm0, dword [ebp - 0x868]
mov eax, dword [ebp - 0x868]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9250]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x864], ecx
jmp 0x43a2cc
mov dword [ebp - 0x864], 8
mov edx, dword [ebp - 0x844]
shl edx, 2
add edx, dword [ebp - 0x840]
mov eax, dword [ebp - 0x864]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x844]
shl ecx, 2
add ecx, dword [ebp - 0x840]
mov dword [ecx], eax
mov edx, dword [ebp - 0x844]
add edx, 0xffffffa6
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9268], xmm0
xor eax, eax
je 0x43a30e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43a34a
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9268]
movsd qword [ebp - 0x9270], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43a4ea
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43a4ea
mov dword [ebp - 0x86c], 0
jmp 0x43a3c9
cmp dword [ebp - 0x86c], 0xf
jae 0x43a4e5
cvtsi2sd xmm0, dword [ebp - 0x86c]
movsd xmm1, qword [ebp - 0x9270]
addsd xmm1, xmm0
movsd qword [ebp - 0x9278], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9278]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43a438
mov ecx, dword [ebp - 0x86c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9270]
addsd xmm1, xmm0
movsd qword [ebp - 0x9270], xmm1
jmp 0x43a334
cvtsi2sd xmm0, dword [ebp - 0x86c]
movsd xmm1, qword [ebp - 0x9270]
addsd xmm1, xmm0
movsd qword [ebp - 0x9280], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9280]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43a495
mov eax, dword [ebp - 0x86c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9270]
addsd xmm1, xmm0
movsd qword [ebp - 0x9270], xmm1
jmp 0x43a4ae
mov ecx, 1
test ecx, ecx
je 0x43a4aa
jmp 0x43a56a
jmp 0x43a4d1
cvtsi2sd xmm0, dword [ebp - 0x86c]
movsd xmm1, qword [ebp - 0x9270]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x870], edx
jmp 0x43a574
xor eax, eax
je 0x43a4db
jmp 0x43a4ea
jmp 0x43a334
jmp 0x43a334
mov ecx, 2
test ecx, ecx
je 0x43a56a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x874], eax
cvtsi2sd xmm0, dword [ebp - 0x874]
mov eax, dword [ebp - 0x874]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9270]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x870], ecx
jmp 0x43a574
mov dword [ebp - 0x870], 8
mov edx, dword [ebp - 0x844]
add edx, 0xffffffa6
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9288], xmm0
xor eax, eax
je 0x43a58e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43a5ca
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9288]
movsd qword [ebp - 0x9290], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43a76a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43a76a
mov dword [ebp - 0x878], 0
jmp 0x43a649
cmp dword [ebp - 0x878], 0xf
jae 0x43a765
cvtsi2sd xmm0, dword [ebp - 0x878]
movsd xmm1, qword [ebp - 0x9290]
addsd xmm1, xmm0
movsd qword [ebp - 0x9298], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9298]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43a6b8
mov ecx, dword [ebp - 0x878]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9290]
addsd xmm1, xmm0
movsd qword [ebp - 0x9290], xmm1
jmp 0x43a5b4
cvtsi2sd xmm0, dword [ebp - 0x878]
movsd xmm1, qword [ebp - 0x9290]
addsd xmm1, xmm0
movsd qword [ebp - 0x92a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x92a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43a715
mov eax, dword [ebp - 0x878]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9290]
addsd xmm1, xmm0
movsd qword [ebp - 0x9290], xmm1
jmp 0x43a72e
mov ecx, 1
test ecx, ecx
je 0x43a72a
jmp 0x43a7ea
jmp 0x43a751
cvtsi2sd xmm0, dword [ebp - 0x878]
movsd xmm1, qword [ebp - 0x9290]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x87c], edx
jmp 0x43a7f4
xor eax, eax
je 0x43a75b
jmp 0x43a76a
jmp 0x43a5b4
jmp 0x43a5b4
mov ecx, 2
test ecx, ecx
je 0x43a7ea
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x880], eax
cvtsi2sd xmm0, dword [ebp - 0x880]
mov eax, dword [ebp - 0x880]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9290]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x87c], ecx
jmp 0x43a7f4
mov dword [ebp - 0x87c], 8
mov edx, dword [ebp - 0x844]
shl edx, 2
add edx, dword [ebp - 0x840]
mov eax, dword [ebp - 0x870]
add eax, dword [edx]
mov ecx, dword [ebp - 0x844]
shl ecx, 2
add ecx, dword [ebp - 0x840]
mov edx, dword [ebp - 0x87c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x844]
shl ecx, 2
add ecx, dword [ebp - 0x840]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43ab02
xor eax, eax
je 0x43a874
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43a8b0
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea8]
movsd qword [ebp - 0x92a8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43aa50
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43aa50
mov dword [ebp - 0x884], 0
jmp 0x43a92f
cmp dword [ebp - 0x884], 0xf
jae 0x43aa4b
cvtsi2sd xmm0, dword [ebp - 0x884]
movsd xmm1, qword [ebp - 0x92a8]
addsd xmm1, xmm0
movsd qword [ebp - 0x92b0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x92b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43a99e
mov ecx, dword [ebp - 0x884]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x92a8]
addsd xmm1, xmm0
movsd qword [ebp - 0x92a8], xmm1
jmp 0x43a89a
cvtsi2sd xmm0, dword [ebp - 0x884]
movsd xmm1, qword [ebp - 0x92a8]
addsd xmm1, xmm0
movsd qword [ebp - 0x92b8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x92b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43a9fb
mov eax, dword [ebp - 0x884]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x92a8]
addsd xmm1, xmm0
movsd qword [ebp - 0x92a8], xmm1
jmp 0x43aa14
mov ecx, 1
test ecx, ecx
je 0x43aa10
jmp 0x43aad0
jmp 0x43aa37
cvtsi2sd xmm0, dword [ebp - 0x884]
movsd xmm1, qword [ebp - 0x92a8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x888], edx
jmp 0x43aada
xor eax, eax
je 0x43aa41
jmp 0x43aa50
jmp 0x43a89a
jmp 0x43a89a
mov ecx, 2
test ecx, ecx
je 0x43aad0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x88c], eax
cvtsi2sd xmm0, dword [ebp - 0x88c]
mov eax, dword [ebp - 0x88c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x92a8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x888], ecx
jmp 0x43aada
mov dword [ebp - 0x888], 8
mov edx, dword [ebp - 0x844]
shl edx, 2
add edx, dword [ebp - 0x840]
mov eax, dword [ebp - 0x888]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x844]
shl ecx, 2
add ecx, dword [ebp - 0x840]
mov dword [ecx], eax
jmp 0x439a32
mov edx, dword [ebp - 0x83c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x83c]
mov dword [ebp - 0x890], eax
mov ecx, dword [ebp - 0x890]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x894], ecx
mov edx, dword [ebp - 0x894]
mov dword [ebp - 0x898], edx
mov eax, dword [ebp - 0x838]
mov dword [ebp - 0x7d8], eax
cmp dword [ebp - 0x7d8], 0
je 0x43bca4
xor ecx, ecx
mov byte [ebp - 0x14], cl
lea ecx, [ebp - 0x14]
call fcn.00425e20
mov dword [ebp - 0x89c], eax
mov edx, dword [ebp - 0x89c]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x43bc6b
mov ecx, dword [ebp - 0x89c]
mov dword [ebp - 0x8a0], ecx
mov dword [ebp - 0x8a4], 0
jmp 0x43aba5
mov edx, dword [ebp - 0x8a4]
add edx, 1
mov dword [ebp - 0x8a4], edx
cmp dword [ebp - 0x8a4], 1
jae 0x43bc6b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43ae7d
xor eax, eax
je 0x43abef
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x43ac2b
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736eb8]
movsd qword [ebp - 0x92c0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43adcb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43adcb
mov dword [ebp - 0x8a8], 0
jmp 0x43acaa
cmp dword [ebp - 0x8a8], 0xf
jae 0x43adc6
cvtsi2sd xmm0, dword [ebp - 0x8a8]
movsd xmm1, qword [ebp - 0x92c0]
addsd xmm1, xmm0
movsd qword [ebp - 0x92c8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x92c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43ad19
mov ecx, dword [ebp - 0x8a8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x92c0]
addsd xmm1, xmm0
movsd qword [ebp - 0x92c0], xmm1
jmp 0x43ac15
cvtsi2sd xmm0, dword [ebp - 0x8a8]
movsd xmm1, qword [ebp - 0x92c0]
addsd xmm1, xmm0
movsd qword [ebp - 0x92d0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x92d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43ad76
mov eax, dword [ebp - 0x8a8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x92c0]
addsd xmm1, xmm0
movsd qword [ebp - 0x92c0], xmm1
jmp 0x43ad8f
mov ecx, 1
test ecx, ecx
je 0x43ad8b
jmp 0x43ae4b
jmp 0x43adb2
cvtsi2sd xmm0, dword [ebp - 0x8a8]
movsd xmm1, qword [ebp - 0x92c0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x8ac], edx
jmp 0x43ae55
xor eax, eax
je 0x43adbc
jmp 0x43adcb
jmp 0x43ac15
jmp 0x43ac15
mov ecx, 2
test ecx, ecx
je 0x43ae4b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x8b0], eax
cvtsi2sd xmm0, dword [ebp - 0x8b0]
mov eax, dword [ebp - 0x8b0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x92c0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x8ac], ecx
jmp 0x43ae55
mov dword [ebp - 0x8ac], 8
mov edx, dword [ebp - 0x8a4]
shl edx, 2
add edx, dword [ebp - 0x8a0]
mov eax, dword [ebp - 0x8ac]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x8a4]
shl ecx, 2
add ecx, dword [ebp - 0x8a0]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43b99b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43b18d
xor eax, eax
je 0x43aeff
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43af3b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb0]
movsd qword [ebp - 0x92d8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43b0db
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43b0db
mov dword [ebp - 0x8b4], 0
jmp 0x43afba
cmp dword [ebp - 0x8b4], 0xf
jae 0x43b0d6
cvtsi2sd xmm0, dword [ebp - 0x8b4]
movsd xmm1, qword [ebp - 0x92d8]
addsd xmm1, xmm0
movsd qword [ebp - 0x92e0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x92e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43b029
mov ecx, dword [ebp - 0x8b4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x92d8]
addsd xmm1, xmm0
movsd qword [ebp - 0x92d8], xmm1
jmp 0x43af25
cvtsi2sd xmm0, dword [ebp - 0x8b4]
movsd xmm1, qword [ebp - 0x92d8]
addsd xmm1, xmm0
movsd qword [ebp - 0x92e8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x92e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43b086
mov eax, dword [ebp - 0x8b4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x92d8]
addsd xmm1, xmm0
movsd qword [ebp - 0x92d8], xmm1
jmp 0x43b09f
mov ecx, 1
test ecx, ecx
je 0x43b09b
jmp 0x43b15b
jmp 0x43b0c2
cvtsi2sd xmm0, dword [ebp - 0x8b4]
movsd xmm1, qword [ebp - 0x92d8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x8b8], edx
jmp 0x43b165
xor eax, eax
je 0x43b0cc
jmp 0x43b0db
jmp 0x43af25
jmp 0x43af25
mov ecx, 2
test ecx, ecx
je 0x43b15b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x8bc], eax
cvtsi2sd xmm0, dword [ebp - 0x8bc]
mov eax, dword [ebp - 0x8bc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x92d8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x8b8], ecx
jmp 0x43b165
mov dword [ebp - 0x8b8], 8
mov edx, dword [ebp - 0x8a4]
shl edx, 2
add edx, dword [ebp - 0x8a0]
mov eax, dword [ebp - 0x8b8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x8a4]
shl ecx, 2
add ecx, dword [ebp - 0x8a0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43b458
xor eax, eax
je 0x43b1ca
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43b206
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea8]
movsd qword [ebp - 0x92f0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43b3a6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43b3a6
mov dword [ebp - 0x8c0], 0
jmp 0x43b285
cmp dword [ebp - 0x8c0], 0xf
jae 0x43b3a1
cvtsi2sd xmm0, dword [ebp - 0x8c0]
movsd xmm1, qword [ebp - 0x92f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x92f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x92f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43b2f4
mov ecx, dword [ebp - 0x8c0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x92f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x92f0], xmm1
jmp 0x43b1f0
cvtsi2sd xmm0, dword [ebp - 0x8c0]
movsd xmm1, qword [ebp - 0x92f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9300], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9300]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43b351
mov eax, dword [ebp - 0x8c0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x92f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x92f0], xmm1
jmp 0x43b36a
mov ecx, 1
test ecx, ecx
je 0x43b366
jmp 0x43b426
jmp 0x43b38d
cvtsi2sd xmm0, dword [ebp - 0x8c0]
movsd xmm1, qword [ebp - 0x92f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x8c4], edx
jmp 0x43b430
xor eax, eax
je 0x43b397
jmp 0x43b3a6
jmp 0x43b1f0
jmp 0x43b1f0
mov ecx, 2
test ecx, ecx
je 0x43b426
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x8c8], eax
cvtsi2sd xmm0, dword [ebp - 0x8c8]
mov eax, dword [ebp - 0x8c8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x92f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x8c4], ecx
jmp 0x43b430
mov dword [ebp - 0x8c4], 8
mov edx, dword [ebp - 0x8a4]
shl edx, 2
add edx, dword [ebp - 0x8a0]
mov eax, dword [ebp - 0x8c4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x8a4]
shl ecx, 2
add ecx, dword [ebp - 0x8a0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x8a4]
add edx, 0xffffffa7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9308], xmm0
xor eax, eax
je 0x43b472
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43b4ae
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9308]
movsd qword [ebp - 0x9310], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43b64e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43b64e
mov dword [ebp - 0x8cc], 0
jmp 0x43b52d
cmp dword [ebp - 0x8cc], 0xf
jae 0x43b649
cvtsi2sd xmm0, dword [ebp - 0x8cc]
movsd xmm1, qword [ebp - 0x9310]
addsd xmm1, xmm0
movsd qword [ebp - 0x9318], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9318]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43b59c
mov ecx, dword [ebp - 0x8cc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9310]
addsd xmm1, xmm0
movsd qword [ebp - 0x9310], xmm1
jmp 0x43b498
cvtsi2sd xmm0, dword [ebp - 0x8cc]
movsd xmm1, qword [ebp - 0x9310]
addsd xmm1, xmm0
movsd qword [ebp - 0x9320], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9320]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43b5f9
mov eax, dword [ebp - 0x8cc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9310]
addsd xmm1, xmm0
movsd qword [ebp - 0x9310], xmm1
jmp 0x43b612
mov ecx, 1
test ecx, ecx
je 0x43b60e
jmp 0x43b6ce
jmp 0x43b635
cvtsi2sd xmm0, dword [ebp - 0x8cc]
movsd xmm1, qword [ebp - 0x9310]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x8d0], edx
jmp 0x43b6d8
xor eax, eax
je 0x43b63f
jmp 0x43b64e
jmp 0x43b498
jmp 0x43b498
mov ecx, 2
test ecx, ecx
je 0x43b6ce
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x8d4], eax
cvtsi2sd xmm0, dword [ebp - 0x8d4]
mov eax, dword [ebp - 0x8d4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9310]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x8d0], ecx
jmp 0x43b6d8
mov dword [ebp - 0x8d0], 8
mov edx, dword [ebp - 0x8a4]
add edx, 0xffffffa7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9328], xmm0
xor eax, eax
je 0x43b6f2
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43b72e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9328]
movsd qword [ebp - 0x9330], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43b8ce
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43b8ce
mov dword [ebp - 0x8d8], 0
jmp 0x43b7ad
cmp dword [ebp - 0x8d8], 0xf
jae 0x43b8c9
cvtsi2sd xmm0, dword [ebp - 0x8d8]
movsd xmm1, qword [ebp - 0x9330]
addsd xmm1, xmm0
movsd qword [ebp - 0x9338], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9338]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43b81c
mov ecx, dword [ebp - 0x8d8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9330]
addsd xmm1, xmm0
movsd qword [ebp - 0x9330], xmm1
jmp 0x43b718
cvtsi2sd xmm0, dword [ebp - 0x8d8]
movsd xmm1, qword [ebp - 0x9330]
addsd xmm1, xmm0
movsd qword [ebp - 0x9340], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9340]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43b879
mov eax, dword [ebp - 0x8d8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9330]
addsd xmm1, xmm0
movsd qword [ebp - 0x9330], xmm1
jmp 0x43b892
mov ecx, 1
test ecx, ecx
je 0x43b88e
jmp 0x43b94e
jmp 0x43b8b5
cvtsi2sd xmm0, dword [ebp - 0x8d8]
movsd xmm1, qword [ebp - 0x9330]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x8dc], edx
jmp 0x43b958
xor eax, eax
je 0x43b8bf
jmp 0x43b8ce
jmp 0x43b718
jmp 0x43b718
mov ecx, 2
test ecx, ecx
je 0x43b94e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x8e0], eax
cvtsi2sd xmm0, dword [ebp - 0x8e0]
mov eax, dword [ebp - 0x8e0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9330]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x8dc], ecx
jmp 0x43b958
mov dword [ebp - 0x8dc], 8
mov edx, dword [ebp - 0x8a4]
shl edx, 2
add edx, dword [ebp - 0x8a0]
mov eax, dword [ebp - 0x8d0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x8a4]
shl ecx, 2
add ecx, dword [ebp - 0x8a0]
mov edx, dword [ebp - 0x8dc]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x8a4]
shl ecx, 2
add ecx, dword [ebp - 0x8a0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43bc66
xor eax, eax
je 0x43b9d8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43ba14
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea0]
movsd qword [ebp - 0x9348], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43bbb4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43bbb4
mov dword [ebp - 0x8e4], 0
jmp 0x43ba93
cmp dword [ebp - 0x8e4], 0xf
jae 0x43bbaf
cvtsi2sd xmm0, dword [ebp - 0x8e4]
movsd xmm1, qword [ebp - 0x9348]
addsd xmm1, xmm0
movsd qword [ebp - 0x9350], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9350]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43bb02
mov ecx, dword [ebp - 0x8e4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9348]
addsd xmm1, xmm0
movsd qword [ebp - 0x9348], xmm1
jmp 0x43b9fe
cvtsi2sd xmm0, dword [ebp - 0x8e4]
movsd xmm1, qword [ebp - 0x9348]
addsd xmm1, xmm0
movsd qword [ebp - 0x9358], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9358]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43bb5f
mov eax, dword [ebp - 0x8e4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9348]
addsd xmm1, xmm0
movsd qword [ebp - 0x9348], xmm1
jmp 0x43bb78
mov ecx, 1
test ecx, ecx
je 0x43bb74
jmp 0x43bc34
jmp 0x43bb9b
cvtsi2sd xmm0, dword [ebp - 0x8e4]
movsd xmm1, qword [ebp - 0x9348]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x8e8], edx
jmp 0x43bc3e
xor eax, eax
je 0x43bba5
jmp 0x43bbb4
jmp 0x43b9fe
jmp 0x43b9fe
mov ecx, 2
test ecx, ecx
je 0x43bc34
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x8ec], eax
cvtsi2sd xmm0, dword [ebp - 0x8ec]
mov eax, dword [ebp - 0x8ec]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9348]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x8e8], ecx
jmp 0x43bc3e
mov dword [ebp - 0x8e8], 8
mov edx, dword [ebp - 0x8a4]
shl edx, 2
add edx, dword [ebp - 0x8a0]
mov eax, dword [ebp - 0x8e8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x8a4]
shl ecx, 2
add ecx, dword [ebp - 0x8a0]
mov dword [ecx], eax
jmp 0x43ab96
mov edx, dword [ebp - 0x89c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x89c]
mov dword [ebp - 0x8f0], eax
mov ecx, dword [ebp - 0x8f0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x8f4], ecx
mov edx, dword [ebp - 0x8f4]
mov dword [ebp - 0x898], edx
xor eax, eax
mov byte [ebp - 0x15], al
lea ecx, [ebp - 0x15]
call fcn.00425df0
mov dword [ebp - 0x8f8], eax
mov ecx, dword [ebp - 0x8f8]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x43cdb6
mov eax, dword [ebp - 0x8f8]
mov dword [ebp - 0x8fc], eax
mov dword [ebp - 0x900], 0
jmp 0x43bcf0
mov ecx, dword [ebp - 0x900]
add ecx, 1
mov dword [ebp - 0x900], ecx
cmp dword [ebp - 0x900], 1
jae 0x43cdb6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43bfc8
xor eax, eax
je 0x43bd3a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43bd76
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb8]
movsd qword [ebp - 0x9360], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43bf16
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43bf16
mov dword [ebp - 0x904], 0
jmp 0x43bdf5
cmp dword [ebp - 0x904], 0xf
jae 0x43bf11
cvtsi2sd xmm0, dword [ebp - 0x904]
movsd xmm1, qword [ebp - 0x9360]
addsd xmm1, xmm0
movsd qword [ebp - 0x9368], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9368]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43be64
mov ecx, dword [ebp - 0x904]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9360]
addsd xmm1, xmm0
movsd qword [ebp - 0x9360], xmm1
jmp 0x43bd60
cvtsi2sd xmm0, dword [ebp - 0x904]
movsd xmm1, qword [ebp - 0x9360]
addsd xmm1, xmm0
movsd qword [ebp - 0x9370], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9370]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43bec1
mov eax, dword [ebp - 0x904]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9360]
addsd xmm1, xmm0
movsd qword [ebp - 0x9360], xmm1
jmp 0x43beda
mov ecx, 1
test ecx, ecx
je 0x43bed6
jmp 0x43bf96
jmp 0x43befd
cvtsi2sd xmm0, dword [ebp - 0x904]
movsd xmm1, qword [ebp - 0x9360]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x908], edx
jmp 0x43bfa0
xor eax, eax
je 0x43bf07
jmp 0x43bf16
jmp 0x43bd60
jmp 0x43bd60
mov ecx, 2
test ecx, ecx
je 0x43bf96
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x90c], eax
cvtsi2sd xmm0, dword [ebp - 0x90c]
mov eax, dword [ebp - 0x90c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9360]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x908], ecx
jmp 0x43bfa0
mov dword [ebp - 0x908], 8
mov edx, dword [ebp - 0x900]
shl edx, 2
add edx, dword [ebp - 0x8fc]
mov eax, dword [ebp - 0x908]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x900]
shl ecx, 2
add ecx, dword [ebp - 0x8fc]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43cae6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43c2d8
xor eax, eax
je 0x43c04a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43c086
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb0]
movsd qword [ebp - 0x9378], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43c226
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43c226
mov dword [ebp - 0x910], 0
jmp 0x43c105
cmp dword [ebp - 0x910], 0xf
jae 0x43c221
cvtsi2sd xmm0, dword [ebp - 0x910]
movsd xmm1, qword [ebp - 0x9378]
addsd xmm1, xmm0
movsd qword [ebp - 0x9380], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9380]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43c174
mov ecx, dword [ebp - 0x910]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9378]
addsd xmm1, xmm0
movsd qword [ebp - 0x9378], xmm1
jmp 0x43c070
cvtsi2sd xmm0, dword [ebp - 0x910]
movsd xmm1, qword [ebp - 0x9378]
addsd xmm1, xmm0
movsd qword [ebp - 0x9388], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9388]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43c1d1
mov eax, dword [ebp - 0x910]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9378]
addsd xmm1, xmm0
movsd qword [ebp - 0x9378], xmm1
jmp 0x43c1ea
mov ecx, 1
test ecx, ecx
je 0x43c1e6
jmp 0x43c2a6
jmp 0x43c20d
cvtsi2sd xmm0, dword [ebp - 0x910]
movsd xmm1, qword [ebp - 0x9378]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x914], edx
jmp 0x43c2b0
xor eax, eax
je 0x43c217
jmp 0x43c226
jmp 0x43c070
jmp 0x43c070
mov ecx, 2
test ecx, ecx
je 0x43c2a6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x918], eax
cvtsi2sd xmm0, dword [ebp - 0x918]
mov eax, dword [ebp - 0x918]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9378]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x914], ecx
jmp 0x43c2b0
mov dword [ebp - 0x914], 8
mov edx, dword [ebp - 0x900]
shl edx, 2
add edx, dword [ebp - 0x8fc]
mov eax, dword [ebp - 0x914]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x900]
shl ecx, 2
add ecx, dword [ebp - 0x8fc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43c5a3
xor eax, eax
je 0x43c315
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43c351
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea8]
movsd qword [ebp - 0x9390], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43c4f1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43c4f1
mov dword [ebp - 0x91c], 0
jmp 0x43c3d0
cmp dword [ebp - 0x91c], 0xf
jae 0x43c4ec
cvtsi2sd xmm0, dword [ebp - 0x91c]
movsd xmm1, qword [ebp - 0x9390]
addsd xmm1, xmm0
movsd qword [ebp - 0x9398], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9398]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43c43f
mov ecx, dword [ebp - 0x91c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9390]
addsd xmm1, xmm0
movsd qword [ebp - 0x9390], xmm1
jmp 0x43c33b
cvtsi2sd xmm0, dword [ebp - 0x91c]
movsd xmm1, qword [ebp - 0x9390]
addsd xmm1, xmm0
movsd qword [ebp - 0x93a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x93a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43c49c
mov eax, dword [ebp - 0x91c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9390]
addsd xmm1, xmm0
movsd qword [ebp - 0x9390], xmm1
jmp 0x43c4b5
mov ecx, 1
test ecx, ecx
je 0x43c4b1
jmp 0x43c571
jmp 0x43c4d8
cvtsi2sd xmm0, dword [ebp - 0x91c]
movsd xmm1, qword [ebp - 0x9390]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x920], edx
jmp 0x43c57b
xor eax, eax
je 0x43c4e2
jmp 0x43c4f1
jmp 0x43c33b
jmp 0x43c33b
mov ecx, 2
test ecx, ecx
je 0x43c571
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x924], eax
cvtsi2sd xmm0, dword [ebp - 0x924]
mov eax, dword [ebp - 0x924]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9390]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x920], ecx
jmp 0x43c57b
mov dword [ebp - 0x920], 8
mov edx, dword [ebp - 0x900]
shl edx, 2
add edx, dword [ebp - 0x8fc]
mov eax, dword [ebp - 0x920]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x900]
shl ecx, 2
add ecx, dword [ebp - 0x8fc]
mov dword [ecx], eax
mov edx, dword [ebp - 0x900]
add edx, 0xffffffa7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x93a8], xmm0
xor eax, eax
je 0x43c5bd
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43c5f9
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x93a8]
movsd qword [ebp - 0x93b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43c799
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43c799
mov dword [ebp - 0x928], 0
jmp 0x43c678
cmp dword [ebp - 0x928], 0xf
jae 0x43c794
cvtsi2sd xmm0, dword [ebp - 0x928]
movsd xmm1, qword [ebp - 0x93b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x93b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x93b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43c6e7
mov ecx, dword [ebp - 0x928]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x93b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x93b0], xmm1
jmp 0x43c5e3
cvtsi2sd xmm0, dword [ebp - 0x928]
movsd xmm1, qword [ebp - 0x93b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x93c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x93c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43c744
mov eax, dword [ebp - 0x928]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x93b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x93b0], xmm1
jmp 0x43c75d
mov ecx, 1
test ecx, ecx
je 0x43c759
jmp 0x43c819
jmp 0x43c780
cvtsi2sd xmm0, dword [ebp - 0x928]
movsd xmm1, qword [ebp - 0x93b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x92c], edx
jmp 0x43c823
xor eax, eax
je 0x43c78a
jmp 0x43c799
jmp 0x43c5e3
jmp 0x43c5e3
mov ecx, 2
test ecx, ecx
je 0x43c819
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x930], eax
cvtsi2sd xmm0, dword [ebp - 0x930]
mov eax, dword [ebp - 0x930]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x93b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x92c], ecx
jmp 0x43c823
mov dword [ebp - 0x92c], 8
mov edx, dword [ebp - 0x900]
add edx, 0xffffffa7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x93c8], xmm0
xor eax, eax
je 0x43c83d
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43c879
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x93c8]
movsd qword [ebp - 0x93d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43ca19
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43ca19
mov dword [ebp - 0x934], 0
jmp 0x43c8f8
cmp dword [ebp - 0x934], 0xf
jae 0x43ca14
cvtsi2sd xmm0, dword [ebp - 0x934]
movsd xmm1, qword [ebp - 0x93d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x93d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x93d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43c967
mov ecx, dword [ebp - 0x934]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x93d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x93d0], xmm1
jmp 0x43c863
cvtsi2sd xmm0, dword [ebp - 0x934]
movsd xmm1, qword [ebp - 0x93d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x93e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x93e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43c9c4
mov eax, dword [ebp - 0x934]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x93d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x93d0], xmm1
jmp 0x43c9dd
mov ecx, 1
test ecx, ecx
je 0x43c9d9
jmp 0x43ca99
jmp 0x43ca00
cvtsi2sd xmm0, dword [ebp - 0x934]
movsd xmm1, qword [ebp - 0x93d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x938], edx
jmp 0x43caa3
xor eax, eax
je 0x43ca0a
jmp 0x43ca19
jmp 0x43c863
jmp 0x43c863
mov ecx, 2
test ecx, ecx
je 0x43ca99
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x93c], eax
cvtsi2sd xmm0, dword [ebp - 0x93c]
mov eax, dword [ebp - 0x93c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x93d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x938], ecx
jmp 0x43caa3
mov dword [ebp - 0x938], 8
mov edx, dword [ebp - 0x900]
shl edx, 2
add edx, dword [ebp - 0x8fc]
mov eax, dword [ebp - 0x92c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x900]
shl ecx, 2
add ecx, dword [ebp - 0x8fc]
mov edx, dword [ebp - 0x938]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x900]
shl ecx, 2
add ecx, dword [ebp - 0x8fc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43cdb1
xor eax, eax
je 0x43cb23
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43cb5f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea0]
movsd qword [ebp - 0x93e8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43ccff
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43ccff
mov dword [ebp - 0x940], 0
jmp 0x43cbde
cmp dword [ebp - 0x940], 0xf
jae 0x43ccfa
cvtsi2sd xmm0, dword [ebp - 0x940]
movsd xmm1, qword [ebp - 0x93e8]
addsd xmm1, xmm0
movsd qword [ebp - 0x93f0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x93f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43cc4d
mov ecx, dword [ebp - 0x940]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x93e8]
addsd xmm1, xmm0
movsd qword [ebp - 0x93e8], xmm1
jmp 0x43cb49
cvtsi2sd xmm0, dword [ebp - 0x940]
movsd xmm1, qword [ebp - 0x93e8]
addsd xmm1, xmm0
movsd qword [ebp - 0x93f8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x93f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43ccaa
mov eax, dword [ebp - 0x940]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x93e8]
addsd xmm1, xmm0
movsd qword [ebp - 0x93e8], xmm1
jmp 0x43ccc3
mov ecx, 1
test ecx, ecx
je 0x43ccbf
jmp 0x43cd7f
jmp 0x43cce6
cvtsi2sd xmm0, dword [ebp - 0x940]
movsd xmm1, qword [ebp - 0x93e8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x944], edx
jmp 0x43cd89
xor eax, eax
je 0x43ccf0
jmp 0x43ccff
jmp 0x43cb49
jmp 0x43cb49
mov ecx, 2
test ecx, ecx
je 0x43cd7f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x948], eax
cvtsi2sd xmm0, dword [ebp - 0x948]
mov eax, dword [ebp - 0x948]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x93e8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x944], ecx
jmp 0x43cd89
mov dword [ebp - 0x944], 8
mov edx, dword [ebp - 0x900]
shl edx, 2
add edx, dword [ebp - 0x8fc]
mov eax, dword [ebp - 0x944]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x900]
shl ecx, 2
add ecx, dword [ebp - 0x8fc]
mov dword [ecx], eax
jmp 0x43bce1
mov edx, dword [ebp - 0x8f8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x8f8]
mov dword [ebp - 0x94c], eax
mov ecx, dword [ebp - 0x94c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x950], ecx
mov edx, dword [ebp - 0x950]
mov dword [ebp - 0x954], edx
xor eax, eax
mov byte [ebp - 0x16], al
lea ecx, [ebp - 0x16]
call fcn.00425dc0
mov dword [ebp - 0x958], eax
mov ecx, dword [ebp - 0x958]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x43df01
mov eax, dword [ebp - 0x958]
mov dword [ebp - 0x95c], eax
mov dword [ebp - 0x960], 0
jmp 0x43ce3b
mov ecx, dword [ebp - 0x960]
add ecx, 1
mov dword [ebp - 0x960], ecx
cmp dword [ebp - 0x960], 1
jae 0x43df01
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43d113
xor eax, eax
je 0x43ce85
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43cec1
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb8]
movsd qword [ebp - 0x9400], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43d061
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43d061
mov dword [ebp - 0x964], 0
jmp 0x43cf40
cmp dword [ebp - 0x964], 0xf
jae 0x43d05c
cvtsi2sd xmm0, dword [ebp - 0x964]
movsd xmm1, qword [ebp - 0x9400]
addsd xmm1, xmm0
movsd qword [ebp - 0x9408], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9408]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43cfaf
mov ecx, dword [ebp - 0x964]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9400]
addsd xmm1, xmm0
movsd qword [ebp - 0x9400], xmm1
jmp 0x43ceab
cvtsi2sd xmm0, dword [ebp - 0x964]
movsd xmm1, qword [ebp - 0x9400]
addsd xmm1, xmm0
movsd qword [ebp - 0x9410], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9410]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43d00c
mov eax, dword [ebp - 0x964]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9400]
addsd xmm1, xmm0
movsd qword [ebp - 0x9400], xmm1
jmp 0x43d025
mov ecx, 1
test ecx, ecx
je 0x43d021
jmp 0x43d0e1
jmp 0x43d048
cvtsi2sd xmm0, dword [ebp - 0x964]
movsd xmm1, qword [ebp - 0x9400]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x968], edx
jmp 0x43d0eb
xor eax, eax
je 0x43d052
jmp 0x43d061
jmp 0x43ceab
jmp 0x43ceab
mov ecx, 2
test ecx, ecx
je 0x43d0e1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x96c], eax
cvtsi2sd xmm0, dword [ebp - 0x96c]
mov eax, dword [ebp - 0x96c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9400]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x968], ecx
jmp 0x43d0eb
mov dword [ebp - 0x968], 8
mov edx, dword [ebp - 0x960]
shl edx, 2
add edx, dword [ebp - 0x95c]
mov eax, dword [ebp - 0x968]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x960]
shl ecx, 2
add ecx, dword [ebp - 0x95c]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43dc31
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43d423
xor eax, eax
je 0x43d195
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43d1d1
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb0]
movsd qword [ebp - 0x9418], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43d371
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43d371
mov dword [ebp - 0x970], 0
jmp 0x43d250
cmp dword [ebp - 0x970], 0xf
jae 0x43d36c
cvtsi2sd xmm0, dword [ebp - 0x970]
movsd xmm1, qword [ebp - 0x9418]
addsd xmm1, xmm0
movsd qword [ebp - 0x9420], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9420]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43d2bf
mov ecx, dword [ebp - 0x970]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9418]
addsd xmm1, xmm0
movsd qword [ebp - 0x9418], xmm1
jmp 0x43d1bb
cvtsi2sd xmm0, dword [ebp - 0x970]
movsd xmm1, qword [ebp - 0x9418]
addsd xmm1, xmm0
movsd qword [ebp - 0x9428], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9428]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43d31c
mov eax, dword [ebp - 0x970]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9418]
addsd xmm1, xmm0
movsd qword [ebp - 0x9418], xmm1
jmp 0x43d335
mov ecx, 1
test ecx, ecx
je 0x43d331
jmp 0x43d3f1
jmp 0x43d358
cvtsi2sd xmm0, dword [ebp - 0x970]
movsd xmm1, qword [ebp - 0x9418]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x974], edx
jmp 0x43d3fb
xor eax, eax
je 0x43d362
jmp 0x43d371
jmp 0x43d1bb
jmp 0x43d1bb
mov ecx, 2
test ecx, ecx
je 0x43d3f1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x978], eax
cvtsi2sd xmm0, dword [ebp - 0x978]
mov eax, dword [ebp - 0x978]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9418]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x974], ecx
jmp 0x43d3fb
mov dword [ebp - 0x974], 8
mov edx, dword [ebp - 0x960]
shl edx, 2
add edx, dword [ebp - 0x95c]
mov eax, dword [ebp - 0x974]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x960]
shl ecx, 2
add ecx, dword [ebp - 0x95c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43d6ee
xor eax, eax
je 0x43d460
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43d49c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea8]
movsd qword [ebp - 0x9430], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43d63c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43d63c
mov dword [ebp - 0x97c], 0
jmp 0x43d51b
cmp dword [ebp - 0x97c], 0xf
jae 0x43d637
cvtsi2sd xmm0, dword [ebp - 0x97c]
movsd xmm1, qword [ebp - 0x9430]
addsd xmm1, xmm0
movsd qword [ebp - 0x9438], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9438]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43d58a
mov ecx, dword [ebp - 0x97c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9430]
addsd xmm1, xmm0
movsd qword [ebp - 0x9430], xmm1
jmp 0x43d486
cvtsi2sd xmm0, dword [ebp - 0x97c]
movsd xmm1, qword [ebp - 0x9430]
addsd xmm1, xmm0
movsd qword [ebp - 0x9440], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9440]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43d5e7
mov eax, dword [ebp - 0x97c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9430]
addsd xmm1, xmm0
movsd qword [ebp - 0x9430], xmm1
jmp 0x43d600
mov ecx, 1
test ecx, ecx
je 0x43d5fc
jmp 0x43d6bc
jmp 0x43d623
cvtsi2sd xmm0, dword [ebp - 0x97c]
movsd xmm1, qword [ebp - 0x9430]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x980], edx
jmp 0x43d6c6
xor eax, eax
je 0x43d62d
jmp 0x43d63c
jmp 0x43d486
jmp 0x43d486
mov ecx, 2
test ecx, ecx
je 0x43d6bc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x984], eax
cvtsi2sd xmm0, dword [ebp - 0x984]
mov eax, dword [ebp - 0x984]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9430]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x980], ecx
jmp 0x43d6c6
mov dword [ebp - 0x980], 8
mov edx, dword [ebp - 0x960]
shl edx, 2
add edx, dword [ebp - 0x95c]
mov eax, dword [ebp - 0x980]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x960]
shl ecx, 2
add ecx, dword [ebp - 0x95c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x960]
add edx, 0xffffffa7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9448], xmm0
xor eax, eax
je 0x43d708
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43d744
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9448]
movsd qword [ebp - 0x9450], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43d8e4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43d8e4
mov dword [ebp - 0x988], 0
jmp 0x43d7c3
cmp dword [ebp - 0x988], 0xf
jae 0x43d8df
cvtsi2sd xmm0, dword [ebp - 0x988]
movsd xmm1, qword [ebp - 0x9450]
addsd xmm1, xmm0
movsd qword [ebp - 0x9458], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9458]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43d832
mov ecx, dword [ebp - 0x988]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9450]
addsd xmm1, xmm0
movsd qword [ebp - 0x9450], xmm1
jmp 0x43d72e
cvtsi2sd xmm0, dword [ebp - 0x988]
movsd xmm1, qword [ebp - 0x9450]
addsd xmm1, xmm0
movsd qword [ebp - 0x9460], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9460]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43d88f
mov eax, dword [ebp - 0x988]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9450]
addsd xmm1, xmm0
movsd qword [ebp - 0x9450], xmm1
jmp 0x43d8a8
mov ecx, 1
test ecx, ecx
je 0x43d8a4
jmp 0x43d964
jmp 0x43d8cb
cvtsi2sd xmm0, dword [ebp - 0x988]
movsd xmm1, qword [ebp - 0x9450]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x98c], edx
jmp 0x43d96e
xor eax, eax
je 0x43d8d5
jmp 0x43d8e4
jmp 0x43d72e
jmp 0x43d72e
mov ecx, 2
test ecx, ecx
je 0x43d964
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x990], eax
cvtsi2sd xmm0, dword [ebp - 0x990]
mov eax, dword [ebp - 0x990]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9450]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x98c], ecx
jmp 0x43d96e
mov dword [ebp - 0x98c], 8
mov edx, dword [ebp - 0x960]
add edx, 0xffffffa7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9468], xmm0
xor eax, eax
je 0x43d988
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43d9c4
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9468]
movsd qword [ebp - 0x9470], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43db64
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43db64
mov dword [ebp - 0x994], 0
jmp 0x43da43
cmp dword [ebp - 0x994], 0xf
jae 0x43db5f
cvtsi2sd xmm0, dword [ebp - 0x994]
movsd xmm1, qword [ebp - 0x9470]
addsd xmm1, xmm0
movsd qword [ebp - 0x9478], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9478]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43dab2
mov ecx, dword [ebp - 0x994]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9470]
addsd xmm1, xmm0
movsd qword [ebp - 0x9470], xmm1
jmp 0x43d9ae
cvtsi2sd xmm0, dword [ebp - 0x994]
movsd xmm1, qword [ebp - 0x9470]
addsd xmm1, xmm0
movsd qword [ebp - 0x9480], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9480]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43db0f
mov eax, dword [ebp - 0x994]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9470]
addsd xmm1, xmm0
movsd qword [ebp - 0x9470], xmm1
jmp 0x43db28
mov ecx, 1
test ecx, ecx
je 0x43db24
jmp 0x43dbe4
jmp 0x43db4b
cvtsi2sd xmm0, dword [ebp - 0x994]
movsd xmm1, qword [ebp - 0x9470]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x998], edx
jmp 0x43dbee
xor eax, eax
je 0x43db55
jmp 0x43db64
jmp 0x43d9ae
jmp 0x43d9ae
mov ecx, 2
test ecx, ecx
je 0x43dbe4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x99c], eax
cvtsi2sd xmm0, dword [ebp - 0x99c]
mov eax, dword [ebp - 0x99c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9470]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x998], ecx
jmp 0x43dbee
mov dword [ebp - 0x998], 8
mov edx, dword [ebp - 0x960]
shl edx, 2
add edx, dword [ebp - 0x95c]
mov eax, dword [ebp - 0x98c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x960]
shl ecx, 2
add ecx, dword [ebp - 0x95c]
mov edx, dword [ebp - 0x998]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x960]
shl ecx, 2
add ecx, dword [ebp - 0x95c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43defc
xor eax, eax
je 0x43dc6e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43dcaa
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea0]
movsd qword [ebp - 0x9488], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43de4a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43de4a
mov dword [ebp - 0x9a0], 0
jmp 0x43dd29
cmp dword [ebp - 0x9a0], 0xf
jae 0x43de45
cvtsi2sd xmm0, dword [ebp - 0x9a0]
movsd xmm1, qword [ebp - 0x9488]
addsd xmm1, xmm0
movsd qword [ebp - 0x9490], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9490]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43dd98
mov ecx, dword [ebp - 0x9a0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9488]
addsd xmm1, xmm0
movsd qword [ebp - 0x9488], xmm1
jmp 0x43dc94
cvtsi2sd xmm0, dword [ebp - 0x9a0]
movsd xmm1, qword [ebp - 0x9488]
addsd xmm1, xmm0
movsd qword [ebp - 0x9498], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9498]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43ddf5
mov eax, dword [ebp - 0x9a0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9488]
addsd xmm1, xmm0
movsd qword [ebp - 0x9488], xmm1
jmp 0x43de0e
mov ecx, 1
test ecx, ecx
je 0x43de0a
jmp 0x43deca
jmp 0x43de31
cvtsi2sd xmm0, dword [ebp - 0x9a0]
movsd xmm1, qword [ebp - 0x9488]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x9a4], edx
jmp 0x43ded4
xor eax, eax
je 0x43de3b
jmp 0x43de4a
jmp 0x43dc94
jmp 0x43dc94
mov ecx, 2
test ecx, ecx
je 0x43deca
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x9a8], eax
cvtsi2sd xmm0, dword [ebp - 0x9a8]
mov eax, dword [ebp - 0x9a8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9488]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x9a4], ecx
jmp 0x43ded4
mov dword [ebp - 0x9a4], 8
mov edx, dword [ebp - 0x960]
shl edx, 2
add edx, dword [ebp - 0x95c]
mov eax, dword [ebp - 0x9a4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x960]
shl ecx, 2
add ecx, dword [ebp - 0x95c]
mov dword [ecx], eax
jmp 0x43ce2c
mov edx, dword [ebp - 0x958]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x958]
mov dword [ebp - 0x9ac], eax
mov ecx, dword [ebp - 0x9ac]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x9b0], ecx
mov edx, dword [ebp - 0x9b0]
mov dword [ebp - 0x9b4], edx
xor eax, eax
mov byte [ebp - 0x17], al
lea ecx, [ebp - 0x17]
call fcn.00425d90
mov dword [ebp - 0x9b8], eax
mov ecx, dword [ebp - 0x9b8]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x43f04c
mov eax, dword [ebp - 0x9b8]
mov dword [ebp - 0x9bc], eax
mov dword [ebp - 0x9c0], 0
jmp 0x43df86
mov ecx, dword [ebp - 0x9c0]
add ecx, 1
mov dword [ebp - 0x9c0], ecx
cmp dword [ebp - 0x9c0], 1
jae 0x43f04c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43e25e
xor eax, eax
je 0x43dfd0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43e00c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736eb0]
movsd qword [ebp - 0x94a0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43e1ac
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43e1ac
mov dword [ebp - 0x9c4], 0
jmp 0x43e08b
cmp dword [ebp - 0x9c4], 0xf
jae 0x43e1a7
cvtsi2sd xmm0, dword [ebp - 0x9c4]
movsd xmm1, qword [ebp - 0x94a0]
addsd xmm1, xmm0
movsd qword [ebp - 0x94a8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x94a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43e0fa
mov ecx, dword [ebp - 0x9c4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x94a0]
addsd xmm1, xmm0
movsd qword [ebp - 0x94a0], xmm1
jmp 0x43dff6
cvtsi2sd xmm0, dword [ebp - 0x9c4]
movsd xmm1, qword [ebp - 0x94a0]
addsd xmm1, xmm0
movsd qword [ebp - 0x94b0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x94b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43e157
mov eax, dword [ebp - 0x9c4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x94a0]
addsd xmm1, xmm0
movsd qword [ebp - 0x94a0], xmm1
jmp 0x43e170
mov ecx, 1
test ecx, ecx
je 0x43e16c
jmp 0x43e22c
jmp 0x43e193
cvtsi2sd xmm0, dword [ebp - 0x9c4]
movsd xmm1, qword [ebp - 0x94a0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x9c8], edx
jmp 0x43e236
xor eax, eax
je 0x43e19d
jmp 0x43e1ac
jmp 0x43dff6
jmp 0x43dff6
mov ecx, 2
test ecx, ecx
je 0x43e22c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x9cc], eax
cvtsi2sd xmm0, dword [ebp - 0x9cc]
mov eax, dword [ebp - 0x9cc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x94a0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x9c8], ecx
jmp 0x43e236
mov dword [ebp - 0x9c8], 8
mov edx, dword [ebp - 0x9c0]
shl edx, 2
add edx, dword [ebp - 0x9bc]
mov eax, dword [ebp - 0x9c8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x9c0]
shl ecx, 2
add ecx, dword [ebp - 0x9bc]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43ed7c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43e56e
xor eax, eax
je 0x43e2e0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43e31c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea8]
movsd qword [ebp - 0x94b8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43e4bc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43e4bc
mov dword [ebp - 0x9d0], 0
jmp 0x43e39b
cmp dword [ebp - 0x9d0], 0xf
jae 0x43e4b7
cvtsi2sd xmm0, dword [ebp - 0x9d0]
movsd xmm1, qword [ebp - 0x94b8]
addsd xmm1, xmm0
movsd qword [ebp - 0x94c0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x94c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43e40a
mov ecx, dword [ebp - 0x9d0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x94b8]
addsd xmm1, xmm0
movsd qword [ebp - 0x94b8], xmm1
jmp 0x43e306
cvtsi2sd xmm0, dword [ebp - 0x9d0]
movsd xmm1, qword [ebp - 0x94b8]
addsd xmm1, xmm0
movsd qword [ebp - 0x94c8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x94c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43e467
mov eax, dword [ebp - 0x9d0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x94b8]
addsd xmm1, xmm0
movsd qword [ebp - 0x94b8], xmm1
jmp 0x43e480
mov ecx, 1
test ecx, ecx
je 0x43e47c
jmp 0x43e53c
jmp 0x43e4a3
cvtsi2sd xmm0, dword [ebp - 0x9d0]
movsd xmm1, qword [ebp - 0x94b8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x9d4], edx
jmp 0x43e546
xor eax, eax
je 0x43e4ad
jmp 0x43e4bc
jmp 0x43e306
jmp 0x43e306
mov ecx, 2
test ecx, ecx
je 0x43e53c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x9d8], eax
cvtsi2sd xmm0, dword [ebp - 0x9d8]
mov eax, dword [ebp - 0x9d8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x94b8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x9d4], ecx
jmp 0x43e546
mov dword [ebp - 0x9d4], 8
mov edx, dword [ebp - 0x9c0]
shl edx, 2
add edx, dword [ebp - 0x9bc]
mov eax, dword [ebp - 0x9d4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x9c0]
shl ecx, 2
add ecx, dword [ebp - 0x9bc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43e839
xor eax, eax
je 0x43e5ab
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43e5e7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea0]
movsd qword [ebp - 0x94d0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43e787
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43e787
mov dword [ebp - 0x9dc], 0
jmp 0x43e666
cmp dword [ebp - 0x9dc], 0xf
jae 0x43e782
cvtsi2sd xmm0, dword [ebp - 0x9dc]
movsd xmm1, qword [ebp - 0x94d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x94d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x94d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43e6d5
mov ecx, dword [ebp - 0x9dc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x94d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x94d0], xmm1
jmp 0x43e5d1
cvtsi2sd xmm0, dword [ebp - 0x9dc]
movsd xmm1, qword [ebp - 0x94d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x94e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x94e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43e732
mov eax, dword [ebp - 0x9dc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x94d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x94d0], xmm1
jmp 0x43e74b
mov ecx, 1
test ecx, ecx
je 0x43e747
jmp 0x43e807
jmp 0x43e76e
cvtsi2sd xmm0, dword [ebp - 0x9dc]
movsd xmm1, qword [ebp - 0x94d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x9e0], edx
jmp 0x43e811
xor eax, eax
je 0x43e778
jmp 0x43e787
jmp 0x43e5d1
jmp 0x43e5d1
mov ecx, 2
test ecx, ecx
je 0x43e807
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x9e4], eax
cvtsi2sd xmm0, dword [ebp - 0x9e4]
mov eax, dword [ebp - 0x9e4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x94d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x9e0], ecx
jmp 0x43e811
mov dword [ebp - 0x9e0], 8
mov edx, dword [ebp - 0x9c0]
shl edx, 2
add edx, dword [ebp - 0x9bc]
mov eax, dword [ebp - 0x9e0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x9c0]
shl ecx, 2
add ecx, dword [ebp - 0x9bc]
mov dword [ecx], eax
mov edx, dword [ebp - 0x9c0]
add edx, 0xffffffa8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x94e8], xmm0
xor eax, eax
je 0x43e853
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43e88f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x94e8]
movsd qword [ebp - 0x94f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43ea2f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43ea2f
mov dword [ebp - 0x9e8], 0
jmp 0x43e90e
cmp dword [ebp - 0x9e8], 0xf
jae 0x43ea2a
cvtsi2sd xmm0, dword [ebp - 0x9e8]
movsd xmm1, qword [ebp - 0x94f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x94f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x94f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43e97d
mov ecx, dword [ebp - 0x9e8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x94f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x94f0], xmm1
jmp 0x43e879
cvtsi2sd xmm0, dword [ebp - 0x9e8]
movsd xmm1, qword [ebp - 0x94f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9500], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9500]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43e9da
mov eax, dword [ebp - 0x9e8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x94f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x94f0], xmm1
jmp 0x43e9f3
mov ecx, 1
test ecx, ecx
je 0x43e9ef
jmp 0x43eaaf
jmp 0x43ea16
cvtsi2sd xmm0, dword [ebp - 0x9e8]
movsd xmm1, qword [ebp - 0x94f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x9ec], edx
jmp 0x43eab9
xor eax, eax
je 0x43ea20
jmp 0x43ea2f
jmp 0x43e879
jmp 0x43e879
mov ecx, 2
test ecx, ecx
je 0x43eaaf
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x9f0], eax
cvtsi2sd xmm0, dword [ebp - 0x9f0]
mov eax, dword [ebp - 0x9f0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x94f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x9ec], ecx
jmp 0x43eab9
mov dword [ebp - 0x9ec], 8
mov edx, dword [ebp - 0x9c0]
add edx, 0xffffffa8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9508], xmm0
xor eax, eax
je 0x43ead3
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43eb0f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9508]
movsd qword [ebp - 0x9510], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43ecaf
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43ecaf
mov dword [ebp - 0x9f4], 0
jmp 0x43eb8e
cmp dword [ebp - 0x9f4], 0xf
jae 0x43ecaa
cvtsi2sd xmm0, dword [ebp - 0x9f4]
movsd xmm1, qword [ebp - 0x9510]
addsd xmm1, xmm0
movsd qword [ebp - 0x9518], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9518]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43ebfd
mov ecx, dword [ebp - 0x9f4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9510]
addsd xmm1, xmm0
movsd qword [ebp - 0x9510], xmm1
jmp 0x43eaf9
cvtsi2sd xmm0, dword [ebp - 0x9f4]
movsd xmm1, qword [ebp - 0x9510]
addsd xmm1, xmm0
movsd qword [ebp - 0x9520], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9520]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43ec5a
mov eax, dword [ebp - 0x9f4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9510]
addsd xmm1, xmm0
movsd qword [ebp - 0x9510], xmm1
jmp 0x43ec73
mov ecx, 1
test ecx, ecx
je 0x43ec6f
jmp 0x43ed2f
jmp 0x43ec96
cvtsi2sd xmm0, dword [ebp - 0x9f4]
movsd xmm1, qword [ebp - 0x9510]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x9f8], edx
jmp 0x43ed39
xor eax, eax
je 0x43eca0
jmp 0x43ecaf
jmp 0x43eaf9
jmp 0x43eaf9
mov ecx, 2
test ecx, ecx
je 0x43ed2f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x9fc], eax
cvtsi2sd xmm0, dword [ebp - 0x9fc]
mov eax, dword [ebp - 0x9fc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9510]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x9f8], ecx
jmp 0x43ed39
mov dword [ebp - 0x9f8], 8
mov edx, dword [ebp - 0x9c0]
shl edx, 2
add edx, dword [ebp - 0x9bc]
mov eax, dword [ebp - 0x9ec]
add eax, dword [edx]
mov ecx, dword [ebp - 0x9c0]
shl ecx, 2
add ecx, dword [ebp - 0x9bc]
mov edx, dword [ebp - 0x9f8]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x9c0]
shl ecx, 2
add ecx, dword [ebp - 0x9bc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43f047
xor eax, eax
je 0x43edb9
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43edf5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e98]
movsd qword [ebp - 0x9528], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43ef95
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43ef95
mov dword [ebp - 0xa00], 0
jmp 0x43ee74
cmp dword [ebp - 0xa00], 0xf
jae 0x43ef90
cvtsi2sd xmm0, dword [ebp - 0xa00]
movsd xmm1, qword [ebp - 0x9528]
addsd xmm1, xmm0
movsd qword [ebp - 0x9530], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9530]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43eee3
mov ecx, dword [ebp - 0xa00]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9528]
addsd xmm1, xmm0
movsd qword [ebp - 0x9528], xmm1
jmp 0x43eddf
cvtsi2sd xmm0, dword [ebp - 0xa00]
movsd xmm1, qword [ebp - 0x9528]
addsd xmm1, xmm0
movsd qword [ebp - 0x9538], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9538]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43ef40
mov eax, dword [ebp - 0xa00]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9528]
addsd xmm1, xmm0
movsd qword [ebp - 0x9528], xmm1
jmp 0x43ef59
mov ecx, 1
test ecx, ecx
je 0x43ef55
jmp 0x43f015
jmp 0x43ef7c
cvtsi2sd xmm0, dword [ebp - 0xa00]
movsd xmm1, qword [ebp - 0x9528]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xa04], edx
jmp 0x43f01f
xor eax, eax
je 0x43ef86
jmp 0x43ef95
jmp 0x43eddf
jmp 0x43eddf
mov ecx, 2
test ecx, ecx
je 0x43f015
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xa08], eax
cvtsi2sd xmm0, dword [ebp - 0xa08]
mov eax, dword [ebp - 0xa08]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9528]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xa04], ecx
jmp 0x43f01f
mov dword [ebp - 0xa04], 8
mov edx, dword [ebp - 0x9c0]
shl edx, 2
add edx, dword [ebp - 0x9bc]
mov eax, dword [ebp - 0xa04]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x9c0]
shl ecx, 2
add ecx, dword [ebp - 0x9bc]
mov dword [ecx], eax
jmp 0x43df77
mov edx, dword [ebp - 0x9b8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x9b8]
mov dword [ebp - 0xa0c], eax
mov ecx, dword [ebp - 0xa0c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xa10], ecx
mov edx, dword [ebp - 0xa10]
mov dword [ebp - 0xa14], edx
mov eax, dword [ebp - 0x9b4]
mov dword [ebp - 0x954], eax
cmp dword [ebp - 0x954], 0
je 0x4401e9
xor ecx, ecx
mov byte [ebp - 0x18], cl
lea ecx, [ebp - 0x18]
call fcn.00425d60
mov dword [ebp - 0xa18], eax
mov edx, dword [ebp - 0xa18]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x4401b0
mov ecx, dword [ebp - 0xa18]
mov dword [ebp - 0xa1c], ecx
mov dword [ebp - 0xa20], 0
jmp 0x43f0ea
mov edx, dword [ebp - 0xa20]
add edx, 1
mov dword [ebp - 0xa20], edx
cmp dword [ebp - 0xa20], 1
jae 0x4401b0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43f3c2
xor eax, eax
je 0x43f134
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x43f170
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736eb0]
movsd qword [ebp - 0x9540], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43f310
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43f310
mov dword [ebp - 0xa24], 0
jmp 0x43f1ef
cmp dword [ebp - 0xa24], 0xf
jae 0x43f30b
cvtsi2sd xmm0, dword [ebp - 0xa24]
movsd xmm1, qword [ebp - 0x9540]
addsd xmm1, xmm0
movsd qword [ebp - 0x9548], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9548]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43f25e
mov ecx, dword [ebp - 0xa24]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9540]
addsd xmm1, xmm0
movsd qword [ebp - 0x9540], xmm1
jmp 0x43f15a
cvtsi2sd xmm0, dword [ebp - 0xa24]
movsd xmm1, qword [ebp - 0x9540]
addsd xmm1, xmm0
movsd qword [ebp - 0x9550], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9550]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43f2bb
mov eax, dword [ebp - 0xa24]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9540]
addsd xmm1, xmm0
movsd qword [ebp - 0x9540], xmm1
jmp 0x43f2d4
mov ecx, 1
test ecx, ecx
je 0x43f2d0
jmp 0x43f390
jmp 0x43f2f7
cvtsi2sd xmm0, dword [ebp - 0xa24]
movsd xmm1, qword [ebp - 0x9540]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xa28], edx
jmp 0x43f39a
xor eax, eax
je 0x43f301
jmp 0x43f310
jmp 0x43f15a
jmp 0x43f15a
mov ecx, 2
test ecx, ecx
je 0x43f390
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xa2c], eax
cvtsi2sd xmm0, dword [ebp - 0xa2c]
mov eax, dword [ebp - 0xa2c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9540]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xa28], ecx
jmp 0x43f39a
mov dword [ebp - 0xa28], 8
mov edx, dword [ebp - 0xa20]
shl edx, 2
add edx, dword [ebp - 0xa1c]
mov eax, dword [ebp - 0xa28]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xa20]
shl ecx, 2
add ecx, dword [ebp - 0xa1c]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43fee0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43f6d2
xor eax, eax
je 0x43f444
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43f480
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea8]
movsd qword [ebp - 0x9558], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43f620
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43f620
mov dword [ebp - 0xa30], 0
jmp 0x43f4ff
cmp dword [ebp - 0xa30], 0xf
jae 0x43f61b
cvtsi2sd xmm0, dword [ebp - 0xa30]
movsd xmm1, qword [ebp - 0x9558]
addsd xmm1, xmm0
movsd qword [ebp - 0x9560], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9560]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43f56e
mov ecx, dword [ebp - 0xa30]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9558]
addsd xmm1, xmm0
movsd qword [ebp - 0x9558], xmm1
jmp 0x43f46a
cvtsi2sd xmm0, dword [ebp - 0xa30]
movsd xmm1, qword [ebp - 0x9558]
addsd xmm1, xmm0
movsd qword [ebp - 0x9568], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9568]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43f5cb
mov eax, dword [ebp - 0xa30]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9558]
addsd xmm1, xmm0
movsd qword [ebp - 0x9558], xmm1
jmp 0x43f5e4
mov ecx, 1
test ecx, ecx
je 0x43f5e0
jmp 0x43f6a0
jmp 0x43f607
cvtsi2sd xmm0, dword [ebp - 0xa30]
movsd xmm1, qword [ebp - 0x9558]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xa34], edx
jmp 0x43f6aa
xor eax, eax
je 0x43f611
jmp 0x43f620
jmp 0x43f46a
jmp 0x43f46a
mov ecx, 2
test ecx, ecx
je 0x43f6a0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xa38], eax
cvtsi2sd xmm0, dword [ebp - 0xa38]
mov eax, dword [ebp - 0xa38]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9558]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xa34], ecx
jmp 0x43f6aa
mov dword [ebp - 0xa34], 8
mov edx, dword [ebp - 0xa20]
shl edx, 2
add edx, dword [ebp - 0xa1c]
mov eax, dword [ebp - 0xa34]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xa20]
shl ecx, 2
add ecx, dword [ebp - 0xa1c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x43f99d
xor eax, eax
je 0x43f70f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43f74b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea0]
movsd qword [ebp - 0x9570], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43f8eb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43f8eb
mov dword [ebp - 0xa3c], 0
jmp 0x43f7ca
cmp dword [ebp - 0xa3c], 0xf
jae 0x43f8e6
cvtsi2sd xmm0, dword [ebp - 0xa3c]
movsd xmm1, qword [ebp - 0x9570]
addsd xmm1, xmm0
movsd qword [ebp - 0x9578], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9578]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43f839
mov ecx, dword [ebp - 0xa3c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9570]
addsd xmm1, xmm0
movsd qword [ebp - 0x9570], xmm1
jmp 0x43f735
cvtsi2sd xmm0, dword [ebp - 0xa3c]
movsd xmm1, qword [ebp - 0x9570]
addsd xmm1, xmm0
movsd qword [ebp - 0x9580], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9580]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43f896
mov eax, dword [ebp - 0xa3c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9570]
addsd xmm1, xmm0
movsd qword [ebp - 0x9570], xmm1
jmp 0x43f8af
mov ecx, 1
test ecx, ecx
je 0x43f8ab
jmp 0x43f96b
jmp 0x43f8d2
cvtsi2sd xmm0, dword [ebp - 0xa3c]
movsd xmm1, qword [ebp - 0x9570]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xa40], edx
jmp 0x43f975
xor eax, eax
je 0x43f8dc
jmp 0x43f8eb
jmp 0x43f735
jmp 0x43f735
mov ecx, 2
test ecx, ecx
je 0x43f96b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xa44], eax
cvtsi2sd xmm0, dword [ebp - 0xa44]
mov eax, dword [ebp - 0xa44]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9570]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xa40], ecx
jmp 0x43f975
mov dword [ebp - 0xa40], 8
mov edx, dword [ebp - 0xa20]
shl edx, 2
add edx, dword [ebp - 0xa1c]
mov eax, dword [ebp - 0xa40]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xa20]
shl ecx, 2
add ecx, dword [ebp - 0xa1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0xa20]
add edx, 0xffffffa8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9588], xmm0
xor eax, eax
je 0x43f9b7
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43f9f3
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9588]
movsd qword [ebp - 0x9590], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43fb93
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43fb93
mov dword [ebp - 0xa48], 0
jmp 0x43fa72
cmp dword [ebp - 0xa48], 0xf
jae 0x43fb8e
cvtsi2sd xmm0, dword [ebp - 0xa48]
movsd xmm1, qword [ebp - 0x9590]
addsd xmm1, xmm0
movsd qword [ebp - 0x9598], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9598]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43fae1
mov ecx, dword [ebp - 0xa48]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9590]
addsd xmm1, xmm0
movsd qword [ebp - 0x9590], xmm1
jmp 0x43f9dd
cvtsi2sd xmm0, dword [ebp - 0xa48]
movsd xmm1, qword [ebp - 0x9590]
addsd xmm1, xmm0
movsd qword [ebp - 0x95a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x95a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43fb3e
mov eax, dword [ebp - 0xa48]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9590]
addsd xmm1, xmm0
movsd qword [ebp - 0x9590], xmm1
jmp 0x43fb57
mov ecx, 1
test ecx, ecx
je 0x43fb53
jmp 0x43fc13
jmp 0x43fb7a
cvtsi2sd xmm0, dword [ebp - 0xa48]
movsd xmm1, qword [ebp - 0x9590]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xa4c], edx
jmp 0x43fc1d
xor eax, eax
je 0x43fb84
jmp 0x43fb93
jmp 0x43f9dd
jmp 0x43f9dd
mov ecx, 2
test ecx, ecx
je 0x43fc13
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xa50], eax
cvtsi2sd xmm0, dword [ebp - 0xa50]
mov eax, dword [ebp - 0xa50]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9590]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xa4c], ecx
jmp 0x43fc1d
mov dword [ebp - 0xa4c], 8
mov edx, dword [ebp - 0xa20]
add edx, 0xffffffa8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x95a8], xmm0
xor eax, eax
je 0x43fc37
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x43fc73
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x95a8]
movsd qword [ebp - 0x95b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x43fe13
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x43fe13
mov dword [ebp - 0xa54], 0
jmp 0x43fcf2
cmp dword [ebp - 0xa54], 0xf
jae 0x43fe0e
cvtsi2sd xmm0, dword [ebp - 0xa54]
movsd xmm1, qword [ebp - 0x95b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x95b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x95b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43fd61
mov ecx, dword [ebp - 0xa54]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x95b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x95b0], xmm1
jmp 0x43fc5d
cvtsi2sd xmm0, dword [ebp - 0xa54]
movsd xmm1, qword [ebp - 0x95b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x95c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x95c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x43fdbe
mov eax, dword [ebp - 0xa54]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x95b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x95b0], xmm1
jmp 0x43fdd7
mov ecx, 1
test ecx, ecx
je 0x43fdd3
jmp 0x43fe93
jmp 0x43fdfa
cvtsi2sd xmm0, dword [ebp - 0xa54]
movsd xmm1, qword [ebp - 0x95b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xa58], edx
jmp 0x43fe9d
xor eax, eax
je 0x43fe04
jmp 0x43fe13
jmp 0x43fc5d
jmp 0x43fc5d
mov ecx, 2
test ecx, ecx
je 0x43fe93
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xa5c], eax
cvtsi2sd xmm0, dword [ebp - 0xa5c]
mov eax, dword [ebp - 0xa5c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x95b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xa58], ecx
jmp 0x43fe9d
mov dword [ebp - 0xa58], 8
mov edx, dword [ebp - 0xa20]
shl edx, 2
add edx, dword [ebp - 0xa1c]
mov eax, dword [ebp - 0xa4c]
add eax, dword [edx]
mov ecx, dword [ebp - 0xa20]
shl ecx, 2
add ecx, dword [ebp - 0xa1c]
mov edx, dword [ebp - 0xa58]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xa20]
shl ecx, 2
add ecx, dword [ebp - 0xa1c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4401ab
xor eax, eax
je 0x43ff1d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x43ff59
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e98]
movsd qword [ebp - 0x95c8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4400f9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4400f9
mov dword [ebp - 0xa60], 0
jmp 0x43ffd8
cmp dword [ebp - 0xa60], 0xf
jae 0x4400f4
cvtsi2sd xmm0, dword [ebp - 0xa60]
movsd xmm1, qword [ebp - 0x95c8]
addsd xmm1, xmm0
movsd qword [ebp - 0x95d0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x95d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x440047
mov ecx, dword [ebp - 0xa60]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x95c8]
addsd xmm1, xmm0
movsd qword [ebp - 0x95c8], xmm1
jmp 0x43ff43
cvtsi2sd xmm0, dword [ebp - 0xa60]
movsd xmm1, qword [ebp - 0x95c8]
addsd xmm1, xmm0
movsd qword [ebp - 0x95d8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x95d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4400a4
mov eax, dword [ebp - 0xa60]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x95c8]
addsd xmm1, xmm0
movsd qword [ebp - 0x95c8], xmm1
jmp 0x4400bd
mov ecx, 1
test ecx, ecx
je 0x4400b9
jmp 0x440179
jmp 0x4400e0
cvtsi2sd xmm0, dword [ebp - 0xa60]
movsd xmm1, qword [ebp - 0x95c8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xa64], edx
jmp 0x440183
xor eax, eax
je 0x4400ea
jmp 0x4400f9
jmp 0x43ff43
jmp 0x43ff43
mov ecx, 2
test ecx, ecx
je 0x440179
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xa68], eax
cvtsi2sd xmm0, dword [ebp - 0xa68]
mov eax, dword [ebp - 0xa68]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x95c8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xa64], ecx
jmp 0x440183
mov dword [ebp - 0xa64], 8
mov edx, dword [ebp - 0xa20]
shl edx, 2
add edx, dword [ebp - 0xa1c]
mov eax, dword [ebp - 0xa64]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xa20]
shl ecx, 2
add ecx, dword [ebp - 0xa1c]
mov dword [ecx], eax
jmp 0x43f0db
mov edx, dword [ebp - 0xa18]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xa18]
mov dword [ebp - 0xa6c], eax
mov ecx, dword [ebp - 0xa6c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xa70], ecx
mov edx, dword [ebp - 0xa70]
mov dword [ebp - 0xa14], edx
xor eax, eax
mov byte [ebp - 0x19], al
lea ecx, [ebp - 0x19]
call fcn.00425d30
mov dword [ebp - 0xa74], eax
mov ecx, dword [ebp - 0xa74]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4412fb
mov eax, dword [ebp - 0xa74]
mov dword [ebp - 0xa78], eax
mov dword [ebp - 0xa7c], 0
jmp 0x440235
mov ecx, dword [ebp - 0xa7c]
add ecx, 1
mov dword [ebp - 0xa7c], ecx
cmp dword [ebp - 0xa7c], 1
jae 0x4412fb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44050d
xor eax, eax
je 0x44027f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4402bb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea8]
movsd qword [ebp - 0x95e0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44045b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44045b
mov dword [ebp - 0xa80], 0
jmp 0x44033a
cmp dword [ebp - 0xa80], 0xf
jae 0x440456
cvtsi2sd xmm0, dword [ebp - 0xa80]
movsd xmm1, qword [ebp - 0x95e0]
addsd xmm1, xmm0
movsd qword [ebp - 0x95e8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x95e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4403a9
mov ecx, dword [ebp - 0xa80]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x95e0]
addsd xmm1, xmm0
movsd qword [ebp - 0x95e0], xmm1
jmp 0x4402a5
cvtsi2sd xmm0, dword [ebp - 0xa80]
movsd xmm1, qword [ebp - 0x95e0]
addsd xmm1, xmm0
movsd qword [ebp - 0x95f0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x95f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x440406
mov eax, dword [ebp - 0xa80]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x95e0]
addsd xmm1, xmm0
movsd qword [ebp - 0x95e0], xmm1
jmp 0x44041f
mov ecx, 1
test ecx, ecx
je 0x44041b
jmp 0x4404db
jmp 0x440442
cvtsi2sd xmm0, dword [ebp - 0xa80]
movsd xmm1, qword [ebp - 0x95e0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xa84], edx
jmp 0x4404e5
xor eax, eax
je 0x44044c
jmp 0x44045b
jmp 0x4402a5
jmp 0x4402a5
mov ecx, 2
test ecx, ecx
je 0x4404db
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xa88], eax
cvtsi2sd xmm0, dword [ebp - 0xa88]
mov eax, dword [ebp - 0xa88]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x95e0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xa84], ecx
jmp 0x4404e5
mov dword [ebp - 0xa84], 8
mov edx, dword [ebp - 0xa7c]
shl edx, 2
add edx, dword [ebp - 0xa78]
mov eax, dword [ebp - 0xa84]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xa7c]
shl ecx, 2
add ecx, dword [ebp - 0xa78]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44102b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44081d
xor eax, eax
je 0x44058f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4405cb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea0]
movsd qword [ebp - 0x95f8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44076b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44076b
mov dword [ebp - 0xa8c], 0
jmp 0x44064a
cmp dword [ebp - 0xa8c], 0xf
jae 0x440766
cvtsi2sd xmm0, dword [ebp - 0xa8c]
movsd xmm1, qword [ebp - 0x95f8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9600], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9600]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4406b9
mov ecx, dword [ebp - 0xa8c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x95f8]
addsd xmm1, xmm0
movsd qword [ebp - 0x95f8], xmm1
jmp 0x4405b5
cvtsi2sd xmm0, dword [ebp - 0xa8c]
movsd xmm1, qword [ebp - 0x95f8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9608], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9608]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x440716
mov eax, dword [ebp - 0xa8c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x95f8]
addsd xmm1, xmm0
movsd qword [ebp - 0x95f8], xmm1
jmp 0x44072f
mov ecx, 1
test ecx, ecx
je 0x44072b
jmp 0x4407eb
jmp 0x440752
cvtsi2sd xmm0, dword [ebp - 0xa8c]
movsd xmm1, qword [ebp - 0x95f8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xa90], edx
jmp 0x4407f5
xor eax, eax
je 0x44075c
jmp 0x44076b
jmp 0x4405b5
jmp 0x4405b5
mov ecx, 2
test ecx, ecx
je 0x4407eb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xa94], eax
cvtsi2sd xmm0, dword [ebp - 0xa94]
mov eax, dword [ebp - 0xa94]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x95f8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xa90], ecx
jmp 0x4407f5
mov dword [ebp - 0xa90], 8
mov edx, dword [ebp - 0xa7c]
shl edx, 2
add edx, dword [ebp - 0xa78]
mov eax, dword [ebp - 0xa90]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xa7c]
shl ecx, 2
add ecx, dword [ebp - 0xa78]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x440ae8
xor eax, eax
je 0x44085a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x440896
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e98]
movsd qword [ebp - 0x9610], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x440a36
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x440a36
mov dword [ebp - 0xa98], 0
jmp 0x440915
cmp dword [ebp - 0xa98], 0xf
jae 0x440a31
cvtsi2sd xmm0, dword [ebp - 0xa98]
movsd xmm1, qword [ebp - 0x9610]
addsd xmm1, xmm0
movsd qword [ebp - 0x9618], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9618]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x440984
mov ecx, dword [ebp - 0xa98]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9610]
addsd xmm1, xmm0
movsd qword [ebp - 0x9610], xmm1
jmp 0x440880
cvtsi2sd xmm0, dword [ebp - 0xa98]
movsd xmm1, qword [ebp - 0x9610]
addsd xmm1, xmm0
movsd qword [ebp - 0x9620], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9620]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4409e1
mov eax, dword [ebp - 0xa98]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9610]
addsd xmm1, xmm0
movsd qword [ebp - 0x9610], xmm1
jmp 0x4409fa
mov ecx, 1
test ecx, ecx
je 0x4409f6
jmp 0x440ab6
jmp 0x440a1d
cvtsi2sd xmm0, dword [ebp - 0xa98]
movsd xmm1, qword [ebp - 0x9610]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xa9c], edx
jmp 0x440ac0
xor eax, eax
je 0x440a27
jmp 0x440a36
jmp 0x440880
jmp 0x440880
mov ecx, 2
test ecx, ecx
je 0x440ab6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xaa0], eax
cvtsi2sd xmm0, dword [ebp - 0xaa0]
mov eax, dword [ebp - 0xaa0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9610]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xa9c], ecx
jmp 0x440ac0
mov dword [ebp - 0xa9c], 8
mov edx, dword [ebp - 0xa7c]
shl edx, 2
add edx, dword [ebp - 0xa78]
mov eax, dword [ebp - 0xa9c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xa7c]
shl ecx, 2
add ecx, dword [ebp - 0xa78]
mov dword [ecx], eax
mov edx, dword [ebp - 0xa7c]
add edx, 0xffffffa9
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9628], xmm0
xor eax, eax
je 0x440b02
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x440b3e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9628]
movsd qword [ebp - 0x9630], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x440cde
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x440cde
mov dword [ebp - 0xaa4], 0
jmp 0x440bbd
cmp dword [ebp - 0xaa4], 0xf
jae 0x440cd9
cvtsi2sd xmm0, dword [ebp - 0xaa4]
movsd xmm1, qword [ebp - 0x9630]
addsd xmm1, xmm0
movsd qword [ebp - 0x9638], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9638]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x440c2c
mov ecx, dword [ebp - 0xaa4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9630]
addsd xmm1, xmm0
movsd qword [ebp - 0x9630], xmm1
jmp 0x440b28
cvtsi2sd xmm0, dword [ebp - 0xaa4]
movsd xmm1, qword [ebp - 0x9630]
addsd xmm1, xmm0
movsd qword [ebp - 0x9640], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9640]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x440c89
mov eax, dword [ebp - 0xaa4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9630]
addsd xmm1, xmm0
movsd qword [ebp - 0x9630], xmm1
jmp 0x440ca2
mov ecx, 1
test ecx, ecx
je 0x440c9e
jmp 0x440d5e
jmp 0x440cc5
cvtsi2sd xmm0, dword [ebp - 0xaa4]
movsd xmm1, qword [ebp - 0x9630]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xaa8], edx
jmp 0x440d68
xor eax, eax
je 0x440ccf
jmp 0x440cde
jmp 0x440b28
jmp 0x440b28
mov ecx, 2
test ecx, ecx
je 0x440d5e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xaac], eax
cvtsi2sd xmm0, dword [ebp - 0xaac]
mov eax, dword [ebp - 0xaac]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9630]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xaa8], ecx
jmp 0x440d68
mov dword [ebp - 0xaa8], 8
mov edx, dword [ebp - 0xa7c]
add edx, 0xffffffa9
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9648], xmm0
xor eax, eax
je 0x440d82
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x440dbe
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9648]
movsd qword [ebp - 0x9650], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x440f5e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x440f5e
mov dword [ebp - 0xab0], 0
jmp 0x440e3d
cmp dword [ebp - 0xab0], 0xf
jae 0x440f59
cvtsi2sd xmm0, dword [ebp - 0xab0]
movsd xmm1, qword [ebp - 0x9650]
addsd xmm1, xmm0
movsd qword [ebp - 0x9658], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9658]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x440eac
mov ecx, dword [ebp - 0xab0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9650]
addsd xmm1, xmm0
movsd qword [ebp - 0x9650], xmm1
jmp 0x440da8
cvtsi2sd xmm0, dword [ebp - 0xab0]
movsd xmm1, qword [ebp - 0x9650]
addsd xmm1, xmm0
movsd qword [ebp - 0x9660], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9660]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x440f09
mov eax, dword [ebp - 0xab0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9650]
addsd xmm1, xmm0
movsd qword [ebp - 0x9650], xmm1
jmp 0x440f22
mov ecx, 1
test ecx, ecx
je 0x440f1e
jmp 0x440fde
jmp 0x440f45
cvtsi2sd xmm0, dword [ebp - 0xab0]
movsd xmm1, qword [ebp - 0x9650]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xab4], edx
jmp 0x440fe8
xor eax, eax
je 0x440f4f
jmp 0x440f5e
jmp 0x440da8
jmp 0x440da8
mov ecx, 2
test ecx, ecx
je 0x440fde
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xab8], eax
cvtsi2sd xmm0, dword [ebp - 0xab8]
mov eax, dword [ebp - 0xab8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9650]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xab4], ecx
jmp 0x440fe8
mov dword [ebp - 0xab4], 8
mov edx, dword [ebp - 0xa7c]
shl edx, 2
add edx, dword [ebp - 0xa78]
mov eax, dword [ebp - 0xaa8]
add eax, dword [edx]
mov ecx, dword [ebp - 0xa7c]
shl ecx, 2
add ecx, dword [ebp - 0xa78]
mov edx, dword [ebp - 0xab4]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xa7c]
shl ecx, 2
add ecx, dword [ebp - 0xa78]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4412f6
xor eax, eax
je 0x441068
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4410a4
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e90]
movsd qword [ebp - 0x9668], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x441244
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x441244
mov dword [ebp - 0xabc], 0
jmp 0x441123
cmp dword [ebp - 0xabc], 0xf
jae 0x44123f
cvtsi2sd xmm0, dword [ebp - 0xabc]
movsd xmm1, qword [ebp - 0x9668]
addsd xmm1, xmm0
movsd qword [ebp - 0x9670], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9670]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x441192
mov ecx, dword [ebp - 0xabc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9668]
addsd xmm1, xmm0
movsd qword [ebp - 0x9668], xmm1
jmp 0x44108e
cvtsi2sd xmm0, dword [ebp - 0xabc]
movsd xmm1, qword [ebp - 0x9668]
addsd xmm1, xmm0
movsd qword [ebp - 0x9678], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9678]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4411ef
mov eax, dword [ebp - 0xabc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9668]
addsd xmm1, xmm0
movsd qword [ebp - 0x9668], xmm1
jmp 0x441208
mov ecx, 1
test ecx, ecx
je 0x441204
jmp 0x4412c4
jmp 0x44122b
cvtsi2sd xmm0, dword [ebp - 0xabc]
movsd xmm1, qword [ebp - 0x9668]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xac0], edx
jmp 0x4412ce
xor eax, eax
je 0x441235
jmp 0x441244
jmp 0x44108e
jmp 0x44108e
mov ecx, 2
test ecx, ecx
je 0x4412c4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xac4], eax
cvtsi2sd xmm0, dword [ebp - 0xac4]
mov eax, dword [ebp - 0xac4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9668]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xac0], ecx
jmp 0x4412ce
mov dword [ebp - 0xac0], 8
mov edx, dword [ebp - 0xa7c]
shl edx, 2
add edx, dword [ebp - 0xa78]
mov eax, dword [ebp - 0xac0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xa7c]
shl ecx, 2
add ecx, dword [ebp - 0xa78]
mov dword [ecx], eax
jmp 0x440226
mov edx, dword [ebp - 0xa74]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xa74]
mov dword [ebp - 0xac8], eax
mov ecx, dword [ebp - 0xac8]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xacc], ecx
mov edx, dword [ebp - 0xacc]
shl edx, 2
add edx, 0x785068
mov eax, dword [edx]
call eax
test eax, eax
jne 0x44c067
xor ecx, ecx
mov byte [ebp - 0x1a], cl
lea ecx, [ebp - 0x1a]
call fcn.00425d00
mov dword [ebp - 0xad0], eax
mov edx, dword [ebp - 0xad0]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x442455
mov ecx, dword [ebp - 0xad0]
mov dword [ebp - 0xad4], ecx
mov dword [ebp - 0xad8], 0
jmp 0x44138f
mov edx, dword [ebp - 0xad8]
add edx, 1
mov dword [ebp - 0xad8], edx
cmp dword [ebp - 0xad8], 1
jae 0x442455
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x441667
xor eax, eax
je 0x4413d9
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x441415
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736ea8]
movsd qword [ebp - 0x9680], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4415b5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4415b5
mov dword [ebp - 0xadc], 0
jmp 0x441494
cmp dword [ebp - 0xadc], 0xf
jae 0x4415b0
cvtsi2sd xmm0, dword [ebp - 0xadc]
movsd xmm1, qword [ebp - 0x9680]
addsd xmm1, xmm0
movsd qword [ebp - 0x9688], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9688]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x441503
mov ecx, dword [ebp - 0xadc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9680]
addsd xmm1, xmm0
movsd qword [ebp - 0x9680], xmm1
jmp 0x4413ff
cvtsi2sd xmm0, dword [ebp - 0xadc]
movsd xmm1, qword [ebp - 0x9680]
addsd xmm1, xmm0
movsd qword [ebp - 0x9690], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9690]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x441560
mov eax, dword [ebp - 0xadc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9680]
addsd xmm1, xmm0
movsd qword [ebp - 0x9680], xmm1
jmp 0x441579
mov ecx, 1
test ecx, ecx
je 0x441575
jmp 0x441635
jmp 0x44159c
cvtsi2sd xmm0, dword [ebp - 0xadc]
movsd xmm1, qword [ebp - 0x9680]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xae0], edx
jmp 0x44163f
xor eax, eax
je 0x4415a6
jmp 0x4415b5
jmp 0x4413ff
jmp 0x4413ff
mov ecx, 2
test ecx, ecx
je 0x441635
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xae4], eax
cvtsi2sd xmm0, dword [ebp - 0xae4]
mov eax, dword [ebp - 0xae4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9680]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xae0], ecx
jmp 0x44163f
mov dword [ebp - 0xae0], 8
mov edx, dword [ebp - 0xad8]
shl edx, 2
add edx, dword [ebp - 0xad4]
mov eax, dword [ebp - 0xae0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xad8]
shl ecx, 2
add ecx, dword [ebp - 0xad4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x442185
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x441977
xor eax, eax
je 0x4416e9
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x441725
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea0]
movsd qword [ebp - 0x9698], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4418c5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4418c5
mov dword [ebp - 0xae8], 0
jmp 0x4417a4
cmp dword [ebp - 0xae8], 0xf
jae 0x4418c0
cvtsi2sd xmm0, dword [ebp - 0xae8]
movsd xmm1, qword [ebp - 0x9698]
addsd xmm1, xmm0
movsd qword [ebp - 0x96a0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x96a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x441813
mov ecx, dword [ebp - 0xae8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9698]
addsd xmm1, xmm0
movsd qword [ebp - 0x9698], xmm1
jmp 0x44170f
cvtsi2sd xmm0, dword [ebp - 0xae8]
movsd xmm1, qword [ebp - 0x9698]
addsd xmm1, xmm0
movsd qword [ebp - 0x96a8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x96a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x441870
mov eax, dword [ebp - 0xae8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9698]
addsd xmm1, xmm0
movsd qword [ebp - 0x9698], xmm1
jmp 0x441889
mov ecx, 1
test ecx, ecx
je 0x441885
jmp 0x441945
jmp 0x4418ac
cvtsi2sd xmm0, dword [ebp - 0xae8]
movsd xmm1, qword [ebp - 0x9698]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xaec], edx
jmp 0x44194f
xor eax, eax
je 0x4418b6
jmp 0x4418c5
jmp 0x44170f
jmp 0x44170f
mov ecx, 2
test ecx, ecx
je 0x441945
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xaf0], eax
cvtsi2sd xmm0, dword [ebp - 0xaf0]
mov eax, dword [ebp - 0xaf0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9698]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xaec], ecx
jmp 0x44194f
mov dword [ebp - 0xaec], 8
mov edx, dword [ebp - 0xad8]
shl edx, 2
add edx, dword [ebp - 0xad4]
mov eax, dword [ebp - 0xaec]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xad8]
shl ecx, 2
add ecx, dword [ebp - 0xad4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x441c42
xor eax, eax
je 0x4419b4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4419f0
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e98]
movsd qword [ebp - 0x96b0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x441b90
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x441b90
mov dword [ebp - 0xaf4], 0
jmp 0x441a6f
cmp dword [ebp - 0xaf4], 0xf
jae 0x441b8b
cvtsi2sd xmm0, dword [ebp - 0xaf4]
movsd xmm1, qword [ebp - 0x96b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x96b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x96b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x441ade
mov ecx, dword [ebp - 0xaf4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x96b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x96b0], xmm1
jmp 0x4419da
cvtsi2sd xmm0, dword [ebp - 0xaf4]
movsd xmm1, qword [ebp - 0x96b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x96c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x96c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x441b3b
mov eax, dword [ebp - 0xaf4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x96b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x96b0], xmm1
jmp 0x441b54
mov ecx, 1
test ecx, ecx
je 0x441b50
jmp 0x441c10
jmp 0x441b77
cvtsi2sd xmm0, dword [ebp - 0xaf4]
movsd xmm1, qword [ebp - 0x96b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xaf8], edx
jmp 0x441c1a
xor eax, eax
je 0x441b81
jmp 0x441b90
jmp 0x4419da
jmp 0x4419da
mov ecx, 2
test ecx, ecx
je 0x441c10
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xafc], eax
cvtsi2sd xmm0, dword [ebp - 0xafc]
mov eax, dword [ebp - 0xafc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x96b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xaf8], ecx
jmp 0x441c1a
mov dword [ebp - 0xaf8], 8
mov edx, dword [ebp - 0xad8]
shl edx, 2
add edx, dword [ebp - 0xad4]
mov eax, dword [ebp - 0xaf8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xad8]
shl ecx, 2
add ecx, dword [ebp - 0xad4]
mov dword [ecx], eax
mov edx, dword [ebp - 0xad8]
add edx, 0xffffffa9
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x96c8], xmm0
xor eax, eax
je 0x441c5c
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x441c98
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x96c8]
movsd qword [ebp - 0x96d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x441e38
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x441e38
mov dword [ebp - 0xb00], 0
jmp 0x441d17
cmp dword [ebp - 0xb00], 0xf
jae 0x441e33
cvtsi2sd xmm0, dword [ebp - 0xb00]
movsd xmm1, qword [ebp - 0x96d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x96d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x96d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x441d86
mov ecx, dword [ebp - 0xb00]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x96d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x96d0], xmm1
jmp 0x441c82
cvtsi2sd xmm0, dword [ebp - 0xb00]
movsd xmm1, qword [ebp - 0x96d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x96e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x96e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x441de3
mov eax, dword [ebp - 0xb00]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x96d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x96d0], xmm1
jmp 0x441dfc
mov ecx, 1
test ecx, ecx
je 0x441df8
jmp 0x441eb8
jmp 0x441e1f
cvtsi2sd xmm0, dword [ebp - 0xb00]
movsd xmm1, qword [ebp - 0x96d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xb04], edx
jmp 0x441ec2
xor eax, eax
je 0x441e29
jmp 0x441e38
jmp 0x441c82
jmp 0x441c82
mov ecx, 2
test ecx, ecx
je 0x441eb8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xb08], eax
cvtsi2sd xmm0, dword [ebp - 0xb08]
mov eax, dword [ebp - 0xb08]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x96d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xb04], ecx
jmp 0x441ec2
mov dword [ebp - 0xb04], 8
mov edx, dword [ebp - 0xad8]
add edx, 0xffffffa9
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x96e8], xmm0
xor eax, eax
je 0x441edc
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x441f18
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x96e8]
movsd qword [ebp - 0x96f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4420b8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4420b8
mov dword [ebp - 0xb0c], 0
jmp 0x441f97
cmp dword [ebp - 0xb0c], 0xf
jae 0x4420b3
cvtsi2sd xmm0, dword [ebp - 0xb0c]
movsd xmm1, qword [ebp - 0x96f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x96f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x96f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x442006
mov ecx, dword [ebp - 0xb0c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x96f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x96f0], xmm1
jmp 0x441f02
cvtsi2sd xmm0, dword [ebp - 0xb0c]
movsd xmm1, qword [ebp - 0x96f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9700], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9700]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x442063
mov eax, dword [ebp - 0xb0c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x96f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x96f0], xmm1
jmp 0x44207c
mov ecx, 1
test ecx, ecx
je 0x442078
jmp 0x442138
jmp 0x44209f
cvtsi2sd xmm0, dword [ebp - 0xb0c]
movsd xmm1, qword [ebp - 0x96f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xb10], edx
jmp 0x442142
xor eax, eax
je 0x4420a9
jmp 0x4420b8
jmp 0x441f02
jmp 0x441f02
mov ecx, 2
test ecx, ecx
je 0x442138
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xb14], eax
cvtsi2sd xmm0, dword [ebp - 0xb14]
mov eax, dword [ebp - 0xb14]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x96f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xb10], ecx
jmp 0x442142
mov dword [ebp - 0xb10], 8
mov edx, dword [ebp - 0xad8]
shl edx, 2
add edx, dword [ebp - 0xad4]
mov eax, dword [ebp - 0xb04]
add eax, dword [edx]
mov ecx, dword [ebp - 0xad8]
shl ecx, 2
add ecx, dword [ebp - 0xad4]
mov edx, dword [ebp - 0xb10]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xad8]
shl ecx, 2
add ecx, dword [ebp - 0xad4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x442450
xor eax, eax
je 0x4421c2
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4421fe
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e90]
movsd qword [ebp - 0x9708], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44239e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44239e
mov dword [ebp - 0xb18], 0
jmp 0x44227d
cmp dword [ebp - 0xb18], 0xf
jae 0x442399
cvtsi2sd xmm0, dword [ebp - 0xb18]
movsd xmm1, qword [ebp - 0x9708]
addsd xmm1, xmm0
movsd qword [ebp - 0x9710], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9710]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4422ec
mov ecx, dword [ebp - 0xb18]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9708]
addsd xmm1, xmm0
movsd qword [ebp - 0x9708], xmm1
jmp 0x4421e8
cvtsi2sd xmm0, dword [ebp - 0xb18]
movsd xmm1, qword [ebp - 0x9708]
addsd xmm1, xmm0
movsd qword [ebp - 0x9718], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9718]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x442349
mov eax, dword [ebp - 0xb18]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9708]
addsd xmm1, xmm0
movsd qword [ebp - 0x9708], xmm1
jmp 0x442362
mov ecx, 1
test ecx, ecx
je 0x44235e
jmp 0x44241e
jmp 0x442385
cvtsi2sd xmm0, dword [ebp - 0xb18]
movsd xmm1, qword [ebp - 0x9708]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xb1c], edx
jmp 0x442428
xor eax, eax
je 0x44238f
jmp 0x44239e
jmp 0x4421e8
jmp 0x4421e8
mov ecx, 2
test ecx, ecx
je 0x44241e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xb20], eax
cvtsi2sd xmm0, dword [ebp - 0xb20]
mov eax, dword [ebp - 0xb20]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9708]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xb1c], ecx
jmp 0x442428
mov dword [ebp - 0xb1c], 8
mov edx, dword [ebp - 0xad8]
shl edx, 2
add edx, dword [ebp - 0xad4]
mov eax, dword [ebp - 0xb1c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xad8]
shl ecx, 2
add ecx, dword [ebp - 0xad4]
mov dword [ecx], eax
jmp 0x441380
mov edx, dword [ebp - 0xad0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xad0]
mov dword [ebp - 0xb24], eax
mov ecx, dword [ebp - 0xb24]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xb28], ecx
mov edx, dword [ebp - 0xb28]
mov dword [ebp - 0xb2c], edx
xor eax, eax
mov byte [ebp - 0x1b], al
lea ecx, [ebp - 0x1b]
call fcn.00425cd0
mov dword [ebp - 0xb30], eax
mov ecx, dword [ebp - 0xb30]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4435a0
mov eax, dword [ebp - 0xb30]
mov dword [ebp - 0xb34], eax
mov dword [ebp - 0xb38], 0
jmp 0x4424da
mov ecx, dword [ebp - 0xb38]
add ecx, 1
mov dword [ebp - 0xb38], ecx
cmp dword [ebp - 0xb38], 1
jae 0x4435a0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4427b2
xor eax, eax
je 0x442524
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x442560
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea0]
movsd qword [ebp - 0x9720], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x442700
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x442700
mov dword [ebp - 0xb3c], 0
jmp 0x4425df
cmp dword [ebp - 0xb3c], 0xf
jae 0x4426fb
cvtsi2sd xmm0, dword [ebp - 0xb3c]
movsd xmm1, qword [ebp - 0x9720]
addsd xmm1, xmm0
movsd qword [ebp - 0x9728], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9728]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44264e
mov ecx, dword [ebp - 0xb3c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9720]
addsd xmm1, xmm0
movsd qword [ebp - 0x9720], xmm1
jmp 0x44254a
cvtsi2sd xmm0, dword [ebp - 0xb3c]
movsd xmm1, qword [ebp - 0x9720]
addsd xmm1, xmm0
movsd qword [ebp - 0x9730], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9730]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4426ab
mov eax, dword [ebp - 0xb3c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9720]
addsd xmm1, xmm0
movsd qword [ebp - 0x9720], xmm1
jmp 0x4426c4
mov ecx, 1
test ecx, ecx
je 0x4426c0
jmp 0x442780
jmp 0x4426e7
cvtsi2sd xmm0, dword [ebp - 0xb3c]
movsd xmm1, qword [ebp - 0x9720]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xb40], edx
jmp 0x44278a
xor eax, eax
je 0x4426f1
jmp 0x442700
jmp 0x44254a
jmp 0x44254a
mov ecx, 2
test ecx, ecx
je 0x442780
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xb44], eax
cvtsi2sd xmm0, dword [ebp - 0xb44]
mov eax, dword [ebp - 0xb44]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9720]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xb40], ecx
jmp 0x44278a
mov dword [ebp - 0xb40], 8
mov edx, dword [ebp - 0xb38]
shl edx, 2
add edx, dword [ebp - 0xb34]
mov eax, dword [ebp - 0xb40]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xb38]
shl ecx, 2
add ecx, dword [ebp - 0xb34]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4432d0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x442ac2
xor eax, eax
je 0x442834
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x442870
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e98]
movsd qword [ebp - 0x9738], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x442a10
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x442a10
mov dword [ebp - 0xb48], 0
jmp 0x4428ef
cmp dword [ebp - 0xb48], 0xf
jae 0x442a0b
cvtsi2sd xmm0, dword [ebp - 0xb48]
movsd xmm1, qword [ebp - 0x9738]
addsd xmm1, xmm0
movsd qword [ebp - 0x9740], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9740]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44295e
mov ecx, dword [ebp - 0xb48]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9738]
addsd xmm1, xmm0
movsd qword [ebp - 0x9738], xmm1
jmp 0x44285a
cvtsi2sd xmm0, dword [ebp - 0xb48]
movsd xmm1, qword [ebp - 0x9738]
addsd xmm1, xmm0
movsd qword [ebp - 0x9748], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9748]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4429bb
mov eax, dword [ebp - 0xb48]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9738]
addsd xmm1, xmm0
movsd qword [ebp - 0x9738], xmm1
jmp 0x4429d4
mov ecx, 1
test ecx, ecx
je 0x4429d0
jmp 0x442a90
jmp 0x4429f7
cvtsi2sd xmm0, dword [ebp - 0xb48]
movsd xmm1, qword [ebp - 0x9738]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xb4c], edx
jmp 0x442a9a
xor eax, eax
je 0x442a01
jmp 0x442a10
jmp 0x44285a
jmp 0x44285a
mov ecx, 2
test ecx, ecx
je 0x442a90
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xb50], eax
cvtsi2sd xmm0, dword [ebp - 0xb50]
mov eax, dword [ebp - 0xb50]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9738]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xb4c], ecx
jmp 0x442a9a
mov dword [ebp - 0xb4c], 8
mov edx, dword [ebp - 0xb38]
shl edx, 2
add edx, dword [ebp - 0xb34]
mov eax, dword [ebp - 0xb4c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xb38]
shl ecx, 2
add ecx, dword [ebp - 0xb34]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x442d8d
xor eax, eax
je 0x442aff
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x442b3b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e90]
movsd qword [ebp - 0x9750], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x442cdb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x442cdb
mov dword [ebp - 0xb54], 0
jmp 0x442bba
cmp dword [ebp - 0xb54], 0xf
jae 0x442cd6
cvtsi2sd xmm0, dword [ebp - 0xb54]
movsd xmm1, qword [ebp - 0x9750]
addsd xmm1, xmm0
movsd qword [ebp - 0x9758], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9758]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x442c29
mov ecx, dword [ebp - 0xb54]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9750]
addsd xmm1, xmm0
movsd qword [ebp - 0x9750], xmm1
jmp 0x442b25
cvtsi2sd xmm0, dword [ebp - 0xb54]
movsd xmm1, qword [ebp - 0x9750]
addsd xmm1, xmm0
movsd qword [ebp - 0x9760], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9760]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x442c86
mov eax, dword [ebp - 0xb54]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9750]
addsd xmm1, xmm0
movsd qword [ebp - 0x9750], xmm1
jmp 0x442c9f
mov ecx, 1
test ecx, ecx
je 0x442c9b
jmp 0x442d5b
jmp 0x442cc2
cvtsi2sd xmm0, dword [ebp - 0xb54]
movsd xmm1, qword [ebp - 0x9750]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xb58], edx
jmp 0x442d65
xor eax, eax
je 0x442ccc
jmp 0x442cdb
jmp 0x442b25
jmp 0x442b25
mov ecx, 2
test ecx, ecx
je 0x442d5b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xb5c], eax
cvtsi2sd xmm0, dword [ebp - 0xb5c]
mov eax, dword [ebp - 0xb5c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9750]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xb58], ecx
jmp 0x442d65
mov dword [ebp - 0xb58], 8
mov edx, dword [ebp - 0xb38]
shl edx, 2
add edx, dword [ebp - 0xb34]
mov eax, dword [ebp - 0xb58]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xb38]
shl ecx, 2
add ecx, dword [ebp - 0xb34]
mov dword [ecx], eax
mov edx, dword [ebp - 0xb38]
add edx, 0xffffffaa
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9768], xmm0
xor eax, eax
je 0x442da7
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x442de3
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9768]
movsd qword [ebp - 0x9770], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x442f83
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x442f83
mov dword [ebp - 0xb60], 0
jmp 0x442e62
cmp dword [ebp - 0xb60], 0xf
jae 0x442f7e
cvtsi2sd xmm0, dword [ebp - 0xb60]
movsd xmm1, qword [ebp - 0x9770]
addsd xmm1, xmm0
movsd qword [ebp - 0x9778], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9778]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x442ed1
mov ecx, dword [ebp - 0xb60]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9770]
addsd xmm1, xmm0
movsd qword [ebp - 0x9770], xmm1
jmp 0x442dcd
cvtsi2sd xmm0, dword [ebp - 0xb60]
movsd xmm1, qword [ebp - 0x9770]
addsd xmm1, xmm0
movsd qword [ebp - 0x9780], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9780]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x442f2e
mov eax, dword [ebp - 0xb60]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9770]
addsd xmm1, xmm0
movsd qword [ebp - 0x9770], xmm1
jmp 0x442f47
mov ecx, 1
test ecx, ecx
je 0x442f43
jmp 0x443003
jmp 0x442f6a
cvtsi2sd xmm0, dword [ebp - 0xb60]
movsd xmm1, qword [ebp - 0x9770]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xb64], edx
jmp 0x44300d
xor eax, eax
je 0x442f74
jmp 0x442f83
jmp 0x442dcd
jmp 0x442dcd
mov ecx, 2
test ecx, ecx
je 0x443003
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xb68], eax
cvtsi2sd xmm0, dword [ebp - 0xb68]
mov eax, dword [ebp - 0xb68]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9770]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xb64], ecx
jmp 0x44300d
mov dword [ebp - 0xb64], 8
mov edx, dword [ebp - 0xb38]
add edx, 0xffffffaa
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9788], xmm0
xor eax, eax
je 0x443027
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x443063
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9788]
movsd qword [ebp - 0x9790], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x443203
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x443203
mov dword [ebp - 0xb6c], 0
jmp 0x4430e2
cmp dword [ebp - 0xb6c], 0xf
jae 0x4431fe
cvtsi2sd xmm0, dword [ebp - 0xb6c]
movsd xmm1, qword [ebp - 0x9790]
addsd xmm1, xmm0
movsd qword [ebp - 0x9798], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9798]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x443151
mov ecx, dword [ebp - 0xb6c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9790]
addsd xmm1, xmm0
movsd qword [ebp - 0x9790], xmm1
jmp 0x44304d
cvtsi2sd xmm0, dword [ebp - 0xb6c]
movsd xmm1, qword [ebp - 0x9790]
addsd xmm1, xmm0
movsd qword [ebp - 0x97a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x97a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4431ae
mov eax, dword [ebp - 0xb6c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9790]
addsd xmm1, xmm0
movsd qword [ebp - 0x9790], xmm1
jmp 0x4431c7
mov ecx, 1
test ecx, ecx
je 0x4431c3
jmp 0x443283
jmp 0x4431ea
cvtsi2sd xmm0, dword [ebp - 0xb6c]
movsd xmm1, qword [ebp - 0x9790]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xb70], edx
jmp 0x44328d
xor eax, eax
je 0x4431f4
jmp 0x443203
jmp 0x44304d
jmp 0x44304d
mov ecx, 2
test ecx, ecx
je 0x443283
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xb74], eax
cvtsi2sd xmm0, dword [ebp - 0xb74]
mov eax, dword [ebp - 0xb74]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9790]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xb70], ecx
jmp 0x44328d
mov dword [ebp - 0xb70], 8
mov edx, dword [ebp - 0xb38]
shl edx, 2
add edx, dword [ebp - 0xb34]
mov eax, dword [ebp - 0xb64]
add eax, dword [edx]
mov ecx, dword [ebp - 0xb38]
shl ecx, 2
add ecx, dword [ebp - 0xb34]
mov edx, dword [ebp - 0xb70]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xb38]
shl ecx, 2
add ecx, dword [ebp - 0xb34]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44359b
xor eax, eax
je 0x44330d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x443349
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e88]
movsd qword [ebp - 0x97a8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4434e9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4434e9
mov dword [ebp - 0xb78], 0
jmp 0x4433c8
cmp dword [ebp - 0xb78], 0xf
jae 0x4434e4
cvtsi2sd xmm0, dword [ebp - 0xb78]
movsd xmm1, qword [ebp - 0x97a8]
addsd xmm1, xmm0
movsd qword [ebp - 0x97b0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x97b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x443437
mov ecx, dword [ebp - 0xb78]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x97a8]
addsd xmm1, xmm0
movsd qword [ebp - 0x97a8], xmm1
jmp 0x443333
cvtsi2sd xmm0, dword [ebp - 0xb78]
movsd xmm1, qword [ebp - 0x97a8]
addsd xmm1, xmm0
movsd qword [ebp - 0x97b8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x97b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x443494
mov eax, dword [ebp - 0xb78]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x97a8]
addsd xmm1, xmm0
movsd qword [ebp - 0x97a8], xmm1
jmp 0x4434ad
mov ecx, 1
test ecx, ecx
je 0x4434a9
jmp 0x443569
jmp 0x4434d0
cvtsi2sd xmm0, dword [ebp - 0xb78]
movsd xmm1, qword [ebp - 0x97a8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xb7c], edx
jmp 0x443573
xor eax, eax
je 0x4434da
jmp 0x4434e9
jmp 0x443333
jmp 0x443333
mov ecx, 2
test ecx, ecx
je 0x443569
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xb80], eax
cvtsi2sd xmm0, dword [ebp - 0xb80]
mov eax, dword [ebp - 0xb80]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x97a8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xb7c], ecx
jmp 0x443573
mov dword [ebp - 0xb7c], 8
mov edx, dword [ebp - 0xb38]
shl edx, 2
add edx, dword [ebp - 0xb34]
mov eax, dword [ebp - 0xb7c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xb38]
shl ecx, 2
add ecx, dword [ebp - 0xb34]
mov dword [ecx], eax
jmp 0x4424cb
mov edx, dword [ebp - 0xb30]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xb30]
mov dword [ebp - 0xb84], eax
mov ecx, dword [ebp - 0xb84]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xb88], ecx
mov edx, dword [ebp - 0xb88]
mov dword [ebp - 0xb8c], edx
xor eax, eax
mov byte [ebp - 0x1c], al
lea ecx, [ebp - 0x1c]
call fcn.00425ca0
mov dword [ebp - 0xb90], eax
mov ecx, dword [ebp - 0xb90]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4446eb
mov eax, dword [ebp - 0xb90]
mov dword [ebp - 0xb94], eax
mov dword [ebp - 0xb98], 0
jmp 0x443625
mov ecx, dword [ebp - 0xb98]
add ecx, 1
mov dword [ebp - 0xb98], ecx
cmp dword [ebp - 0xb98], 1
jae 0x4446eb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4438fd
xor eax, eax
je 0x44366f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4436ab
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736ea0]
movsd qword [ebp - 0x97c0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44384b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44384b
mov dword [ebp - 0xb9c], 0
jmp 0x44372a
cmp dword [ebp - 0xb9c], 0xf
jae 0x443846
cvtsi2sd xmm0, dword [ebp - 0xb9c]
movsd xmm1, qword [ebp - 0x97c0]
addsd xmm1, xmm0
movsd qword [ebp - 0x97c8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x97c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x443799
mov ecx, dword [ebp - 0xb9c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x97c0]
addsd xmm1, xmm0
movsd qword [ebp - 0x97c0], xmm1
jmp 0x443695
cvtsi2sd xmm0, dword [ebp - 0xb9c]
movsd xmm1, qword [ebp - 0x97c0]
addsd xmm1, xmm0
movsd qword [ebp - 0x97d0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x97d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4437f6
mov eax, dword [ebp - 0xb9c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x97c0]
addsd xmm1, xmm0
movsd qword [ebp - 0x97c0], xmm1
jmp 0x44380f
mov ecx, 1
test ecx, ecx
je 0x44380b
jmp 0x4438cb
jmp 0x443832
cvtsi2sd xmm0, dword [ebp - 0xb9c]
movsd xmm1, qword [ebp - 0x97c0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xba0], edx
jmp 0x4438d5
xor eax, eax
je 0x44383c
jmp 0x44384b
jmp 0x443695
jmp 0x443695
mov ecx, 2
test ecx, ecx
je 0x4438cb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xba4], eax
cvtsi2sd xmm0, dword [ebp - 0xba4]
mov eax, dword [ebp - 0xba4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x97c0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xba0], ecx
jmp 0x4438d5
mov dword [ebp - 0xba0], 8
mov edx, dword [ebp - 0xb98]
shl edx, 2
add edx, dword [ebp - 0xb94]
mov eax, dword [ebp - 0xba0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xb98]
shl ecx, 2
add ecx, dword [ebp - 0xb94]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44441b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x443c0d
xor eax, eax
je 0x44397f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4439bb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e98]
movsd qword [ebp - 0x97d8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x443b5b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x443b5b
mov dword [ebp - 0xba8], 0
jmp 0x443a3a
cmp dword [ebp - 0xba8], 0xf
jae 0x443b56
cvtsi2sd xmm0, dword [ebp - 0xba8]
movsd xmm1, qword [ebp - 0x97d8]
addsd xmm1, xmm0
movsd qword [ebp - 0x97e0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x97e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x443aa9
mov ecx, dword [ebp - 0xba8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x97d8]
addsd xmm1, xmm0
movsd qword [ebp - 0x97d8], xmm1
jmp 0x4439a5
cvtsi2sd xmm0, dword [ebp - 0xba8]
movsd xmm1, qword [ebp - 0x97d8]
addsd xmm1, xmm0
movsd qword [ebp - 0x97e8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x97e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x443b06
mov eax, dword [ebp - 0xba8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x97d8]
addsd xmm1, xmm0
movsd qword [ebp - 0x97d8], xmm1
jmp 0x443b1f
mov ecx, 1
test ecx, ecx
je 0x443b1b
jmp 0x443bdb
jmp 0x443b42
cvtsi2sd xmm0, dword [ebp - 0xba8]
movsd xmm1, qword [ebp - 0x97d8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xbac], edx
jmp 0x443be5
xor eax, eax
je 0x443b4c
jmp 0x443b5b
jmp 0x4439a5
jmp 0x4439a5
mov ecx, 2
test ecx, ecx
je 0x443bdb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xbb0], eax
cvtsi2sd xmm0, dword [ebp - 0xbb0]
mov eax, dword [ebp - 0xbb0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x97d8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xbac], ecx
jmp 0x443be5
mov dword [ebp - 0xbac], 8
mov edx, dword [ebp - 0xb98]
shl edx, 2
add edx, dword [ebp - 0xb94]
mov eax, dword [ebp - 0xbac]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xb98]
shl ecx, 2
add ecx, dword [ebp - 0xb94]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x443ed8
xor eax, eax
je 0x443c4a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x443c86
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e90]
movsd qword [ebp - 0x97f0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x443e26
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x443e26
mov dword [ebp - 0xbb4], 0
jmp 0x443d05
cmp dword [ebp - 0xbb4], 0xf
jae 0x443e21
cvtsi2sd xmm0, dword [ebp - 0xbb4]
movsd xmm1, qword [ebp - 0x97f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x97f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x97f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x443d74
mov ecx, dword [ebp - 0xbb4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x97f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x97f0], xmm1
jmp 0x443c70
cvtsi2sd xmm0, dword [ebp - 0xbb4]
movsd xmm1, qword [ebp - 0x97f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9800], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9800]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x443dd1
mov eax, dword [ebp - 0xbb4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x97f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x97f0], xmm1
jmp 0x443dea
mov ecx, 1
test ecx, ecx
je 0x443de6
jmp 0x443ea6
jmp 0x443e0d
cvtsi2sd xmm0, dword [ebp - 0xbb4]
movsd xmm1, qword [ebp - 0x97f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xbb8], edx
jmp 0x443eb0
xor eax, eax
je 0x443e17
jmp 0x443e26
jmp 0x443c70
jmp 0x443c70
mov ecx, 2
test ecx, ecx
je 0x443ea6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xbbc], eax
cvtsi2sd xmm0, dword [ebp - 0xbbc]
mov eax, dword [ebp - 0xbbc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x97f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xbb8], ecx
jmp 0x443eb0
mov dword [ebp - 0xbb8], 8
mov edx, dword [ebp - 0xb98]
shl edx, 2
add edx, dword [ebp - 0xb94]
mov eax, dword [ebp - 0xbb8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xb98]
shl ecx, 2
add ecx, dword [ebp - 0xb94]
mov dword [ecx], eax
mov edx, dword [ebp - 0xb98]
add edx, 0xffffffaa
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9808], xmm0
xor eax, eax
je 0x443ef2
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x443f2e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9808]
movsd qword [ebp - 0x9810], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4440ce
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4440ce
mov dword [ebp - 0xbc0], 0
jmp 0x443fad
cmp dword [ebp - 0xbc0], 0xf
jae 0x4440c9
cvtsi2sd xmm0, dword [ebp - 0xbc0]
movsd xmm1, qword [ebp - 0x9810]
addsd xmm1, xmm0
movsd qword [ebp - 0x9818], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9818]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44401c
mov ecx, dword [ebp - 0xbc0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9810]
addsd xmm1, xmm0
movsd qword [ebp - 0x9810], xmm1
jmp 0x443f18
cvtsi2sd xmm0, dword [ebp - 0xbc0]
movsd xmm1, qword [ebp - 0x9810]
addsd xmm1, xmm0
movsd qword [ebp - 0x9820], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9820]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x444079
mov eax, dword [ebp - 0xbc0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9810]
addsd xmm1, xmm0
movsd qword [ebp - 0x9810], xmm1
jmp 0x444092
mov ecx, 1
test ecx, ecx
je 0x44408e
jmp 0x44414e
jmp 0x4440b5
cvtsi2sd xmm0, dword [ebp - 0xbc0]
movsd xmm1, qword [ebp - 0x9810]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xbc4], edx
jmp 0x444158
xor eax, eax
je 0x4440bf
jmp 0x4440ce
jmp 0x443f18
jmp 0x443f18
mov ecx, 2
test ecx, ecx
je 0x44414e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xbc8], eax
cvtsi2sd xmm0, dword [ebp - 0xbc8]
mov eax, dword [ebp - 0xbc8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9810]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xbc4], ecx
jmp 0x444158
mov dword [ebp - 0xbc4], 8
mov edx, dword [ebp - 0xb98]
add edx, 0xffffffaa
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9828], xmm0
xor eax, eax
je 0x444172
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4441ae
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9828]
movsd qword [ebp - 0x9830], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44434e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44434e
mov dword [ebp - 0xbcc], 0
jmp 0x44422d
cmp dword [ebp - 0xbcc], 0xf
jae 0x444349
cvtsi2sd xmm0, dword [ebp - 0xbcc]
movsd xmm1, qword [ebp - 0x9830]
addsd xmm1, xmm0
movsd qword [ebp - 0x9838], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9838]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44429c
mov ecx, dword [ebp - 0xbcc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9830]
addsd xmm1, xmm0
movsd qword [ebp - 0x9830], xmm1
jmp 0x444198
cvtsi2sd xmm0, dword [ebp - 0xbcc]
movsd xmm1, qword [ebp - 0x9830]
addsd xmm1, xmm0
movsd qword [ebp - 0x9840], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9840]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4442f9
mov eax, dword [ebp - 0xbcc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9830]
addsd xmm1, xmm0
movsd qword [ebp - 0x9830], xmm1
jmp 0x444312
mov ecx, 1
test ecx, ecx
je 0x44430e
jmp 0x4443ce
jmp 0x444335
cvtsi2sd xmm0, dword [ebp - 0xbcc]
movsd xmm1, qword [ebp - 0x9830]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xbd0], edx
jmp 0x4443d8
xor eax, eax
je 0x44433f
jmp 0x44434e
jmp 0x444198
jmp 0x444198
mov ecx, 2
test ecx, ecx
je 0x4443ce
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xbd4], eax
cvtsi2sd xmm0, dword [ebp - 0xbd4]
mov eax, dword [ebp - 0xbd4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9830]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xbd0], ecx
jmp 0x4443d8
mov dword [ebp - 0xbd0], 8
mov edx, dword [ebp - 0xb98]
shl edx, 2
add edx, dword [ebp - 0xb94]
mov eax, dword [ebp - 0xbc4]
add eax, dword [edx]
mov ecx, dword [ebp - 0xb98]
shl ecx, 2
add ecx, dword [ebp - 0xb94]
mov edx, dword [ebp - 0xbd0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xb98]
shl ecx, 2
add ecx, dword [ebp - 0xb94]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4446e6
xor eax, eax
je 0x444458
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x444494
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e88]
movsd qword [ebp - 0x9848], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x444634
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x444634
mov dword [ebp - 0xbd8], 0
jmp 0x444513
cmp dword [ebp - 0xbd8], 0xf
jae 0x44462f
cvtsi2sd xmm0, dword [ebp - 0xbd8]
movsd xmm1, qword [ebp - 0x9848]
addsd xmm1, xmm0
movsd qword [ebp - 0x9850], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9850]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x444582
mov ecx, dword [ebp - 0xbd8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9848]
addsd xmm1, xmm0
movsd qword [ebp - 0x9848], xmm1
jmp 0x44447e
cvtsi2sd xmm0, dword [ebp - 0xbd8]
movsd xmm1, qword [ebp - 0x9848]
addsd xmm1, xmm0
movsd qword [ebp - 0x9858], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9858]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4445df
mov eax, dword [ebp - 0xbd8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9848]
addsd xmm1, xmm0
movsd qword [ebp - 0x9848], xmm1
jmp 0x4445f8
mov ecx, 1
test ecx, ecx
je 0x4445f4
jmp 0x4446b4
jmp 0x44461b
cvtsi2sd xmm0, dword [ebp - 0xbd8]
movsd xmm1, qword [ebp - 0x9848]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xbdc], edx
jmp 0x4446be
xor eax, eax
je 0x444625
jmp 0x444634
jmp 0x44447e
jmp 0x44447e
mov ecx, 2
test ecx, ecx
je 0x4446b4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xbe0], eax
cvtsi2sd xmm0, dword [ebp - 0xbe0]
mov eax, dword [ebp - 0xbe0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9848]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xbdc], ecx
jmp 0x4446be
mov dword [ebp - 0xbdc], 8
mov edx, dword [ebp - 0xb98]
shl edx, 2
add edx, dword [ebp - 0xb94]
mov eax, dword [ebp - 0xbdc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xb98]
shl ecx, 2
add ecx, dword [ebp - 0xb94]
mov dword [ecx], eax
jmp 0x443616
mov edx, dword [ebp - 0xb90]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xb90]
mov dword [ebp - 0xbe4], eax
mov ecx, dword [ebp - 0xbe4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xbe8], ecx
mov edx, dword [ebp - 0xbe8]
mov dword [ebp - 0xbec], edx
mov eax, dword [ebp - 0xb8c]
mov dword [ebp - 0xb2c], eax
cmp dword [ebp - 0xb2c], 0
je 0x445888
xor ecx, ecx
mov byte [ebp - 0x1d], cl
lea ecx, [ebp - 0x1d]
call fcn.00425c70
mov dword [ebp - 0xbf0], eax
mov edx, dword [ebp - 0xbf0]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x44584f
mov ecx, dword [ebp - 0xbf0]
mov dword [ebp - 0xbf4], ecx
mov dword [ebp - 0xbf8], 0
jmp 0x444789
mov edx, dword [ebp - 0xbf8]
add edx, 1
mov dword [ebp - 0xbf8], edx
cmp dword [ebp - 0xbf8], 1
jae 0x44584f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x444a61
xor eax, eax
je 0x4447d3
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x44480f
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736ea0]
movsd qword [ebp - 0x9860], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4449af
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4449af
mov dword [ebp - 0xbfc], 0
jmp 0x44488e
cmp dword [ebp - 0xbfc], 0xf
jae 0x4449aa
cvtsi2sd xmm0, dword [ebp - 0xbfc]
movsd xmm1, qword [ebp - 0x9860]
addsd xmm1, xmm0
movsd qword [ebp - 0x9868], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9868]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4448fd
mov ecx, dword [ebp - 0xbfc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9860]
addsd xmm1, xmm0
movsd qword [ebp - 0x9860], xmm1
jmp 0x4447f9
cvtsi2sd xmm0, dword [ebp - 0xbfc]
movsd xmm1, qword [ebp - 0x9860]
addsd xmm1, xmm0
movsd qword [ebp - 0x9870], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9870]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44495a
mov eax, dword [ebp - 0xbfc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9860]
addsd xmm1, xmm0
movsd qword [ebp - 0x9860], xmm1
jmp 0x444973
mov ecx, 1
test ecx, ecx
je 0x44496f
jmp 0x444a2f
jmp 0x444996
cvtsi2sd xmm0, dword [ebp - 0xbfc]
movsd xmm1, qword [ebp - 0x9860]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xc00], edx
jmp 0x444a39
xor eax, eax
je 0x4449a0
jmp 0x4449af
jmp 0x4447f9
jmp 0x4447f9
mov ecx, 2
test ecx, ecx
je 0x444a2f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xc04], eax
cvtsi2sd xmm0, dword [ebp - 0xc04]
mov eax, dword [ebp - 0xc04]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9860]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xc00], ecx
jmp 0x444a39
mov dword [ebp - 0xc00], 8
mov edx, dword [ebp - 0xbf8]
shl edx, 2
add edx, dword [ebp - 0xbf4]
mov eax, dword [ebp - 0xc00]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xbf8]
shl ecx, 2
add ecx, dword [ebp - 0xbf4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44557f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x444d71
xor eax, eax
je 0x444ae3
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x444b1f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e98]
movsd qword [ebp - 0x9878], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x444cbf
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x444cbf
mov dword [ebp - 0xc08], 0
jmp 0x444b9e
cmp dword [ebp - 0xc08], 0xf
jae 0x444cba
cvtsi2sd xmm0, dword [ebp - 0xc08]
movsd xmm1, qword [ebp - 0x9878]
addsd xmm1, xmm0
movsd qword [ebp - 0x9880], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9880]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x444c0d
mov ecx, dword [ebp - 0xc08]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9878]
addsd xmm1, xmm0
movsd qword [ebp - 0x9878], xmm1
jmp 0x444b09
cvtsi2sd xmm0, dword [ebp - 0xc08]
movsd xmm1, qword [ebp - 0x9878]
addsd xmm1, xmm0
movsd qword [ebp - 0x9888], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9888]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x444c6a
mov eax, dword [ebp - 0xc08]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9878]
addsd xmm1, xmm0
movsd qword [ebp - 0x9878], xmm1
jmp 0x444c83
mov ecx, 1
test ecx, ecx
je 0x444c7f
jmp 0x444d3f
jmp 0x444ca6
cvtsi2sd xmm0, dword [ebp - 0xc08]
movsd xmm1, qword [ebp - 0x9878]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xc0c], edx
jmp 0x444d49
xor eax, eax
je 0x444cb0
jmp 0x444cbf
jmp 0x444b09
jmp 0x444b09
mov ecx, 2
test ecx, ecx
je 0x444d3f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xc10], eax
cvtsi2sd xmm0, dword [ebp - 0xc10]
mov eax, dword [ebp - 0xc10]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9878]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xc0c], ecx
jmp 0x444d49
mov dword [ebp - 0xc0c], 8
mov edx, dword [ebp - 0xbf8]
shl edx, 2
add edx, dword [ebp - 0xbf4]
mov eax, dword [ebp - 0xc0c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xbf8]
shl ecx, 2
add ecx, dword [ebp - 0xbf4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44503c
xor eax, eax
je 0x444dae
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x444dea
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e90]
movsd qword [ebp - 0x9890], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x444f8a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x444f8a
mov dword [ebp - 0xc14], 0
jmp 0x444e69
cmp dword [ebp - 0xc14], 0xf
jae 0x444f85
cvtsi2sd xmm0, dword [ebp - 0xc14]
movsd xmm1, qword [ebp - 0x9890]
addsd xmm1, xmm0
movsd qword [ebp - 0x9898], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9898]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x444ed8
mov ecx, dword [ebp - 0xc14]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9890]
addsd xmm1, xmm0
movsd qword [ebp - 0x9890], xmm1
jmp 0x444dd4
cvtsi2sd xmm0, dword [ebp - 0xc14]
movsd xmm1, qword [ebp - 0x9890]
addsd xmm1, xmm0
movsd qword [ebp - 0x98a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x98a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x444f35
mov eax, dword [ebp - 0xc14]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9890]
addsd xmm1, xmm0
movsd qword [ebp - 0x9890], xmm1
jmp 0x444f4e
mov ecx, 1
test ecx, ecx
je 0x444f4a
jmp 0x44500a
jmp 0x444f71
cvtsi2sd xmm0, dword [ebp - 0xc14]
movsd xmm1, qword [ebp - 0x9890]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xc18], edx
jmp 0x445014
xor eax, eax
je 0x444f7b
jmp 0x444f8a
jmp 0x444dd4
jmp 0x444dd4
mov ecx, 2
test ecx, ecx
je 0x44500a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xc1c], eax
cvtsi2sd xmm0, dword [ebp - 0xc1c]
mov eax, dword [ebp - 0xc1c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9890]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xc18], ecx
jmp 0x445014
mov dword [ebp - 0xc18], 8
mov edx, dword [ebp - 0xbf8]
shl edx, 2
add edx, dword [ebp - 0xbf4]
mov eax, dword [ebp - 0xc18]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xbf8]
shl ecx, 2
add ecx, dword [ebp - 0xbf4]
mov dword [ecx], eax
mov edx, dword [ebp - 0xbf8]
add edx, 0xffffffaa
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x98a8], xmm0
xor eax, eax
je 0x445056
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x445092
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x98a8]
movsd qword [ebp - 0x98b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x445232
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x445232
mov dword [ebp - 0xc20], 0
jmp 0x445111
cmp dword [ebp - 0xc20], 0xf
jae 0x44522d
cvtsi2sd xmm0, dword [ebp - 0xc20]
movsd xmm1, qword [ebp - 0x98b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x98b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x98b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x445180
mov ecx, dword [ebp - 0xc20]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x98b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x98b0], xmm1
jmp 0x44507c
cvtsi2sd xmm0, dword [ebp - 0xc20]
movsd xmm1, qword [ebp - 0x98b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x98c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x98c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4451dd
mov eax, dword [ebp - 0xc20]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x98b0]
addsd xmm1, xmm0
movsd qword [ebp - 0x98b0], xmm1
jmp 0x4451f6
mov ecx, 1
test ecx, ecx
je 0x4451f2
jmp 0x4452b2
jmp 0x445219
cvtsi2sd xmm0, dword [ebp - 0xc20]
movsd xmm1, qword [ebp - 0x98b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xc24], edx
jmp 0x4452bc
xor eax, eax
je 0x445223
jmp 0x445232
jmp 0x44507c
jmp 0x44507c
mov ecx, 2
test ecx, ecx
je 0x4452b2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xc28], eax
cvtsi2sd xmm0, dword [ebp - 0xc28]
mov eax, dword [ebp - 0xc28]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x98b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xc24], ecx
jmp 0x4452bc
mov dword [ebp - 0xc24], 8
mov edx, dword [ebp - 0xbf8]
add edx, 0xffffffaa
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x98c8], xmm0
xor eax, eax
je 0x4452d6
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x445312
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x98c8]
movsd qword [ebp - 0x98d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4454b2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4454b2
mov dword [ebp - 0xc2c], 0
jmp 0x445391
cmp dword [ebp - 0xc2c], 0xf
jae 0x4454ad
cvtsi2sd xmm0, dword [ebp - 0xc2c]
movsd xmm1, qword [ebp - 0x98d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x98d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x98d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x445400
mov ecx, dword [ebp - 0xc2c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x98d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x98d0], xmm1
jmp 0x4452fc
cvtsi2sd xmm0, dword [ebp - 0xc2c]
movsd xmm1, qword [ebp - 0x98d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x98e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x98e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44545d
mov eax, dword [ebp - 0xc2c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x98d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x98d0], xmm1
jmp 0x445476
mov ecx, 1
test ecx, ecx
je 0x445472
jmp 0x445532
jmp 0x445499
cvtsi2sd xmm0, dword [ebp - 0xc2c]
movsd xmm1, qword [ebp - 0x98d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xc30], edx
jmp 0x44553c
xor eax, eax
je 0x4454a3
jmp 0x4454b2
jmp 0x4452fc
jmp 0x4452fc
mov ecx, 2
test ecx, ecx
je 0x445532
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xc34], eax
cvtsi2sd xmm0, dword [ebp - 0xc34]
mov eax, dword [ebp - 0xc34]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x98d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xc30], ecx
jmp 0x44553c
mov dword [ebp - 0xc30], 8
mov edx, dword [ebp - 0xbf8]
shl edx, 2
add edx, dword [ebp - 0xbf4]
mov eax, dword [ebp - 0xc24]
add eax, dword [edx]
mov ecx, dword [ebp - 0xbf8]
shl ecx, 2
add ecx, dword [ebp - 0xbf4]
mov edx, dword [ebp - 0xc30]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xbf8]
shl ecx, 2
add ecx, dword [ebp - 0xbf4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44584a
xor eax, eax
je 0x4455bc
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4455f8
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e88]
movsd qword [ebp - 0x98e8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x445798
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x445798
mov dword [ebp - 0xc38], 0
jmp 0x445677
cmp dword [ebp - 0xc38], 0xf
jae 0x445793
cvtsi2sd xmm0, dword [ebp - 0xc38]
movsd xmm1, qword [ebp - 0x98e8]
addsd xmm1, xmm0
movsd qword [ebp - 0x98f0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x98f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4456e6
mov ecx, dword [ebp - 0xc38]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x98e8]
addsd xmm1, xmm0
movsd qword [ebp - 0x98e8], xmm1
jmp 0x4455e2
cvtsi2sd xmm0, dword [ebp - 0xc38]
movsd xmm1, qword [ebp - 0x98e8]
addsd xmm1, xmm0
movsd qword [ebp - 0x98f8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x98f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x445743
mov eax, dword [ebp - 0xc38]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x98e8]
addsd xmm1, xmm0
movsd qword [ebp - 0x98e8], xmm1
jmp 0x44575c
mov ecx, 1
test ecx, ecx
je 0x445758
jmp 0x445818
jmp 0x44577f
cvtsi2sd xmm0, dword [ebp - 0xc38]
movsd xmm1, qword [ebp - 0x98e8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xc3c], edx
jmp 0x445822
xor eax, eax
je 0x445789
jmp 0x445798
jmp 0x4455e2
jmp 0x4455e2
mov ecx, 2
test ecx, ecx
je 0x445818
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xc40], eax
cvtsi2sd xmm0, dword [ebp - 0xc40]
mov eax, dword [ebp - 0xc40]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x98e8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xc3c], ecx
jmp 0x445822
mov dword [ebp - 0xc3c], 8
mov edx, dword [ebp - 0xbf8]
shl edx, 2
add edx, dword [ebp - 0xbf4]
mov eax, dword [ebp - 0xc3c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xbf8]
shl ecx, 2
add ecx, dword [ebp - 0xbf4]
mov dword [ecx], eax
jmp 0x44477a
mov edx, dword [ebp - 0xbf0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xbf0]
mov dword [ebp - 0xc44], eax
mov ecx, dword [ebp - 0xc44]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xc48], ecx
mov edx, dword [ebp - 0xc48]
mov dword [ebp - 0xbec], edx
xor eax, eax
mov byte [ebp - 0x1e], al
xor ecx, ecx
mov byte [ebp - 0x1f], cl
lea ecx, [ebp - 0x1f]
call fcn.00425c40
mov dword [ebp - 0xc4c], eax
mov edx, dword [ebp - 0xc4c]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x44699f
mov ecx, dword [ebp - 0xc4c]
mov dword [ebp - 0xc50], ecx
mov dword [ebp - 0xc54], 0
jmp 0x4458d9
mov edx, dword [ebp - 0xc54]
add edx, 1
mov dword [ebp - 0xc54], edx
cmp dword [ebp - 0xc54], 1
jae 0x44699f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x445bb1
xor eax, eax
je 0x445923
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x44595f
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e90]
movsd qword [ebp - 0x9900], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x445aff
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x445aff
mov dword [ebp - 0xc58], 0
jmp 0x4459de
cmp dword [ebp - 0xc58], 0xf
jae 0x445afa
cvtsi2sd xmm0, dword [ebp - 0xc58]
movsd xmm1, qword [ebp - 0x9900]
addsd xmm1, xmm0
movsd qword [ebp - 0x9908], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9908]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x445a4d
mov ecx, dword [ebp - 0xc58]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9900]
addsd xmm1, xmm0
movsd qword [ebp - 0x9900], xmm1
jmp 0x445949
cvtsi2sd xmm0, dword [ebp - 0xc58]
movsd xmm1, qword [ebp - 0x9900]
addsd xmm1, xmm0
movsd qword [ebp - 0x9910], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9910]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x445aaa
mov eax, dword [ebp - 0xc58]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9900]
addsd xmm1, xmm0
movsd qword [ebp - 0x9900], xmm1
jmp 0x445ac3
mov ecx, 1
test ecx, ecx
je 0x445abf
jmp 0x445b7f
jmp 0x445ae6
cvtsi2sd xmm0, dword [ebp - 0xc58]
movsd xmm1, qword [ebp - 0x9900]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xc5c], edx
jmp 0x445b89
xor eax, eax
je 0x445af0
jmp 0x445aff
jmp 0x445949
jmp 0x445949
mov ecx, 2
test ecx, ecx
je 0x445b7f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xc60], eax
cvtsi2sd xmm0, dword [ebp - 0xc60]
mov eax, dword [ebp - 0xc60]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9900]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xc5c], ecx
jmp 0x445b89
mov dword [ebp - 0xc5c], 8
mov edx, dword [ebp - 0xc54]
shl edx, 2
add edx, dword [ebp - 0xc50]
mov eax, dword [ebp - 0xc5c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xc54]
shl ecx, 2
add ecx, dword [ebp - 0xc50]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4466cf
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x445ec1
xor eax, eax
je 0x445c33
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x445c6f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e88]
movsd qword [ebp - 0x9918], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x445e0f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x445e0f
mov dword [ebp - 0xc64], 0
jmp 0x445cee
cmp dword [ebp - 0xc64], 0xf
jae 0x445e0a
cvtsi2sd xmm0, dword [ebp - 0xc64]
movsd xmm1, qword [ebp - 0x9918]
addsd xmm1, xmm0
movsd qword [ebp - 0x9920], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9920]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x445d5d
mov ecx, dword [ebp - 0xc64]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9918]
addsd xmm1, xmm0
movsd qword [ebp - 0x9918], xmm1
jmp 0x445c59
cvtsi2sd xmm0, dword [ebp - 0xc64]
movsd xmm1, qword [ebp - 0x9918]
addsd xmm1, xmm0
movsd qword [ebp - 0x9928], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9928]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x445dba
mov eax, dword [ebp - 0xc64]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9918]
addsd xmm1, xmm0
movsd qword [ebp - 0x9918], xmm1
jmp 0x445dd3
mov ecx, 1
test ecx, ecx
je 0x445dcf
jmp 0x445e8f
jmp 0x445df6
cvtsi2sd xmm0, dword [ebp - 0xc64]
movsd xmm1, qword [ebp - 0x9918]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xc68], edx
jmp 0x445e99
xor eax, eax
je 0x445e00
jmp 0x445e0f
jmp 0x445c59
jmp 0x445c59
mov ecx, 2
test ecx, ecx
je 0x445e8f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xc6c], eax
cvtsi2sd xmm0, dword [ebp - 0xc6c]
mov eax, dword [ebp - 0xc6c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9918]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xc68], ecx
jmp 0x445e99
mov dword [ebp - 0xc68], 8
mov edx, dword [ebp - 0xc54]
shl edx, 2
add edx, dword [ebp - 0xc50]
mov eax, dword [ebp - 0xc68]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xc54]
shl ecx, 2
add ecx, dword [ebp - 0xc50]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44618c
xor eax, eax
je 0x445efe
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x445f3a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e80]
movsd qword [ebp - 0x9930], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4460da
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4460da
mov dword [ebp - 0xc70], 0
jmp 0x445fb9
cmp dword [ebp - 0xc70], 0xf
jae 0x4460d5
cvtsi2sd xmm0, dword [ebp - 0xc70]
movsd xmm1, qword [ebp - 0x9930]
addsd xmm1, xmm0
movsd qword [ebp - 0x9938], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9938]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x446028
mov ecx, dword [ebp - 0xc70]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9930]
addsd xmm1, xmm0
movsd qword [ebp - 0x9930], xmm1
jmp 0x445f24
cvtsi2sd xmm0, dword [ebp - 0xc70]
movsd xmm1, qword [ebp - 0x9930]
addsd xmm1, xmm0
movsd qword [ebp - 0x9940], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9940]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x446085
mov eax, dword [ebp - 0xc70]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9930]
addsd xmm1, xmm0
movsd qword [ebp - 0x9930], xmm1
jmp 0x44609e
mov ecx, 1
test ecx, ecx
je 0x44609a
jmp 0x44615a
jmp 0x4460c1
cvtsi2sd xmm0, dword [ebp - 0xc70]
movsd xmm1, qword [ebp - 0x9930]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xc74], edx
jmp 0x446164
xor eax, eax
je 0x4460cb
jmp 0x4460da
jmp 0x445f24
jmp 0x445f24
mov ecx, 2
test ecx, ecx
je 0x44615a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xc78], eax
cvtsi2sd xmm0, dword [ebp - 0xc78]
mov eax, dword [ebp - 0xc78]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9930]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xc74], ecx
jmp 0x446164
mov dword [ebp - 0xc74], 8
mov edx, dword [ebp - 0xc54]
shl edx, 2
add edx, dword [ebp - 0xc50]
mov eax, dword [ebp - 0xc74]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xc54]
shl ecx, 2
add ecx, dword [ebp - 0xc50]
mov dword [ecx], eax
mov edx, dword [ebp - 0xc54]
add edx, 0xffffffac
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9948], xmm0
xor eax, eax
je 0x4461a6
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4461e2
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9948]
movsd qword [ebp - 0x9950], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x446382
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x446382
mov dword [ebp - 0xc7c], 0
jmp 0x446261
cmp dword [ebp - 0xc7c], 0xf
jae 0x44637d
cvtsi2sd xmm0, dword [ebp - 0xc7c]
movsd xmm1, qword [ebp - 0x9950]
addsd xmm1, xmm0
movsd qword [ebp - 0x9958], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9958]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4462d0
mov ecx, dword [ebp - 0xc7c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9950]
addsd xmm1, xmm0
movsd qword [ebp - 0x9950], xmm1
jmp 0x4461cc
cvtsi2sd xmm0, dword [ebp - 0xc7c]
movsd xmm1, qword [ebp - 0x9950]
addsd xmm1, xmm0
movsd qword [ebp - 0x9960], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9960]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44632d
mov eax, dword [ebp - 0xc7c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9950]
addsd xmm1, xmm0
movsd qword [ebp - 0x9950], xmm1
jmp 0x446346
mov ecx, 1
test ecx, ecx
je 0x446342
jmp 0x446402
jmp 0x446369
cvtsi2sd xmm0, dword [ebp - 0xc7c]
movsd xmm1, qword [ebp - 0x9950]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xc80], edx
jmp 0x44640c
xor eax, eax
je 0x446373
jmp 0x446382
jmp 0x4461cc
jmp 0x4461cc
mov ecx, 2
test ecx, ecx
je 0x446402
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xc84], eax
cvtsi2sd xmm0, dword [ebp - 0xc84]
mov eax, dword [ebp - 0xc84]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9950]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xc80], ecx
jmp 0x44640c
mov dword [ebp - 0xc80], 8
mov edx, dword [ebp - 0xc54]
add edx, 0xffffffac
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9968], xmm0
xor eax, eax
je 0x446426
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x446462
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9968]
movsd qword [ebp - 0x9970], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x446602
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x446602
mov dword [ebp - 0xc88], 0
jmp 0x4464e1
cmp dword [ebp - 0xc88], 0xf
jae 0x4465fd
cvtsi2sd xmm0, dword [ebp - 0xc88]
movsd xmm1, qword [ebp - 0x9970]
addsd xmm1, xmm0
movsd qword [ebp - 0x9978], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9978]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x446550
mov ecx, dword [ebp - 0xc88]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9970]
addsd xmm1, xmm0
movsd qword [ebp - 0x9970], xmm1
jmp 0x44644c
cvtsi2sd xmm0, dword [ebp - 0xc88]
movsd xmm1, qword [ebp - 0x9970]
addsd xmm1, xmm0
movsd qword [ebp - 0x9980], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9980]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4465ad
mov eax, dword [ebp - 0xc88]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9970]
addsd xmm1, xmm0
movsd qword [ebp - 0x9970], xmm1
jmp 0x4465c6
mov ecx, 1
test ecx, ecx
je 0x4465c2
jmp 0x446682
jmp 0x4465e9
cvtsi2sd xmm0, dword [ebp - 0xc88]
movsd xmm1, qword [ebp - 0x9970]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xc8c], edx
jmp 0x44668c
xor eax, eax
je 0x4465f3
jmp 0x446602
jmp 0x44644c
jmp 0x44644c
mov ecx, 2
test ecx, ecx
je 0x446682
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xc90], eax
cvtsi2sd xmm0, dword [ebp - 0xc90]
mov eax, dword [ebp - 0xc90]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9970]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xc8c], ecx
jmp 0x44668c
mov dword [ebp - 0xc8c], 8
mov edx, dword [ebp - 0xc54]
shl edx, 2
add edx, dword [ebp - 0xc50]
mov eax, dword [ebp - 0xc80]
add eax, dword [edx]
mov ecx, dword [ebp - 0xc54]
shl ecx, 2
add ecx, dword [ebp - 0xc50]
mov edx, dword [ebp - 0xc8c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xc54]
shl ecx, 2
add ecx, dword [ebp - 0xc50]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44699a
xor eax, eax
je 0x44670c
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x446748
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e78]
movsd qword [ebp - 0x9988], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4468e8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4468e8
mov dword [ebp - 0xc94], 0
jmp 0x4467c7
cmp dword [ebp - 0xc94], 0xf
jae 0x4468e3
cvtsi2sd xmm0, dword [ebp - 0xc94]
movsd xmm1, qword [ebp - 0x9988]
addsd xmm1, xmm0
movsd qword [ebp - 0x9990], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9990]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x446836
mov ecx, dword [ebp - 0xc94]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9988]
addsd xmm1, xmm0
movsd qword [ebp - 0x9988], xmm1
jmp 0x446732
cvtsi2sd xmm0, dword [ebp - 0xc94]
movsd xmm1, qword [ebp - 0x9988]
addsd xmm1, xmm0
movsd qword [ebp - 0x9998], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9998]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x446893
mov eax, dword [ebp - 0xc94]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9988]
addsd xmm1, xmm0
movsd qword [ebp - 0x9988], xmm1
jmp 0x4468ac
mov ecx, 1
test ecx, ecx
je 0x4468a8
jmp 0x446968
jmp 0x4468cf
cvtsi2sd xmm0, dword [ebp - 0xc94]
movsd xmm1, qword [ebp - 0x9988]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xc98], edx
jmp 0x446972
xor eax, eax
je 0x4468d9
jmp 0x4468e8
jmp 0x446732
jmp 0x446732
mov ecx, 2
test ecx, ecx
je 0x446968
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xc9c], eax
cvtsi2sd xmm0, dword [ebp - 0xc9c]
mov eax, dword [ebp - 0xc9c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9988]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xc98], ecx
jmp 0x446972
mov dword [ebp - 0xc98], 8
mov edx, dword [ebp - 0xc54]
shl edx, 2
add edx, dword [ebp - 0xc50]
mov eax, dword [ebp - 0xc98]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xc54]
shl ecx, 2
add ecx, dword [ebp - 0xc50]
mov dword [ecx], eax
jmp 0x4458ca
mov edx, dword [ebp - 0xc4c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xc4c]
mov dword [ebp - 0xca0], eax
mov ecx, dword [ebp - 0xca0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xca4], ecx
lea ecx, [ebp - 0x1e]
call fcn.00425c10
mov dword [ebp - 0xca8], eax
mov edx, dword [ebp - 0xca8]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x447ad9
mov ecx, dword [ebp - 0xca8]
mov dword [ebp - 0xcac], ecx
mov dword [ebp - 0xcb0], 0
jmp 0x446a13
mov edx, dword [ebp - 0xcb0]
add edx, 1
mov dword [ebp - 0xcb0], edx
cmp dword [ebp - 0xcb0], 1
jae 0x447ad9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x446ceb
xor eax, eax
je 0x446a5d
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x446a99
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e98]
movsd qword [ebp - 0x99a0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x446c39
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x446c39
mov dword [ebp - 0xcb4], 0
jmp 0x446b18
cmp dword [ebp - 0xcb4], 0xf
jae 0x446c34
cvtsi2sd xmm0, dword [ebp - 0xcb4]
movsd xmm1, qword [ebp - 0x99a0]
addsd xmm1, xmm0
movsd qword [ebp - 0x99a8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x99a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x446b87
mov ecx, dword [ebp - 0xcb4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x99a0]
addsd xmm1, xmm0
movsd qword [ebp - 0x99a0], xmm1
jmp 0x446a83
cvtsi2sd xmm0, dword [ebp - 0xcb4]
movsd xmm1, qword [ebp - 0x99a0]
addsd xmm1, xmm0
movsd qword [ebp - 0x99b0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x99b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x446be4
mov eax, dword [ebp - 0xcb4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x99a0]
addsd xmm1, xmm0
movsd qword [ebp - 0x99a0], xmm1
jmp 0x446bfd
mov ecx, 1
test ecx, ecx
je 0x446bf9
jmp 0x446cb9
jmp 0x446c20
cvtsi2sd xmm0, dword [ebp - 0xcb4]
movsd xmm1, qword [ebp - 0x99a0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xcb8], edx
jmp 0x446cc3
xor eax, eax
je 0x446c2a
jmp 0x446c39
jmp 0x446a83
jmp 0x446a83
mov ecx, 2
test ecx, ecx
je 0x446cb9
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xcbc], eax
cvtsi2sd xmm0, dword [ebp - 0xcbc]
mov eax, dword [ebp - 0xcbc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x99a0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xcb8], ecx
jmp 0x446cc3
mov dword [ebp - 0xcb8], 8
mov edx, dword [ebp - 0xcb0]
shl edx, 2
add edx, dword [ebp - 0xcac]
mov eax, dword [ebp - 0xcb8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xcb0]
shl ecx, 2
add ecx, dword [ebp - 0xcac]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x447809
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x446ffb
xor eax, eax
je 0x446d6d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x446da9
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e90]
movsd qword [ebp - 0x99b8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x446f49
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x446f49
mov dword [ebp - 0xcc0], 0
jmp 0x446e28
cmp dword [ebp - 0xcc0], 0xf
jae 0x446f44
cvtsi2sd xmm0, dword [ebp - 0xcc0]
movsd xmm1, qword [ebp - 0x99b8]
addsd xmm1, xmm0
movsd qword [ebp - 0x99c0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x99c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x446e97
mov ecx, dword [ebp - 0xcc0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x99b8]
addsd xmm1, xmm0
movsd qword [ebp - 0x99b8], xmm1
jmp 0x446d93
cvtsi2sd xmm0, dword [ebp - 0xcc0]
movsd xmm1, qword [ebp - 0x99b8]
addsd xmm1, xmm0
movsd qword [ebp - 0x99c8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x99c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x446ef4
mov eax, dword [ebp - 0xcc0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x99b8]
addsd xmm1, xmm0
movsd qword [ebp - 0x99b8], xmm1
jmp 0x446f0d
mov ecx, 1
test ecx, ecx
je 0x446f09
jmp 0x446fc9
jmp 0x446f30
cvtsi2sd xmm0, dword [ebp - 0xcc0]
movsd xmm1, qword [ebp - 0x99b8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xcc4], edx
jmp 0x446fd3
xor eax, eax
je 0x446f3a
jmp 0x446f49
jmp 0x446d93
jmp 0x446d93
mov ecx, 2
test ecx, ecx
je 0x446fc9
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xcc8], eax
cvtsi2sd xmm0, dword [ebp - 0xcc8]
mov eax, dword [ebp - 0xcc8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x99b8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xcc4], ecx
jmp 0x446fd3
mov dword [ebp - 0xcc4], 8
mov edx, dword [ebp - 0xcb0]
shl edx, 2
add edx, dword [ebp - 0xcac]
mov eax, dword [ebp - 0xcc4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xcb0]
shl ecx, 2
add ecx, dword [ebp - 0xcac]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4472c6
xor eax, eax
je 0x447038
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x447074
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e88]
movsd qword [ebp - 0x99d0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x447214
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x447214
mov dword [ebp - 0xccc], 0
jmp 0x4470f3
cmp dword [ebp - 0xccc], 0xf
jae 0x44720f
cvtsi2sd xmm0, dword [ebp - 0xccc]
movsd xmm1, qword [ebp - 0x99d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x99d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x99d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x447162
mov ecx, dword [ebp - 0xccc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x99d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x99d0], xmm1
jmp 0x44705e
cvtsi2sd xmm0, dword [ebp - 0xccc]
movsd xmm1, qword [ebp - 0x99d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x99e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x99e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4471bf
mov eax, dword [ebp - 0xccc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x99d0]
addsd xmm1, xmm0
movsd qword [ebp - 0x99d0], xmm1
jmp 0x4471d8
mov ecx, 1
test ecx, ecx
je 0x4471d4
jmp 0x447294
jmp 0x4471fb
cvtsi2sd xmm0, dword [ebp - 0xccc]
movsd xmm1, qword [ebp - 0x99d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xcd0], edx
jmp 0x44729e
xor eax, eax
je 0x447205
jmp 0x447214
jmp 0x44705e
jmp 0x44705e
mov ecx, 2
test ecx, ecx
je 0x447294
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xcd4], eax
cvtsi2sd xmm0, dword [ebp - 0xcd4]
mov eax, dword [ebp - 0xcd4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x99d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xcd0], ecx
jmp 0x44729e
mov dword [ebp - 0xcd0], 8
mov edx, dword [ebp - 0xcb0]
shl edx, 2
add edx, dword [ebp - 0xcac]
mov eax, dword [ebp - 0xcd0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xcb0]
shl ecx, 2
add ecx, dword [ebp - 0xcac]
mov dword [ecx], eax
mov edx, dword [ebp - 0xcb0]
add edx, 0xffffffab
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x99e8], xmm0
xor eax, eax
je 0x4472e0
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44731c
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x99e8]
movsd qword [ebp - 0x99f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4474bc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4474bc
mov dword [ebp - 0xcd8], 0
jmp 0x44739b
cmp dword [ebp - 0xcd8], 0xf
jae 0x4474b7
cvtsi2sd xmm0, dword [ebp - 0xcd8]
movsd xmm1, qword [ebp - 0x99f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x99f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x99f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44740a
mov ecx, dword [ebp - 0xcd8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x99f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x99f0], xmm1
jmp 0x447306
cvtsi2sd xmm0, dword [ebp - 0xcd8]
movsd xmm1, qword [ebp - 0x99f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9a00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x447467
mov eax, dword [ebp - 0xcd8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x99f0]
addsd xmm1, xmm0
movsd qword [ebp - 0x99f0], xmm1
jmp 0x447480
mov ecx, 1
test ecx, ecx
je 0x44747c
jmp 0x44753c
jmp 0x4474a3
cvtsi2sd xmm0, dword [ebp - 0xcd8]
movsd xmm1, qword [ebp - 0x99f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xcdc], edx
jmp 0x447546
xor eax, eax
je 0x4474ad
jmp 0x4474bc
jmp 0x447306
jmp 0x447306
mov ecx, 2
test ecx, ecx
je 0x44753c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xce0], eax
cvtsi2sd xmm0, dword [ebp - 0xce0]
mov eax, dword [ebp - 0xce0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x99f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xcdc], ecx
jmp 0x447546
mov dword [ebp - 0xcdc], 8
mov edx, dword [ebp - 0xcb0]
add edx, 0xffffffab
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9a08], xmm0
xor eax, eax
je 0x447560
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44759c
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9a08]
movsd qword [ebp - 0x9a10], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44773c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44773c
mov dword [ebp - 0xce4], 0
jmp 0x44761b
cmp dword [ebp - 0xce4], 0xf
jae 0x447737
cvtsi2sd xmm0, dword [ebp - 0xce4]
movsd xmm1, qword [ebp - 0x9a10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9a18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44768a
mov ecx, dword [ebp - 0xce4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9a10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a10], xmm1
jmp 0x447586
cvtsi2sd xmm0, dword [ebp - 0xce4]
movsd xmm1, qword [ebp - 0x9a10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9a20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4476e7
mov eax, dword [ebp - 0xce4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9a10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a10], xmm1
jmp 0x447700
mov ecx, 1
test ecx, ecx
je 0x4476fc
jmp 0x4477bc
jmp 0x447723
cvtsi2sd xmm0, dword [ebp - 0xce4]
movsd xmm1, qword [ebp - 0x9a10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xce8], edx
jmp 0x4477c6
xor eax, eax
je 0x44772d
jmp 0x44773c
jmp 0x447586
jmp 0x447586
mov ecx, 2
test ecx, ecx
je 0x4477bc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xcec], eax
cvtsi2sd xmm0, dword [ebp - 0xcec]
mov eax, dword [ebp - 0xcec]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9a10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xce8], ecx
jmp 0x4477c6
mov dword [ebp - 0xce8], 8
mov edx, dword [ebp - 0xcb0]
shl edx, 2
add edx, dword [ebp - 0xcac]
mov eax, dword [ebp - 0xcdc]
add eax, dword [edx]
mov ecx, dword [ebp - 0xcb0]
shl ecx, 2
add ecx, dword [ebp - 0xcac]
mov edx, dword [ebp - 0xce8]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xcb0]
shl ecx, 2
add ecx, dword [ebp - 0xcac]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x447ad4
xor eax, eax
je 0x447846
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x447882
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e80]
movsd qword [ebp - 0x9a28], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x447a22
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x447a22
mov dword [ebp - 0xcf0], 0
jmp 0x447901
cmp dword [ebp - 0xcf0], 0xf
jae 0x447a1d
cvtsi2sd xmm0, dword [ebp - 0xcf0]
movsd xmm1, qword [ebp - 0x9a28]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a30], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9a30]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x447970
mov ecx, dword [ebp - 0xcf0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9a28]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a28], xmm1
jmp 0x44786c
cvtsi2sd xmm0, dword [ebp - 0xcf0]
movsd xmm1, qword [ebp - 0x9a28]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a38], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9a38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4479cd
mov eax, dword [ebp - 0xcf0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9a28]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a28], xmm1
jmp 0x4479e6
mov ecx, 1
test ecx, ecx
je 0x4479e2
jmp 0x447aa2
jmp 0x447a09
cvtsi2sd xmm0, dword [ebp - 0xcf0]
movsd xmm1, qword [ebp - 0x9a28]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xcf4], edx
jmp 0x447aac
xor eax, eax
je 0x447a13
jmp 0x447a22
jmp 0x44786c
jmp 0x44786c
mov ecx, 2
test ecx, ecx
je 0x447aa2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xcf8], eax
cvtsi2sd xmm0, dword [ebp - 0xcf8]
mov eax, dword [ebp - 0xcf8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9a28]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xcf4], ecx
jmp 0x447aac
mov dword [ebp - 0xcf4], 8
mov edx, dword [ebp - 0xcb0]
shl edx, 2
add edx, dword [ebp - 0xcac]
mov eax, dword [ebp - 0xcf4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xcb0]
shl ecx, 2
add ecx, dword [ebp - 0xcac]
mov dword [ecx], eax
jmp 0x446a04
mov edx, dword [ebp - 0xca8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xca8]
mov dword [ebp - 0xcfc], eax
mov ecx, dword [ebp - 0xcfc]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xd00], ecx
mov edx, dword [ebp - 0xd00]
push edx
mov eax, dword [ebp - 0xca4]
shl eax, 2
add eax, 0x785018
mov ecx, dword [eax]
call ecx
add esp, 4
xor edx, edx
mov byte [ebp - 0x20], dl
lea ecx, [ebp - 0x20]
call fcn.00425be0
mov dword [ebp - 0xd04], eax
mov eax, dword [ebp - 0xd04]
movzx ecx, byte [eax + 4]
test ecx, ecx
jne 0x448c34
mov edx, dword [ebp - 0xd04]
mov dword [ebp - 0xd08], edx
mov dword [ebp - 0xd0c], 0
jmp 0x447b6e
mov eax, dword [ebp - 0xd0c]
add eax, 1
mov dword [ebp - 0xd0c], eax
cmp dword [ebp - 0xd0c], 1
jae 0x448c34
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx ecx, al
add esi, ecx
call fcn.005e7fe0
movsx edx, al
imul eax, edx, 3
movsx ecx, byte [0x7862ac]
imul eax, ecx
add esi, eax
call fcn.005e7fb0
movsx edx, al
sub esi, edx
je 0x447e46
xor eax, eax
je 0x447bb8
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x447bf4
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [0x736e90]
movsd qword [ebp - 0x9a40], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x447d94
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x447d94
mov dword [ebp - 0xd10], 0
jmp 0x447c73
cmp dword [ebp - 0xd10], 0xf
jae 0x447d8f
cvtsi2sd xmm0, dword [ebp - 0xd10]
movsd xmm1, qword [ebp - 0x9a40]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a48], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9a48]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x447ce2
mov ecx, dword [ebp - 0xd10]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9a40]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a40], xmm1
jmp 0x447bde
cvtsi2sd xmm0, dword [ebp - 0xd10]
movsd xmm1, qword [ebp - 0x9a40]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a50], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9a50]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x447d3f
mov eax, dword [ebp - 0xd10]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9a40]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a40], xmm1
jmp 0x447d58
mov ecx, 1
test ecx, ecx
je 0x447d54
jmp 0x447e14
jmp 0x447d7b
cvtsi2sd xmm0, dword [ebp - 0xd10]
movsd xmm1, qword [ebp - 0x9a40]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xd14], edx
jmp 0x447e1e
xor eax, eax
je 0x447d85
jmp 0x447d94
jmp 0x447bde
jmp 0x447bde
mov ecx, 2
test ecx, ecx
je 0x447e14
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xd18], eax
cvtsi2sd xmm0, dword [ebp - 0xd18]
mov eax, dword [ebp - 0xd18]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9a40]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xd14], ecx
jmp 0x447e1e
mov dword [ebp - 0xd14], 8
mov edx, dword [ebp - 0xd0c]
shl edx, 2
add edx, dword [ebp - 0xd08]
mov eax, dword [ebp - 0xd14]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xd0c]
shl ecx, 2
add ecx, dword [ebp - 0xd08]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x448964
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x448156
xor eax, eax
je 0x447ec8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x447f04
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e88]
movsd qword [ebp - 0x9a58], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4480a4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4480a4
mov dword [ebp - 0xd1c], 0
jmp 0x447f83
cmp dword [ebp - 0xd1c], 0xf
jae 0x44809f
cvtsi2sd xmm0, dword [ebp - 0xd1c]
movsd xmm1, qword [ebp - 0x9a58]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a60], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9a60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x447ff2
mov ecx, dword [ebp - 0xd1c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9a58]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a58], xmm1
jmp 0x447eee
cvtsi2sd xmm0, dword [ebp - 0xd1c]
movsd xmm1, qword [ebp - 0x9a58]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a68], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9a68]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44804f
mov eax, dword [ebp - 0xd1c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9a58]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a58], xmm1
jmp 0x448068
mov ecx, 1
test ecx, ecx
je 0x448064
jmp 0x448124
jmp 0x44808b
cvtsi2sd xmm0, dword [ebp - 0xd1c]
movsd xmm1, qword [ebp - 0x9a58]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xd20], edx
jmp 0x44812e
xor eax, eax
je 0x448095
jmp 0x4480a4
jmp 0x447eee
jmp 0x447eee
mov ecx, 2
test ecx, ecx
je 0x448124
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xd24], eax
cvtsi2sd xmm0, dword [ebp - 0xd24]
mov eax, dword [ebp - 0xd24]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9a58]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xd20], ecx
jmp 0x44812e
mov dword [ebp - 0xd20], 8
mov edx, dword [ebp - 0xd0c]
shl edx, 2
add edx, dword [ebp - 0xd08]
mov eax, dword [ebp - 0xd20]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xd0c]
shl ecx, 2
add ecx, dword [ebp - 0xd08]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x448421
xor eax, eax
je 0x448193
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4481cf
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e80]
movsd qword [ebp - 0x9a70], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44836f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44836f
mov dword [ebp - 0xd28], 0
jmp 0x44824e
cmp dword [ebp - 0xd28], 0xf
jae 0x44836a
cvtsi2sd xmm0, dword [ebp - 0xd28]
movsd xmm1, qword [ebp - 0x9a70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9a78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4482bd
mov ecx, dword [ebp - 0xd28]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9a70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a70], xmm1
jmp 0x4481b9
cvtsi2sd xmm0, dword [ebp - 0xd28]
movsd xmm1, qword [ebp - 0x9a70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9a80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44831a
mov eax, dword [ebp - 0xd28]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9a70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a70], xmm1
jmp 0x448333
mov ecx, 1
test ecx, ecx
je 0x44832f
jmp 0x4483ef
jmp 0x448356
cvtsi2sd xmm0, dword [ebp - 0xd28]
movsd xmm1, qword [ebp - 0x9a70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xd2c], edx
jmp 0x4483f9
xor eax, eax
je 0x448360
jmp 0x44836f
jmp 0x4481b9
jmp 0x4481b9
mov ecx, 2
test ecx, ecx
je 0x4483ef
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xd30], eax
cvtsi2sd xmm0, dword [ebp - 0xd30]
mov eax, dword [ebp - 0xd30]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9a70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xd2c], ecx
jmp 0x4483f9
mov dword [ebp - 0xd2c], 8
mov edx, dword [ebp - 0xd0c]
shl edx, 2
add edx, dword [ebp - 0xd08]
mov eax, dword [ebp - 0xd2c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xd0c]
shl ecx, 2
add ecx, dword [ebp - 0xd08]
mov dword [ecx], eax
mov edx, dword [ebp - 0xd0c]
add edx, 0xffffffac
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9a88], xmm0
xor eax, eax
je 0x44843b
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x448477
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9a88]
movsd qword [ebp - 0x9a90], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x448617
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x448617
mov dword [ebp - 0xd34], 0
jmp 0x4484f6
cmp dword [ebp - 0xd34], 0xf
jae 0x448612
cvtsi2sd xmm0, dword [ebp - 0xd34]
movsd xmm1, qword [ebp - 0x9a90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9a98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x448565
mov ecx, dword [ebp - 0xd34]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9a90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a90], xmm1
jmp 0x448461
cvtsi2sd xmm0, dword [ebp - 0xd34]
movsd xmm1, qword [ebp - 0x9a90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9aa0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9aa0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4485c2
mov eax, dword [ebp - 0xd34]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9a90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9a90], xmm1
jmp 0x4485db
mov ecx, 1
test ecx, ecx
je 0x4485d7
jmp 0x448697
jmp 0x4485fe
cvtsi2sd xmm0, dword [ebp - 0xd34]
movsd xmm1, qword [ebp - 0x9a90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xd38], edx
jmp 0x4486a1
xor eax, eax
je 0x448608
jmp 0x448617
jmp 0x448461
jmp 0x448461
mov ecx, 2
test ecx, ecx
je 0x448697
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xd3c], eax
cvtsi2sd xmm0, dword [ebp - 0xd3c]
mov eax, dword [ebp - 0xd3c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9a90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xd38], ecx
jmp 0x4486a1
mov dword [ebp - 0xd38], 8
mov edx, dword [ebp - 0xd0c]
add edx, 0xffffffac
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9aa8], xmm0
xor eax, eax
je 0x4486bb
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4486f7
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9aa8]
movsd qword [ebp - 0x9ab0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x448897
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x448897
mov dword [ebp - 0xd40], 0
jmp 0x448776
cmp dword [ebp - 0xd40], 0xf
jae 0x448892
cvtsi2sd xmm0, dword [ebp - 0xd40]
movsd xmm1, qword [ebp - 0x9ab0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ab8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ab8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4487e5
mov ecx, dword [ebp - 0xd40]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9ab0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ab0], xmm1
jmp 0x4486e1
cvtsi2sd xmm0, dword [ebp - 0xd40]
movsd xmm1, qword [ebp - 0x9ab0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ac0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9ac0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x448842
mov eax, dword [ebp - 0xd40]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ab0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ab0], xmm1
jmp 0x44885b
mov ecx, 1
test ecx, ecx
je 0x448857
jmp 0x448917
jmp 0x44887e
cvtsi2sd xmm0, dword [ebp - 0xd40]
movsd xmm1, qword [ebp - 0x9ab0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xd44], edx
jmp 0x448921
xor eax, eax
je 0x448888
jmp 0x448897
jmp 0x4486e1
jmp 0x4486e1
mov ecx, 2
test ecx, ecx
je 0x448917
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xd48], eax
cvtsi2sd xmm0, dword [ebp - 0xd48]
mov eax, dword [ebp - 0xd48]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9ab0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xd44], ecx
jmp 0x448921
mov dword [ebp - 0xd44], 8
mov edx, dword [ebp - 0xd0c]
shl edx, 2
add edx, dword [ebp - 0xd08]
mov eax, dword [ebp - 0xd38]
add eax, dword [edx]
mov ecx, dword [ebp - 0xd0c]
shl ecx, 2
add ecx, dword [ebp - 0xd08]
mov edx, dword [ebp - 0xd44]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xd0c]
shl ecx, 2
add ecx, dword [ebp - 0xd08]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x448c2f
xor eax, eax
je 0x4489a1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4489dd
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e78]
movsd qword [ebp - 0x9ac8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x448b7d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x448b7d
mov dword [ebp - 0xd4c], 0
jmp 0x448a5c
cmp dword [ebp - 0xd4c], 0xf
jae 0x448b78
cvtsi2sd xmm0, dword [ebp - 0xd4c]
movsd xmm1, qword [ebp - 0x9ac8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ad0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ad0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x448acb
mov ecx, dword [ebp - 0xd4c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9ac8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ac8], xmm1
jmp 0x4489c7
cvtsi2sd xmm0, dword [ebp - 0xd4c]
movsd xmm1, qword [ebp - 0x9ac8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ad8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9ad8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x448b28
mov eax, dword [ebp - 0xd4c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ac8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ac8], xmm1
jmp 0x448b41
mov ecx, 1
test ecx, ecx
je 0x448b3d
jmp 0x448bfd
jmp 0x448b64
cvtsi2sd xmm0, dword [ebp - 0xd4c]
movsd xmm1, qword [ebp - 0x9ac8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xd50], edx
jmp 0x448c07
xor eax, eax
je 0x448b6e
jmp 0x448b7d
jmp 0x4489c7
jmp 0x4489c7
mov ecx, 2
test ecx, ecx
je 0x448bfd
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xd54], eax
cvtsi2sd xmm0, dword [ebp - 0xd54]
mov eax, dword [ebp - 0xd54]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9ac8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xd50], ecx
jmp 0x448c07
mov dword [ebp - 0xd50], 8
mov edx, dword [ebp - 0xd0c]
shl edx, 2
add edx, dword [ebp - 0xd08]
mov eax, dword [ebp - 0xd50]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xd0c]
shl ecx, 2
add ecx, dword [ebp - 0xd08]
mov dword [ecx], eax
jmp 0x447b5f
mov edx, dword [ebp - 0xd04]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xd04]
mov dword [ebp - 0xd58], eax
mov ecx, dword [ebp - 0xd58]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xd5c], ecx
mov edx, dword [ebp - 0xd5c]
mov dword [ebp - 0xd60], edx
xor eax, eax
mov byte [ebp - 0x21], al
lea ecx, [ebp - 0x21]
call fcn.00425bb0
mov dword [ebp - 0xd64], eax
mov ecx, dword [ebp - 0xd64]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x449d7f
mov eax, dword [ebp - 0xd64]
mov dword [ebp - 0xd68], eax
mov dword [ebp - 0xd6c], 0
jmp 0x448cb9
mov ecx, dword [ebp - 0xd6c]
add ecx, 1
mov dword [ebp - 0xd6c], ecx
cmp dword [ebp - 0xd6c], 1
jae 0x449d7f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x448f91
xor eax, eax
je 0x448d03
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x448d3f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e88]
movsd qword [ebp - 0x9ae0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x448edf
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x448edf
mov dword [ebp - 0xd70], 0
jmp 0x448dbe
cmp dword [ebp - 0xd70], 0xf
jae 0x448eda
cvtsi2sd xmm0, dword [ebp - 0xd70]
movsd xmm1, qword [ebp - 0x9ae0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ae8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ae8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x448e2d
mov ecx, dword [ebp - 0xd70]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9ae0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ae0], xmm1
jmp 0x448d29
cvtsi2sd xmm0, dword [ebp - 0xd70]
movsd xmm1, qword [ebp - 0x9ae0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9af0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9af0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x448e8a
mov eax, dword [ebp - 0xd70]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ae0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ae0], xmm1
jmp 0x448ea3
mov ecx, 1
test ecx, ecx
je 0x448e9f
jmp 0x448f5f
jmp 0x448ec6
cvtsi2sd xmm0, dword [ebp - 0xd70]
movsd xmm1, qword [ebp - 0x9ae0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xd74], edx
jmp 0x448f69
xor eax, eax
je 0x448ed0
jmp 0x448edf
jmp 0x448d29
jmp 0x448d29
mov ecx, 2
test ecx, ecx
je 0x448f5f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xd78], eax
cvtsi2sd xmm0, dword [ebp - 0xd78]
mov eax, dword [ebp - 0xd78]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9ae0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xd74], ecx
jmp 0x448f69
mov dword [ebp - 0xd74], 8
mov edx, dword [ebp - 0xd6c]
shl edx, 2
add edx, dword [ebp - 0xd68]
mov eax, dword [ebp - 0xd74]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xd6c]
shl ecx, 2
add ecx, dword [ebp - 0xd68]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x449aaf
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4492a1
xor eax, eax
je 0x449013
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44904f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e80]
movsd qword [ebp - 0x9af8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4491ef
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4491ef
mov dword [ebp - 0xd7c], 0
jmp 0x4490ce
cmp dword [ebp - 0xd7c], 0xf
jae 0x4491ea
cvtsi2sd xmm0, dword [ebp - 0xd7c]
movsd xmm1, qword [ebp - 0x9af8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b00], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9b00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44913d
mov ecx, dword [ebp - 0xd7c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9af8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9af8], xmm1
jmp 0x449039
cvtsi2sd xmm0, dword [ebp - 0xd7c]
movsd xmm1, qword [ebp - 0x9af8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b08], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9b08]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44919a
mov eax, dword [ebp - 0xd7c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9af8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9af8], xmm1
jmp 0x4491b3
mov ecx, 1
test ecx, ecx
je 0x4491af
jmp 0x44926f
jmp 0x4491d6
cvtsi2sd xmm0, dword [ebp - 0xd7c]
movsd xmm1, qword [ebp - 0x9af8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xd80], edx
jmp 0x449279
xor eax, eax
je 0x4491e0
jmp 0x4491ef
jmp 0x449039
jmp 0x449039
mov ecx, 2
test ecx, ecx
je 0x44926f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xd84], eax
cvtsi2sd xmm0, dword [ebp - 0xd84]
mov eax, dword [ebp - 0xd84]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9af8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xd80], ecx
jmp 0x449279
mov dword [ebp - 0xd80], 8
mov edx, dword [ebp - 0xd6c]
shl edx, 2
add edx, dword [ebp - 0xd68]
mov eax, dword [ebp - 0xd80]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xd6c]
shl ecx, 2
add ecx, dword [ebp - 0xd68]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44956c
xor eax, eax
je 0x4492de
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44931a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e78]
movsd qword [ebp - 0x9b10], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4494ba
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4494ba
mov dword [ebp - 0xd88], 0
jmp 0x449399
cmp dword [ebp - 0xd88], 0xf
jae 0x4494b5
cvtsi2sd xmm0, dword [ebp - 0xd88]
movsd xmm1, qword [ebp - 0x9b10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9b18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x449408
mov ecx, dword [ebp - 0xd88]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9b10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b10], xmm1
jmp 0x449304
cvtsi2sd xmm0, dword [ebp - 0xd88]
movsd xmm1, qword [ebp - 0x9b10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9b20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x449465
mov eax, dword [ebp - 0xd88]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9b10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b10], xmm1
jmp 0x44947e
mov ecx, 1
test ecx, ecx
je 0x44947a
jmp 0x44953a
jmp 0x4494a1
cvtsi2sd xmm0, dword [ebp - 0xd88]
movsd xmm1, qword [ebp - 0x9b10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xd8c], edx
jmp 0x449544
xor eax, eax
je 0x4494ab
jmp 0x4494ba
jmp 0x449304
jmp 0x449304
mov ecx, 2
test ecx, ecx
je 0x44953a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xd90], eax
cvtsi2sd xmm0, dword [ebp - 0xd90]
mov eax, dword [ebp - 0xd90]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9b10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xd8c], ecx
jmp 0x449544
mov dword [ebp - 0xd8c], 8
mov edx, dword [ebp - 0xd6c]
shl edx, 2
add edx, dword [ebp - 0xd68]
mov eax, dword [ebp - 0xd8c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xd6c]
shl ecx, 2
add ecx, dword [ebp - 0xd68]
mov dword [ecx], eax
mov edx, dword [ebp - 0xd6c]
add edx, 0xffffffad
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9b28], xmm0
xor eax, eax
je 0x449586
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4495c2
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9b28]
movsd qword [ebp - 0x9b30], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x449762
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x449762
mov dword [ebp - 0xd94], 0
jmp 0x449641
cmp dword [ebp - 0xd94], 0xf
jae 0x44975d
cvtsi2sd xmm0, dword [ebp - 0xd94]
movsd xmm1, qword [ebp - 0x9b30]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9b38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4496b0
mov ecx, dword [ebp - 0xd94]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9b30]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b30], xmm1
jmp 0x4495ac
cvtsi2sd xmm0, dword [ebp - 0xd94]
movsd xmm1, qword [ebp - 0x9b30]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9b40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44970d
mov eax, dword [ebp - 0xd94]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9b30]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b30], xmm1
jmp 0x449726
mov ecx, 1
test ecx, ecx
je 0x449722
jmp 0x4497e2
jmp 0x449749
cvtsi2sd xmm0, dword [ebp - 0xd94]
movsd xmm1, qword [ebp - 0x9b30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xd98], edx
jmp 0x4497ec
xor eax, eax
je 0x449753
jmp 0x449762
jmp 0x4495ac
jmp 0x4495ac
mov ecx, 2
test ecx, ecx
je 0x4497e2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xd9c], eax
cvtsi2sd xmm0, dword [ebp - 0xd9c]
mov eax, dword [ebp - 0xd9c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9b30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xd98], ecx
jmp 0x4497ec
mov dword [ebp - 0xd98], 8
mov edx, dword [ebp - 0xd6c]
add edx, 0xffffffad
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9b48], xmm0
xor eax, eax
je 0x449806
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x449842
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9b48]
movsd qword [ebp - 0x9b50], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4499e2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4499e2
mov dword [ebp - 0xda0], 0
jmp 0x4498c1
cmp dword [ebp - 0xda0], 0xf
jae 0x4499dd
cvtsi2sd xmm0, dword [ebp - 0xda0]
movsd xmm1, qword [ebp - 0x9b50]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9b58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x449930
mov ecx, dword [ebp - 0xda0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9b50]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b50], xmm1
jmp 0x44982c
cvtsi2sd xmm0, dword [ebp - 0xda0]
movsd xmm1, qword [ebp - 0x9b50]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9b60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44998d
mov eax, dword [ebp - 0xda0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9b50]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b50], xmm1
jmp 0x4499a6
mov ecx, 1
test ecx, ecx
je 0x4499a2
jmp 0x449a62
jmp 0x4499c9
cvtsi2sd xmm0, dword [ebp - 0xda0]
movsd xmm1, qword [ebp - 0x9b50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xda4], edx
jmp 0x449a6c
xor eax, eax
je 0x4499d3
jmp 0x4499e2
jmp 0x44982c
jmp 0x44982c
mov ecx, 2
test ecx, ecx
je 0x449a62
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xda8], eax
cvtsi2sd xmm0, dword [ebp - 0xda8]
mov eax, dword [ebp - 0xda8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9b50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xda4], ecx
jmp 0x449a6c
mov dword [ebp - 0xda4], 8
mov edx, dword [ebp - 0xd6c]
shl edx, 2
add edx, dword [ebp - 0xd68]
mov eax, dword [ebp - 0xd98]
add eax, dword [edx]
mov ecx, dword [ebp - 0xd6c]
shl ecx, 2
add ecx, dword [ebp - 0xd68]
mov edx, dword [ebp - 0xda4]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xd6c]
shl ecx, 2
add ecx, dword [ebp - 0xd68]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x449d7a
xor eax, eax
je 0x449aec
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x449b28
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e70]
movsd qword [ebp - 0x9b68], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x449cc8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x449cc8
mov dword [ebp - 0xdac], 0
jmp 0x449ba7
cmp dword [ebp - 0xdac], 0xf
jae 0x449cc3
cvtsi2sd xmm0, dword [ebp - 0xdac]
movsd xmm1, qword [ebp - 0x9b68]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b70], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9b70]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x449c16
mov ecx, dword [ebp - 0xdac]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9b68]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b68], xmm1
jmp 0x449b12
cvtsi2sd xmm0, dword [ebp - 0xdac]
movsd xmm1, qword [ebp - 0x9b68]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b78], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9b78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x449c73
mov eax, dword [ebp - 0xdac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9b68]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b68], xmm1
jmp 0x449c8c
mov ecx, 1
test ecx, ecx
je 0x449c88
jmp 0x449d48
jmp 0x449caf
cvtsi2sd xmm0, dword [ebp - 0xdac]
movsd xmm1, qword [ebp - 0x9b68]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xdb0], edx
jmp 0x449d52
xor eax, eax
je 0x449cb9
jmp 0x449cc8
jmp 0x449b12
jmp 0x449b12
mov ecx, 2
test ecx, ecx
je 0x449d48
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xdb4], eax
cvtsi2sd xmm0, dword [ebp - 0xdb4]
mov eax, dword [ebp - 0xdb4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9b68]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xdb0], ecx
jmp 0x449d52
mov dword [ebp - 0xdb0], 8
mov edx, dword [ebp - 0xd6c]
shl edx, 2
add edx, dword [ebp - 0xd68]
mov eax, dword [ebp - 0xdb0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xd6c]
shl ecx, 2
add ecx, dword [ebp - 0xd68]
mov dword [ecx], eax
jmp 0x448caa
mov edx, dword [ebp - 0xd64]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xd64]
mov dword [ebp - 0xdb8], eax
mov ecx, dword [ebp - 0xdb8]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xdbc], ecx
mov edx, dword [ebp - 0xdbc]
mov dword [ebp - 0xdc0], edx
xor eax, eax
mov byte [ebp - 0x22], al
lea ecx, [ebp - 0x22]
call fcn.00425b80
mov dword [ebp - 0xdc4], eax
mov ecx, dword [ebp - 0xdc4]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x44aeca
mov eax, dword [ebp - 0xdc4]
mov dword [ebp - 0xdc8], eax
mov dword [ebp - 0xdcc], 0
jmp 0x449e04
mov ecx, dword [ebp - 0xdcc]
add ecx, 1
mov dword [ebp - 0xdcc], ecx
cmp dword [ebp - 0xdcc], 1
jae 0x44aeca
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44a0dc
xor eax, eax
je 0x449e4e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x449e8a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e88]
movsd qword [ebp - 0x9b80], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44a02a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44a02a
mov dword [ebp - 0xdd0], 0
jmp 0x449f09
cmp dword [ebp - 0xdd0], 0xf
jae 0x44a025
cvtsi2sd xmm0, dword [ebp - 0xdd0]
movsd xmm1, qword [ebp - 0x9b80]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b88], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9b88]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x449f78
mov ecx, dword [ebp - 0xdd0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9b80]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b80], xmm1
jmp 0x449e74
cvtsi2sd xmm0, dword [ebp - 0xdd0]
movsd xmm1, qword [ebp - 0x9b80]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b90], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9b90]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x449fd5
mov eax, dword [ebp - 0xdd0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9b80]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b80], xmm1
jmp 0x449fee
mov ecx, 1
test ecx, ecx
je 0x449fea
jmp 0x44a0aa
jmp 0x44a011
cvtsi2sd xmm0, dword [ebp - 0xdd0]
movsd xmm1, qword [ebp - 0x9b80]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xdd4], edx
jmp 0x44a0b4
xor eax, eax
je 0x44a01b
jmp 0x44a02a
jmp 0x449e74
jmp 0x449e74
mov ecx, 2
test ecx, ecx
je 0x44a0aa
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xdd8], eax
cvtsi2sd xmm0, dword [ebp - 0xdd8]
mov eax, dword [ebp - 0xdd8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9b80]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xdd4], ecx
jmp 0x44a0b4
mov dword [ebp - 0xdd4], 8
mov edx, dword [ebp - 0xdcc]
shl edx, 2
add edx, dword [ebp - 0xdc8]
mov eax, dword [ebp - 0xdd4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xdcc]
shl ecx, 2
add ecx, dword [ebp - 0xdc8]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44abfa
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44a3ec
xor eax, eax
je 0x44a15e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44a19a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e80]
movsd qword [ebp - 0x9b98], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44a33a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44a33a
mov dword [ebp - 0xddc], 0
jmp 0x44a219
cmp dword [ebp - 0xddc], 0xf
jae 0x44a335
cvtsi2sd xmm0, dword [ebp - 0xddc]
movsd xmm1, qword [ebp - 0x9b98]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ba0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ba0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44a288
mov ecx, dword [ebp - 0xddc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9b98]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b98], xmm1
jmp 0x44a184
cvtsi2sd xmm0, dword [ebp - 0xddc]
movsd xmm1, qword [ebp - 0x9b98]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ba8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9ba8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44a2e5
mov eax, dword [ebp - 0xddc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9b98]
addsd xmm1, xmm0
movsd qword [ebp - 0x9b98], xmm1
jmp 0x44a2fe
mov ecx, 1
test ecx, ecx
je 0x44a2fa
jmp 0x44a3ba
jmp 0x44a321
cvtsi2sd xmm0, dword [ebp - 0xddc]
movsd xmm1, qword [ebp - 0x9b98]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xde0], edx
jmp 0x44a3c4
xor eax, eax
je 0x44a32b
jmp 0x44a33a
jmp 0x44a184
jmp 0x44a184
mov ecx, 2
test ecx, ecx
je 0x44a3ba
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xde4], eax
cvtsi2sd xmm0, dword [ebp - 0xde4]
mov eax, dword [ebp - 0xde4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9b98]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xde0], ecx
jmp 0x44a3c4
mov dword [ebp - 0xde0], 8
mov edx, dword [ebp - 0xdcc]
shl edx, 2
add edx, dword [ebp - 0xdc8]
mov eax, dword [ebp - 0xde0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xdcc]
shl ecx, 2
add ecx, dword [ebp - 0xdc8]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44a6b7
xor eax, eax
je 0x44a429
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44a465
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e78]
movsd qword [ebp - 0x9bb0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44a605
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44a605
mov dword [ebp - 0xde8], 0
jmp 0x44a4e4
cmp dword [ebp - 0xde8], 0xf
jae 0x44a600
cvtsi2sd xmm0, dword [ebp - 0xde8]
movsd xmm1, qword [ebp - 0x9bb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9bb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9bb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44a553
mov ecx, dword [ebp - 0xde8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9bb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9bb0], xmm1
jmp 0x44a44f
cvtsi2sd xmm0, dword [ebp - 0xde8]
movsd xmm1, qword [ebp - 0x9bb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9bc0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9bc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44a5b0
mov eax, dword [ebp - 0xde8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9bb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9bb0], xmm1
jmp 0x44a5c9
mov ecx, 1
test ecx, ecx
je 0x44a5c5
jmp 0x44a685
jmp 0x44a5ec
cvtsi2sd xmm0, dword [ebp - 0xde8]
movsd xmm1, qword [ebp - 0x9bb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xdec], edx
jmp 0x44a68f
xor eax, eax
je 0x44a5f6
jmp 0x44a605
jmp 0x44a44f
jmp 0x44a44f
mov ecx, 2
test ecx, ecx
je 0x44a685
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xdf0], eax
cvtsi2sd xmm0, dword [ebp - 0xdf0]
mov eax, dword [ebp - 0xdf0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9bb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xdec], ecx
jmp 0x44a68f
mov dword [ebp - 0xdec], 8
mov edx, dword [ebp - 0xdcc]
shl edx, 2
add edx, dword [ebp - 0xdc8]
mov eax, dword [ebp - 0xdec]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xdcc]
shl ecx, 2
add ecx, dword [ebp - 0xdc8]
mov dword [ecx], eax
mov edx, dword [ebp - 0xdcc]
add edx, 0xffffffad
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9bc8], xmm0
xor eax, eax
je 0x44a6d1
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44a70d
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9bc8]
movsd qword [ebp - 0x9bd0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44a8ad
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44a8ad
mov dword [ebp - 0xdf4], 0
jmp 0x44a78c
cmp dword [ebp - 0xdf4], 0xf
jae 0x44a8a8
cvtsi2sd xmm0, dword [ebp - 0xdf4]
movsd xmm1, qword [ebp - 0x9bd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9bd8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9bd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44a7fb
mov ecx, dword [ebp - 0xdf4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9bd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9bd0], xmm1
jmp 0x44a6f7
cvtsi2sd xmm0, dword [ebp - 0xdf4]
movsd xmm1, qword [ebp - 0x9bd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9be0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9be0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44a858
mov eax, dword [ebp - 0xdf4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9bd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9bd0], xmm1
jmp 0x44a871
mov ecx, 1
test ecx, ecx
je 0x44a86d
jmp 0x44a92d
jmp 0x44a894
cvtsi2sd xmm0, dword [ebp - 0xdf4]
movsd xmm1, qword [ebp - 0x9bd0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xdf8], edx
jmp 0x44a937
xor eax, eax
je 0x44a89e
jmp 0x44a8ad
jmp 0x44a6f7
jmp 0x44a6f7
mov ecx, 2
test ecx, ecx
je 0x44a92d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xdfc], eax
cvtsi2sd xmm0, dword [ebp - 0xdfc]
mov eax, dword [ebp - 0xdfc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9bd0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xdf8], ecx
jmp 0x44a937
mov dword [ebp - 0xdf8], 8
mov edx, dword [ebp - 0xdcc]
add edx, 0xffffffad
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9be8], xmm0
xor eax, eax
je 0x44a951
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44a98d
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9be8]
movsd qword [ebp - 0x9bf0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44ab2d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44ab2d
mov dword [ebp - 0xe00], 0
jmp 0x44aa0c
cmp dword [ebp - 0xe00], 0xf
jae 0x44ab28
cvtsi2sd xmm0, dword [ebp - 0xe00]
movsd xmm1, qword [ebp - 0x9bf0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9bf8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9bf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44aa7b
mov ecx, dword [ebp - 0xe00]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9bf0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9bf0], xmm1
jmp 0x44a977
cvtsi2sd xmm0, dword [ebp - 0xe00]
movsd xmm1, qword [ebp - 0x9bf0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9c00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44aad8
mov eax, dword [ebp - 0xe00]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9bf0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9bf0], xmm1
jmp 0x44aaf1
mov ecx, 1
test ecx, ecx
je 0x44aaed
jmp 0x44abad
jmp 0x44ab14
cvtsi2sd xmm0, dword [ebp - 0xe00]
movsd xmm1, qword [ebp - 0x9bf0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xe04], edx
jmp 0x44abb7
xor eax, eax
je 0x44ab1e
jmp 0x44ab2d
jmp 0x44a977
jmp 0x44a977
mov ecx, 2
test ecx, ecx
je 0x44abad
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xe08], eax
cvtsi2sd xmm0, dword [ebp - 0xe08]
mov eax, dword [ebp - 0xe08]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9bf0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xe04], ecx
jmp 0x44abb7
mov dword [ebp - 0xe04], 8
mov edx, dword [ebp - 0xdcc]
shl edx, 2
add edx, dword [ebp - 0xdc8]
mov eax, dword [ebp - 0xdf8]
add eax, dword [edx]
mov ecx, dword [ebp - 0xdcc]
shl ecx, 2
add ecx, dword [ebp - 0xdc8]
mov edx, dword [ebp - 0xe04]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xdcc]
shl ecx, 2
add ecx, dword [ebp - 0xdc8]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44aec5
xor eax, eax
je 0x44ac37
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44ac73
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e70]
movsd qword [ebp - 0x9c08], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44ae13
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44ae13
mov dword [ebp - 0xe0c], 0
jmp 0x44acf2
cmp dword [ebp - 0xe0c], 0xf
jae 0x44ae0e
cvtsi2sd xmm0, dword [ebp - 0xe0c]
movsd xmm1, qword [ebp - 0x9c08]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c10], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9c10]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44ad61
mov ecx, dword [ebp - 0xe0c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9c08]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c08], xmm1
jmp 0x44ac5d
cvtsi2sd xmm0, dword [ebp - 0xe0c]
movsd xmm1, qword [ebp - 0x9c08]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c18], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9c18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44adbe
mov eax, dword [ebp - 0xe0c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9c08]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c08], xmm1
jmp 0x44add7
mov ecx, 1
test ecx, ecx
je 0x44add3
jmp 0x44ae93
jmp 0x44adfa
cvtsi2sd xmm0, dword [ebp - 0xe0c]
movsd xmm1, qword [ebp - 0x9c08]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xe10], edx
jmp 0x44ae9d
xor eax, eax
je 0x44ae04
jmp 0x44ae13
jmp 0x44ac5d
jmp 0x44ac5d
mov ecx, 2
test ecx, ecx
je 0x44ae93
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xe14], eax
cvtsi2sd xmm0, dword [ebp - 0xe14]
mov eax, dword [ebp - 0xe14]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9c08]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xe10], ecx
jmp 0x44ae9d
mov dword [ebp - 0xe10], 8
mov edx, dword [ebp - 0xdcc]
shl edx, 2
add edx, dword [ebp - 0xdc8]
mov eax, dword [ebp - 0xe10]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xdcc]
shl ecx, 2
add ecx, dword [ebp - 0xdc8]
mov dword [ecx], eax
jmp 0x449df5
mov edx, dword [ebp - 0xdc4]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xdc4]
mov dword [ebp - 0xe18], eax
mov ecx, dword [ebp - 0xe18]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xe1c], ecx
mov edx, dword [ebp - 0xe1c]
mov dword [ebp - 0xe20], edx
mov eax, dword [ebp - 0xdc0]
mov dword [ebp - 0xd60], eax
cmp dword [ebp - 0xd60], 0
je 0x44c067
xor ecx, ecx
mov byte [ebp - 0x23], cl
lea ecx, [ebp - 0x23]
call fcn.00425b50
mov dword [ebp - 0xe24], eax
mov edx, dword [ebp - 0xe24]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x44c02e
mov ecx, dword [ebp - 0xe24]
mov dword [ebp - 0xe28], ecx
mov dword [ebp - 0xe2c], 0
jmp 0x44af68
mov edx, dword [ebp - 0xe2c]
add edx, 1
mov dword [ebp - 0xe2c], edx
cmp dword [ebp - 0xe2c], 1
jae 0x44c02e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44b240
xor eax, eax
je 0x44afb2
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x44afee
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e88]
movsd qword [ebp - 0x9c20], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44b18e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44b18e
mov dword [ebp - 0xe30], 0
jmp 0x44b06d
cmp dword [ebp - 0xe30], 0xf
jae 0x44b189
cvtsi2sd xmm0, dword [ebp - 0xe30]
movsd xmm1, qword [ebp - 0x9c20]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c28], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9c28]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44b0dc
mov ecx, dword [ebp - 0xe30]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9c20]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c20], xmm1
jmp 0x44afd8
cvtsi2sd xmm0, dword [ebp - 0xe30]
movsd xmm1, qword [ebp - 0x9c20]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c30], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9c30]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44b139
mov eax, dword [ebp - 0xe30]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9c20]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c20], xmm1
jmp 0x44b152
mov ecx, 1
test ecx, ecx
je 0x44b14e
jmp 0x44b20e
jmp 0x44b175
cvtsi2sd xmm0, dword [ebp - 0xe30]
movsd xmm1, qword [ebp - 0x9c20]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xe34], edx
jmp 0x44b218
xor eax, eax
je 0x44b17f
jmp 0x44b18e
jmp 0x44afd8
jmp 0x44afd8
mov ecx, 2
test ecx, ecx
je 0x44b20e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xe38], eax
cvtsi2sd xmm0, dword [ebp - 0xe38]
mov eax, dword [ebp - 0xe38]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9c20]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xe34], ecx
jmp 0x44b218
mov dword [ebp - 0xe34], 8
mov edx, dword [ebp - 0xe2c]
shl edx, 2
add edx, dword [ebp - 0xe28]
mov eax, dword [ebp - 0xe34]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xe2c]
shl ecx, 2
add ecx, dword [ebp - 0xe28]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44bd5e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44b550
xor eax, eax
je 0x44b2c2
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44b2fe
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e80]
movsd qword [ebp - 0x9c38], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44b49e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44b49e
mov dword [ebp - 0xe3c], 0
jmp 0x44b37d
cmp dword [ebp - 0xe3c], 0xf
jae 0x44b499
cvtsi2sd xmm0, dword [ebp - 0xe3c]
movsd xmm1, qword [ebp - 0x9c38]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c40], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9c40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44b3ec
mov ecx, dword [ebp - 0xe3c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9c38]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c38], xmm1
jmp 0x44b2e8
cvtsi2sd xmm0, dword [ebp - 0xe3c]
movsd xmm1, qword [ebp - 0x9c38]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c48], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9c48]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44b449
mov eax, dword [ebp - 0xe3c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9c38]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c38], xmm1
jmp 0x44b462
mov ecx, 1
test ecx, ecx
je 0x44b45e
jmp 0x44b51e
jmp 0x44b485
cvtsi2sd xmm0, dword [ebp - 0xe3c]
movsd xmm1, qword [ebp - 0x9c38]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xe40], edx
jmp 0x44b528
xor eax, eax
je 0x44b48f
jmp 0x44b49e
jmp 0x44b2e8
jmp 0x44b2e8
mov ecx, 2
test ecx, ecx
je 0x44b51e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xe44], eax
cvtsi2sd xmm0, dword [ebp - 0xe44]
mov eax, dword [ebp - 0xe44]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9c38]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xe40], ecx
jmp 0x44b528
mov dword [ebp - 0xe40], 8
mov edx, dword [ebp - 0xe2c]
shl edx, 2
add edx, dword [ebp - 0xe28]
mov eax, dword [ebp - 0xe40]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xe2c]
shl ecx, 2
add ecx, dword [ebp - 0xe28]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44b81b
xor eax, eax
je 0x44b58d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44b5c9
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e78]
movsd qword [ebp - 0x9c50], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44b769
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44b769
mov dword [ebp - 0xe48], 0
jmp 0x44b648
cmp dword [ebp - 0xe48], 0xf
jae 0x44b764
cvtsi2sd xmm0, dword [ebp - 0xe48]
movsd xmm1, qword [ebp - 0x9c50]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9c58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44b6b7
mov ecx, dword [ebp - 0xe48]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9c50]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c50], xmm1
jmp 0x44b5b3
cvtsi2sd xmm0, dword [ebp - 0xe48]
movsd xmm1, qword [ebp - 0x9c50]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9c60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44b714
mov eax, dword [ebp - 0xe48]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9c50]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c50], xmm1
jmp 0x44b72d
mov ecx, 1
test ecx, ecx
je 0x44b729
jmp 0x44b7e9
jmp 0x44b750
cvtsi2sd xmm0, dword [ebp - 0xe48]
movsd xmm1, qword [ebp - 0x9c50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xe4c], edx
jmp 0x44b7f3
xor eax, eax
je 0x44b75a
jmp 0x44b769
jmp 0x44b5b3
jmp 0x44b5b3
mov ecx, 2
test ecx, ecx
je 0x44b7e9
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xe50], eax
cvtsi2sd xmm0, dword [ebp - 0xe50]
mov eax, dword [ebp - 0xe50]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9c50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xe4c], ecx
jmp 0x44b7f3
mov dword [ebp - 0xe4c], 8
mov edx, dword [ebp - 0xe2c]
shl edx, 2
add edx, dword [ebp - 0xe28]
mov eax, dword [ebp - 0xe4c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xe2c]
shl ecx, 2
add ecx, dword [ebp - 0xe28]
mov dword [ecx], eax
mov edx, dword [ebp - 0xe2c]
add edx, 0xffffffad
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9c68], xmm0
xor eax, eax
je 0x44b835
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44b871
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9c68]
movsd qword [ebp - 0x9c70], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44ba11
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44ba11
mov dword [ebp - 0xe54], 0
jmp 0x44b8f0
cmp dword [ebp - 0xe54], 0xf
jae 0x44ba0c
cvtsi2sd xmm0, dword [ebp - 0xe54]
movsd xmm1, qword [ebp - 0x9c70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9c78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44b95f
mov ecx, dword [ebp - 0xe54]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9c70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c70], xmm1
jmp 0x44b85b
cvtsi2sd xmm0, dword [ebp - 0xe54]
movsd xmm1, qword [ebp - 0x9c70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9c80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44b9bc
mov eax, dword [ebp - 0xe54]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9c70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c70], xmm1
jmp 0x44b9d5
mov ecx, 1
test ecx, ecx
je 0x44b9d1
jmp 0x44ba91
jmp 0x44b9f8
cvtsi2sd xmm0, dword [ebp - 0xe54]
movsd xmm1, qword [ebp - 0x9c70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xe58], edx
jmp 0x44ba9b
xor eax, eax
je 0x44ba02
jmp 0x44ba11
jmp 0x44b85b
jmp 0x44b85b
mov ecx, 2
test ecx, ecx
je 0x44ba91
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xe5c], eax
cvtsi2sd xmm0, dword [ebp - 0xe5c]
mov eax, dword [ebp - 0xe5c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9c70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xe58], ecx
jmp 0x44ba9b
mov dword [ebp - 0xe58], 8
mov edx, dword [ebp - 0xe2c]
add edx, 0xffffffad
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9c88], xmm0
xor eax, eax
je 0x44bab5
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44baf1
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9c88]
movsd qword [ebp - 0x9c90], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44bc91
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44bc91
mov dword [ebp - 0xe60], 0
jmp 0x44bb70
cmp dword [ebp - 0xe60], 0xf
jae 0x44bc8c
cvtsi2sd xmm0, dword [ebp - 0xe60]
movsd xmm1, qword [ebp - 0x9c90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9c98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44bbdf
mov ecx, dword [ebp - 0xe60]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9c90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c90], xmm1
jmp 0x44badb
cvtsi2sd xmm0, dword [ebp - 0xe60]
movsd xmm1, qword [ebp - 0x9c90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ca0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9ca0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44bc3c
mov eax, dword [ebp - 0xe60]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9c90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9c90], xmm1
jmp 0x44bc55
mov ecx, 1
test ecx, ecx
je 0x44bc51
jmp 0x44bd11
jmp 0x44bc78
cvtsi2sd xmm0, dword [ebp - 0xe60]
movsd xmm1, qword [ebp - 0x9c90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xe64], edx
jmp 0x44bd1b
xor eax, eax
je 0x44bc82
jmp 0x44bc91
jmp 0x44badb
jmp 0x44badb
mov ecx, 2
test ecx, ecx
je 0x44bd11
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xe68], eax
cvtsi2sd xmm0, dword [ebp - 0xe68]
mov eax, dword [ebp - 0xe68]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9c90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xe64], ecx
jmp 0x44bd1b
mov dword [ebp - 0xe64], 8
mov edx, dword [ebp - 0xe2c]
shl edx, 2
add edx, dword [ebp - 0xe28]
mov eax, dword [ebp - 0xe58]
add eax, dword [edx]
mov ecx, dword [ebp - 0xe2c]
shl ecx, 2
add ecx, dword [ebp - 0xe28]
mov edx, dword [ebp - 0xe64]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xe2c]
shl ecx, 2
add ecx, dword [ebp - 0xe28]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44c029
xor eax, eax
je 0x44bd9b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44bdd7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e70]
movsd qword [ebp - 0x9ca8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44bf77
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44bf77
mov dword [ebp - 0xe6c], 0
jmp 0x44be56
cmp dword [ebp - 0xe6c], 0xf
jae 0x44bf72
cvtsi2sd xmm0, dword [ebp - 0xe6c]
movsd xmm1, qword [ebp - 0x9ca8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9cb0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9cb0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44bec5
mov ecx, dword [ebp - 0xe6c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9ca8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ca8], xmm1
jmp 0x44bdc1
cvtsi2sd xmm0, dword [ebp - 0xe6c]
movsd xmm1, qword [ebp - 0x9ca8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9cb8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9cb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44bf22
mov eax, dword [ebp - 0xe6c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ca8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ca8], xmm1
jmp 0x44bf3b
mov ecx, 1
test ecx, ecx
je 0x44bf37
jmp 0x44bff7
jmp 0x44bf5e
cvtsi2sd xmm0, dword [ebp - 0xe6c]
movsd xmm1, qword [ebp - 0x9ca8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xe70], edx
jmp 0x44c001
xor eax, eax
je 0x44bf68
jmp 0x44bf77
jmp 0x44bdc1
jmp 0x44bdc1
mov ecx, 2
test ecx, ecx
je 0x44bff7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xe74], eax
cvtsi2sd xmm0, dword [ebp - 0xe74]
mov eax, dword [ebp - 0xe74]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9ca8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xe70], ecx
jmp 0x44c001
mov dword [ebp - 0xe70], 8
mov edx, dword [ebp - 0xe2c]
shl edx, 2
add edx, dword [ebp - 0xe28]
mov eax, dword [ebp - 0xe70]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xe2c]
shl ecx, 2
add ecx, dword [ebp - 0xe28]
mov dword [ecx], eax
jmp 0x44af59
mov edx, dword [ebp - 0xe24]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xe24]
mov dword [ebp - 0xe78], eax
mov ecx, dword [ebp - 0xe78]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xe7c], ecx
mov edx, dword [ebp - 0xe7c]
mov dword [ebp - 0xe20], edx
xor eax, eax
mov byte [ebp - 0x24], al
lea ecx, [ebp - 0x24]
call fcn.00425b20
mov dword [ebp - 0xe80], eax
mov ecx, dword [ebp - 0xe80]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x44d179
mov eax, dword [ebp - 0xe80]
mov dword [ebp - 0xe84], eax
mov dword [ebp - 0xe88], 0
jmp 0x44c0b3
mov ecx, dword [ebp - 0xe88]
add ecx, 1
mov dword [ebp - 0xe88], ecx
cmp dword [ebp - 0xe88], 1
jae 0x44d179
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44c38b
xor eax, eax
je 0x44c0fd
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44c139
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e80]
movsd qword [ebp - 0x9cc0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44c2d9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44c2d9
mov dword [ebp - 0xe8c], 0
jmp 0x44c1b8
cmp dword [ebp - 0xe8c], 0xf
jae 0x44c2d4
cvtsi2sd xmm0, dword [ebp - 0xe8c]
movsd xmm1, qword [ebp - 0x9cc0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9cc8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9cc8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44c227
mov ecx, dword [ebp - 0xe8c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9cc0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9cc0], xmm1
jmp 0x44c123
cvtsi2sd xmm0, dword [ebp - 0xe8c]
movsd xmm1, qword [ebp - 0x9cc0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9cd0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9cd0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44c284
mov eax, dword [ebp - 0xe8c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9cc0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9cc0], xmm1
jmp 0x44c29d
mov ecx, 1
test ecx, ecx
je 0x44c299
jmp 0x44c359
jmp 0x44c2c0
cvtsi2sd xmm0, dword [ebp - 0xe8c]
movsd xmm1, qword [ebp - 0x9cc0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xe90], edx
jmp 0x44c363
xor eax, eax
je 0x44c2ca
jmp 0x44c2d9
jmp 0x44c123
jmp 0x44c123
mov ecx, 2
test ecx, ecx
je 0x44c359
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xe94], eax
cvtsi2sd xmm0, dword [ebp - 0xe94]
mov eax, dword [ebp - 0xe94]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9cc0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xe90], ecx
jmp 0x44c363
mov dword [ebp - 0xe90], 8
mov edx, dword [ebp - 0xe88]
shl edx, 2
add edx, dword [ebp - 0xe84]
mov eax, dword [ebp - 0xe90]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xe88]
shl ecx, 2
add ecx, dword [ebp - 0xe84]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44cea9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44c69b
xor eax, eax
je 0x44c40d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44c449
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e78]
movsd qword [ebp - 0x9cd8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44c5e9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44c5e9
mov dword [ebp - 0xe98], 0
jmp 0x44c4c8
cmp dword [ebp - 0xe98], 0xf
jae 0x44c5e4
cvtsi2sd xmm0, dword [ebp - 0xe98]
movsd xmm1, qword [ebp - 0x9cd8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ce0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ce0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44c537
mov ecx, dword [ebp - 0xe98]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9cd8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9cd8], xmm1
jmp 0x44c433
cvtsi2sd xmm0, dword [ebp - 0xe98]
movsd xmm1, qword [ebp - 0x9cd8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ce8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9ce8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44c594
mov eax, dword [ebp - 0xe98]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9cd8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9cd8], xmm1
jmp 0x44c5ad
mov ecx, 1
test ecx, ecx
je 0x44c5a9
jmp 0x44c669
jmp 0x44c5d0
cvtsi2sd xmm0, dword [ebp - 0xe98]
movsd xmm1, qword [ebp - 0x9cd8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xe9c], edx
jmp 0x44c673
xor eax, eax
je 0x44c5da
jmp 0x44c5e9
jmp 0x44c433
jmp 0x44c433
mov ecx, 2
test ecx, ecx
je 0x44c669
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xea0], eax
cvtsi2sd xmm0, dword [ebp - 0xea0]
mov eax, dword [ebp - 0xea0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9cd8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xe9c], ecx
jmp 0x44c673
mov dword [ebp - 0xe9c], 8
mov edx, dword [ebp - 0xe88]
shl edx, 2
add edx, dword [ebp - 0xe84]
mov eax, dword [ebp - 0xe9c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xe88]
shl ecx, 2
add ecx, dword [ebp - 0xe84]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44c966
xor eax, eax
je 0x44c6d8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44c714
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e70]
movsd qword [ebp - 0x9cf0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44c8b4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44c8b4
mov dword [ebp - 0xea4], 0
jmp 0x44c793
cmp dword [ebp - 0xea4], 0xf
jae 0x44c8af
cvtsi2sd xmm0, dword [ebp - 0xea4]
movsd xmm1, qword [ebp - 0x9cf0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9cf8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9cf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44c802
mov ecx, dword [ebp - 0xea4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9cf0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9cf0], xmm1
jmp 0x44c6fe
cvtsi2sd xmm0, dword [ebp - 0xea4]
movsd xmm1, qword [ebp - 0x9cf0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9d00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44c85f
mov eax, dword [ebp - 0xea4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9cf0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9cf0], xmm1
jmp 0x44c878
mov ecx, 1
test ecx, ecx
je 0x44c874
jmp 0x44c934
jmp 0x44c89b
cvtsi2sd xmm0, dword [ebp - 0xea4]
movsd xmm1, qword [ebp - 0x9cf0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xea8], edx
jmp 0x44c93e
xor eax, eax
je 0x44c8a5
jmp 0x44c8b4
jmp 0x44c6fe
jmp 0x44c6fe
mov ecx, 2
test ecx, ecx
je 0x44c934
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xeac], eax
cvtsi2sd xmm0, dword [ebp - 0xeac]
mov eax, dword [ebp - 0xeac]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9cf0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xea8], ecx
jmp 0x44c93e
mov dword [ebp - 0xea8], 8
mov edx, dword [ebp - 0xe88]
shl edx, 2
add edx, dword [ebp - 0xe84]
mov eax, dword [ebp - 0xea8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xe88]
shl ecx, 2
add ecx, dword [ebp - 0xe84]
mov dword [ecx], eax
mov edx, dword [ebp - 0xe88]
add edx, 0xffffffae
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9d08], xmm0
xor eax, eax
je 0x44c980
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44c9bc
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9d08]
movsd qword [ebp - 0x9d10], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44cb5c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44cb5c
mov dword [ebp - 0xeb0], 0
jmp 0x44ca3b
cmp dword [ebp - 0xeb0], 0xf
jae 0x44cb57
cvtsi2sd xmm0, dword [ebp - 0xeb0]
movsd xmm1, qword [ebp - 0x9d10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9d18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44caaa
mov ecx, dword [ebp - 0xeb0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9d10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d10], xmm1
jmp 0x44c9a6
cvtsi2sd xmm0, dword [ebp - 0xeb0]
movsd xmm1, qword [ebp - 0x9d10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9d20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44cb07
mov eax, dword [ebp - 0xeb0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9d10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d10], xmm1
jmp 0x44cb20
mov ecx, 1
test ecx, ecx
je 0x44cb1c
jmp 0x44cbdc
jmp 0x44cb43
cvtsi2sd xmm0, dword [ebp - 0xeb0]
movsd xmm1, qword [ebp - 0x9d10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xeb4], edx
jmp 0x44cbe6
xor eax, eax
je 0x44cb4d
jmp 0x44cb5c
jmp 0x44c9a6
jmp 0x44c9a6
mov ecx, 2
test ecx, ecx
je 0x44cbdc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xeb8], eax
cvtsi2sd xmm0, dword [ebp - 0xeb8]
mov eax, dword [ebp - 0xeb8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9d10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xeb4], ecx
jmp 0x44cbe6
mov dword [ebp - 0xeb4], 8
mov edx, dword [ebp - 0xe88]
add edx, 0xffffffae
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9d28], xmm0
xor eax, eax
je 0x44cc00
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44cc3c
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9d28]
movsd qword [ebp - 0x9d30], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44cddc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44cddc
mov dword [ebp - 0xebc], 0
jmp 0x44ccbb
cmp dword [ebp - 0xebc], 0xf
jae 0x44cdd7
cvtsi2sd xmm0, dword [ebp - 0xebc]
movsd xmm1, qword [ebp - 0x9d30]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9d38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44cd2a
mov ecx, dword [ebp - 0xebc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9d30]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d30], xmm1
jmp 0x44cc26
cvtsi2sd xmm0, dword [ebp - 0xebc]
movsd xmm1, qword [ebp - 0x9d30]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9d40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44cd87
mov eax, dword [ebp - 0xebc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9d30]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d30], xmm1
jmp 0x44cda0
mov ecx, 1
test ecx, ecx
je 0x44cd9c
jmp 0x44ce5c
jmp 0x44cdc3
cvtsi2sd xmm0, dword [ebp - 0xebc]
movsd xmm1, qword [ebp - 0x9d30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xec0], edx
jmp 0x44ce66
xor eax, eax
je 0x44cdcd
jmp 0x44cddc
jmp 0x44cc26
jmp 0x44cc26
mov ecx, 2
test ecx, ecx
je 0x44ce5c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xec4], eax
cvtsi2sd xmm0, dword [ebp - 0xec4]
mov eax, dword [ebp - 0xec4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9d30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xec0], ecx
jmp 0x44ce66
mov dword [ebp - 0xec0], 8
mov edx, dword [ebp - 0xe88]
shl edx, 2
add edx, dword [ebp - 0xe84]
mov eax, dword [ebp - 0xeb4]
add eax, dword [edx]
mov ecx, dword [ebp - 0xe88]
shl ecx, 2
add ecx, dword [ebp - 0xe84]
mov edx, dword [ebp - 0xec0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xe88]
shl ecx, 2
add ecx, dword [ebp - 0xe84]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44d174
xor eax, eax
je 0x44cee6
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44cf22
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e68]
movsd qword [ebp - 0x9d48], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44d0c2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44d0c2
mov dword [ebp - 0xec8], 0
jmp 0x44cfa1
cmp dword [ebp - 0xec8], 0xf
jae 0x44d0bd
cvtsi2sd xmm0, dword [ebp - 0xec8]
movsd xmm1, qword [ebp - 0x9d48]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d50], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9d50]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44d010
mov ecx, dword [ebp - 0xec8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9d48]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d48], xmm1
jmp 0x44cf0c
cvtsi2sd xmm0, dword [ebp - 0xec8]
movsd xmm1, qword [ebp - 0x9d48]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d58], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9d58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44d06d
mov eax, dword [ebp - 0xec8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9d48]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d48], xmm1
jmp 0x44d086
mov ecx, 1
test ecx, ecx
je 0x44d082
jmp 0x44d142
jmp 0x44d0a9
cvtsi2sd xmm0, dword [ebp - 0xec8]
movsd xmm1, qword [ebp - 0x9d48]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xecc], edx
jmp 0x44d14c
xor eax, eax
je 0x44d0b3
jmp 0x44d0c2
jmp 0x44cf0c
jmp 0x44cf0c
mov ecx, 2
test ecx, ecx
je 0x44d142
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xed0], eax
cvtsi2sd xmm0, dword [ebp - 0xed0]
mov eax, dword [ebp - 0xed0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9d48]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xecc], ecx
jmp 0x44d14c
mov dword [ebp - 0xecc], 8
mov edx, dword [ebp - 0xe88]
shl edx, 2
add edx, dword [ebp - 0xe84]
mov eax, dword [ebp - 0xecc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xe88]
shl ecx, 2
add ecx, dword [ebp - 0xe84]
mov dword [ecx], eax
jmp 0x44c0a4
mov edx, dword [ebp - 0xe80]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xe80]
mov dword [ebp - 0xed4], eax
mov ecx, dword [ebp - 0xed4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xed8], ecx
mov edx, dword [ebp - 0xed8]
mov dword [ebp - 0xedc], edx
xor eax, eax
mov byte [ebp - 0x25], al
lea ecx, [ebp - 0x25]
call fcn.00425af0
mov dword [ebp - 0xee0], eax
mov ecx, dword [ebp - 0xee0]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x44e2c4
mov eax, dword [ebp - 0xee0]
mov dword [ebp - 0xee4], eax
mov dword [ebp - 0xee8], 0
jmp 0x44d1fe
mov ecx, dword [ebp - 0xee8]
add ecx, 1
mov dword [ebp - 0xee8], ecx
cmp dword [ebp - 0xee8], 1
jae 0x44e2c4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44d4d6
xor eax, eax
je 0x44d248
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44d284
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e80]
movsd qword [ebp - 0x9d60], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44d424
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44d424
mov dword [ebp - 0xeec], 0
jmp 0x44d303
cmp dword [ebp - 0xeec], 0xf
jae 0x44d41f
cvtsi2sd xmm0, dword [ebp - 0xeec]
movsd xmm1, qword [ebp - 0x9d60]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d68], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9d68]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44d372
mov ecx, dword [ebp - 0xeec]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9d60]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d60], xmm1
jmp 0x44d26e
cvtsi2sd xmm0, dword [ebp - 0xeec]
movsd xmm1, qword [ebp - 0x9d60]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d70], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9d70]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44d3cf
mov eax, dword [ebp - 0xeec]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9d60]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d60], xmm1
jmp 0x44d3e8
mov ecx, 1
test ecx, ecx
je 0x44d3e4
jmp 0x44d4a4
jmp 0x44d40b
cvtsi2sd xmm0, dword [ebp - 0xeec]
movsd xmm1, qword [ebp - 0x9d60]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xef0], edx
jmp 0x44d4ae
xor eax, eax
je 0x44d415
jmp 0x44d424
jmp 0x44d26e
jmp 0x44d26e
mov ecx, 2
test ecx, ecx
je 0x44d4a4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xef4], eax
cvtsi2sd xmm0, dword [ebp - 0xef4]
mov eax, dword [ebp - 0xef4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9d60]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xef0], ecx
jmp 0x44d4ae
mov dword [ebp - 0xef0], 8
mov edx, dword [ebp - 0xee8]
shl edx, 2
add edx, dword [ebp - 0xee4]
mov eax, dword [ebp - 0xef0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xee8]
shl ecx, 2
add ecx, dword [ebp - 0xee4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44dff4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44d7e6
xor eax, eax
je 0x44d558
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44d594
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e78]
movsd qword [ebp - 0x9d78], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44d734
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44d734
mov dword [ebp - 0xef8], 0
jmp 0x44d613
cmp dword [ebp - 0xef8], 0xf
jae 0x44d72f
cvtsi2sd xmm0, dword [ebp - 0xef8]
movsd xmm1, qword [ebp - 0x9d78]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d80], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9d80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44d682
mov ecx, dword [ebp - 0xef8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9d78]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d78], xmm1
jmp 0x44d57e
cvtsi2sd xmm0, dword [ebp - 0xef8]
movsd xmm1, qword [ebp - 0x9d78]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d88], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9d88]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44d6df
mov eax, dword [ebp - 0xef8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9d78]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d78], xmm1
jmp 0x44d6f8
mov ecx, 1
test ecx, ecx
je 0x44d6f4
jmp 0x44d7b4
jmp 0x44d71b
cvtsi2sd xmm0, dword [ebp - 0xef8]
movsd xmm1, qword [ebp - 0x9d78]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xefc], edx
jmp 0x44d7be
xor eax, eax
je 0x44d725
jmp 0x44d734
jmp 0x44d57e
jmp 0x44d57e
mov ecx, 2
test ecx, ecx
je 0x44d7b4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xf00], eax
cvtsi2sd xmm0, dword [ebp - 0xf00]
mov eax, dword [ebp - 0xf00]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9d78]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xefc], ecx
jmp 0x44d7be
mov dword [ebp - 0xefc], 8
mov edx, dword [ebp - 0xee8]
shl edx, 2
add edx, dword [ebp - 0xee4]
mov eax, dword [ebp - 0xefc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xee8]
shl ecx, 2
add ecx, dword [ebp - 0xee4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44dab1
xor eax, eax
je 0x44d823
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44d85f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e70]
movsd qword [ebp - 0x9d90], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44d9ff
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44d9ff
mov dword [ebp - 0xf04], 0
jmp 0x44d8de
cmp dword [ebp - 0xf04], 0xf
jae 0x44d9fa
cvtsi2sd xmm0, dword [ebp - 0xf04]
movsd xmm1, qword [ebp - 0x9d90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9d98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44d94d
mov ecx, dword [ebp - 0xf04]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9d90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d90], xmm1
jmp 0x44d849
cvtsi2sd xmm0, dword [ebp - 0xf04]
movsd xmm1, qword [ebp - 0x9d90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9da0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9da0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44d9aa
mov eax, dword [ebp - 0xf04]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9d90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9d90], xmm1
jmp 0x44d9c3
mov ecx, 1
test ecx, ecx
je 0x44d9bf
jmp 0x44da7f
jmp 0x44d9e6
cvtsi2sd xmm0, dword [ebp - 0xf04]
movsd xmm1, qword [ebp - 0x9d90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xf08], edx
jmp 0x44da89
xor eax, eax
je 0x44d9f0
jmp 0x44d9ff
jmp 0x44d849
jmp 0x44d849
mov ecx, 2
test ecx, ecx
je 0x44da7f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xf0c], eax
cvtsi2sd xmm0, dword [ebp - 0xf0c]
mov eax, dword [ebp - 0xf0c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9d90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xf08], ecx
jmp 0x44da89
mov dword [ebp - 0xf08], 8
mov edx, dword [ebp - 0xee8]
shl edx, 2
add edx, dword [ebp - 0xee4]
mov eax, dword [ebp - 0xf08]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xee8]
shl ecx, 2
add ecx, dword [ebp - 0xee4]
mov dword [ecx], eax
mov edx, dword [ebp - 0xee8]
add edx, 0xffffffae
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9da8], xmm0
xor eax, eax
je 0x44dacb
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44db07
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9da8]
movsd qword [ebp - 0x9db0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44dca7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44dca7
mov dword [ebp - 0xf10], 0
jmp 0x44db86
cmp dword [ebp - 0xf10], 0xf
jae 0x44dca2
cvtsi2sd xmm0, dword [ebp - 0xf10]
movsd xmm1, qword [ebp - 0x9db0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9db8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9db8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44dbf5
mov ecx, dword [ebp - 0xf10]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9db0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9db0], xmm1
jmp 0x44daf1
cvtsi2sd xmm0, dword [ebp - 0xf10]
movsd xmm1, qword [ebp - 0x9db0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9dc0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9dc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44dc52
mov eax, dword [ebp - 0xf10]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9db0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9db0], xmm1
jmp 0x44dc6b
mov ecx, 1
test ecx, ecx
je 0x44dc67
jmp 0x44dd27
jmp 0x44dc8e
cvtsi2sd xmm0, dword [ebp - 0xf10]
movsd xmm1, qword [ebp - 0x9db0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xf14], edx
jmp 0x44dd31
xor eax, eax
je 0x44dc98
jmp 0x44dca7
jmp 0x44daf1
jmp 0x44daf1
mov ecx, 2
test ecx, ecx
je 0x44dd27
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xf18], eax
cvtsi2sd xmm0, dword [ebp - 0xf18]
mov eax, dword [ebp - 0xf18]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9db0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xf14], ecx
jmp 0x44dd31
mov dword [ebp - 0xf14], 8
mov edx, dword [ebp - 0xee8]
add edx, 0xffffffae
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9dc8], xmm0
xor eax, eax
je 0x44dd4b
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44dd87
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9dc8]
movsd qword [ebp - 0x9dd0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44df27
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44df27
mov dword [ebp - 0xf1c], 0
jmp 0x44de06
cmp dword [ebp - 0xf1c], 0xf
jae 0x44df22
cvtsi2sd xmm0, dword [ebp - 0xf1c]
movsd xmm1, qword [ebp - 0x9dd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9dd8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9dd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44de75
mov ecx, dword [ebp - 0xf1c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9dd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9dd0], xmm1
jmp 0x44dd71
cvtsi2sd xmm0, dword [ebp - 0xf1c]
movsd xmm1, qword [ebp - 0x9dd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9de0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9de0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44ded2
mov eax, dword [ebp - 0xf1c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9dd0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9dd0], xmm1
jmp 0x44deeb
mov ecx, 1
test ecx, ecx
je 0x44dee7
jmp 0x44dfa7
jmp 0x44df0e
cvtsi2sd xmm0, dword [ebp - 0xf1c]
movsd xmm1, qword [ebp - 0x9dd0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xf20], edx
jmp 0x44dfb1
xor eax, eax
je 0x44df18
jmp 0x44df27
jmp 0x44dd71
jmp 0x44dd71
mov ecx, 2
test ecx, ecx
je 0x44dfa7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xf24], eax
cvtsi2sd xmm0, dword [ebp - 0xf24]
mov eax, dword [ebp - 0xf24]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9dd0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xf20], ecx
jmp 0x44dfb1
mov dword [ebp - 0xf20], 8
mov edx, dword [ebp - 0xee8]
shl edx, 2
add edx, dword [ebp - 0xee4]
mov eax, dword [ebp - 0xf14]
add eax, dword [edx]
mov ecx, dword [ebp - 0xee8]
shl ecx, 2
add ecx, dword [ebp - 0xee4]
mov edx, dword [ebp - 0xf20]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xee8]
shl ecx, 2
add ecx, dword [ebp - 0xee4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44e2bf
xor eax, eax
je 0x44e031
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44e06d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e68]
movsd qword [ebp - 0x9de8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44e20d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44e20d
mov dword [ebp - 0xf28], 0
jmp 0x44e0ec
cmp dword [ebp - 0xf28], 0xf
jae 0x44e208
cvtsi2sd xmm0, dword [ebp - 0xf28]
movsd xmm1, qword [ebp - 0x9de8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9df0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9df0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44e15b
mov ecx, dword [ebp - 0xf28]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9de8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9de8], xmm1
jmp 0x44e057
cvtsi2sd xmm0, dword [ebp - 0xf28]
movsd xmm1, qword [ebp - 0x9de8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9df8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9df8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44e1b8
mov eax, dword [ebp - 0xf28]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9de8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9de8], xmm1
jmp 0x44e1d1
mov ecx, 1
test ecx, ecx
je 0x44e1cd
jmp 0x44e28d
jmp 0x44e1f4
cvtsi2sd xmm0, dword [ebp - 0xf28]
movsd xmm1, qword [ebp - 0x9de8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xf2c], edx
jmp 0x44e297
xor eax, eax
je 0x44e1fe
jmp 0x44e20d
jmp 0x44e057
jmp 0x44e057
mov ecx, 2
test ecx, ecx
je 0x44e28d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xf30], eax
cvtsi2sd xmm0, dword [ebp - 0xf30]
mov eax, dword [ebp - 0xf30]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9de8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xf2c], ecx
jmp 0x44e297
mov dword [ebp - 0xf2c], 8
mov edx, dword [ebp - 0xee8]
shl edx, 2
add edx, dword [ebp - 0xee4]
mov eax, dword [ebp - 0xf2c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xee8]
shl ecx, 2
add ecx, dword [ebp - 0xee4]
mov dword [ecx], eax
jmp 0x44d1ef
mov edx, dword [ebp - 0xee0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xee0]
mov dword [ebp - 0xf34], eax
mov ecx, dword [ebp - 0xf34]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xf38], ecx
mov edx, dword [ebp - 0xf38]
mov dword [ebp - 0xf3c], edx
xor eax, eax
mov byte [ebp - 0x26], al
lea ecx, [ebp - 0x26]
call fcn.00425ac0
mov dword [ebp - 0xf40], eax
mov ecx, dword [ebp - 0xf40]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x44f40f
mov eax, dword [ebp - 0xf40]
mov dword [ebp - 0xf44], eax
mov dword [ebp - 0xf48], 0
jmp 0x44e349
mov ecx, dword [ebp - 0xf48]
add ecx, 1
mov dword [ebp - 0xf48], ecx
cmp dword [ebp - 0xf48], 1
jae 0x44f40f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44e621
xor eax, eax
je 0x44e393
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44e3cf
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e78]
movsd qword [ebp - 0x9e00], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44e56f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44e56f
mov dword [ebp - 0xf4c], 0
jmp 0x44e44e
cmp dword [ebp - 0xf4c], 0xf
jae 0x44e56a
cvtsi2sd xmm0, dword [ebp - 0xf4c]
movsd xmm1, qword [ebp - 0x9e00]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e08], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9e08]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44e4bd
mov ecx, dword [ebp - 0xf4c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9e00]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e00], xmm1
jmp 0x44e3b9
cvtsi2sd xmm0, dword [ebp - 0xf4c]
movsd xmm1, qword [ebp - 0x9e00]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e10], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9e10]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44e51a
mov eax, dword [ebp - 0xf4c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9e00]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e00], xmm1
jmp 0x44e533
mov ecx, 1
test ecx, ecx
je 0x44e52f
jmp 0x44e5ef
jmp 0x44e556
cvtsi2sd xmm0, dword [ebp - 0xf4c]
movsd xmm1, qword [ebp - 0x9e00]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xf50], edx
jmp 0x44e5f9
xor eax, eax
je 0x44e560
jmp 0x44e56f
jmp 0x44e3b9
jmp 0x44e3b9
mov ecx, 2
test ecx, ecx
je 0x44e5ef
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xf54], eax
cvtsi2sd xmm0, dword [ebp - 0xf54]
mov eax, dword [ebp - 0xf54]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9e00]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xf50], ecx
jmp 0x44e5f9
mov dword [ebp - 0xf50], 8
mov edx, dword [ebp - 0xf48]
shl edx, 2
add edx, dword [ebp - 0xf44]
mov eax, dword [ebp - 0xf50]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xf48]
shl ecx, 2
add ecx, dword [ebp - 0xf44]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44f13f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44e931
xor eax, eax
je 0x44e6a3
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44e6df
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e70]
movsd qword [ebp - 0x9e18], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44e87f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44e87f
mov dword [ebp - 0xf58], 0
jmp 0x44e75e
cmp dword [ebp - 0xf58], 0xf
jae 0x44e87a
cvtsi2sd xmm0, dword [ebp - 0xf58]
movsd xmm1, qword [ebp - 0x9e18]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e20], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9e20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44e7cd
mov ecx, dword [ebp - 0xf58]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9e18]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e18], xmm1
jmp 0x44e6c9
cvtsi2sd xmm0, dword [ebp - 0xf58]
movsd xmm1, qword [ebp - 0x9e18]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e28], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9e28]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44e82a
mov eax, dword [ebp - 0xf58]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9e18]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e18], xmm1
jmp 0x44e843
mov ecx, 1
test ecx, ecx
je 0x44e83f
jmp 0x44e8ff
jmp 0x44e866
cvtsi2sd xmm0, dword [ebp - 0xf58]
movsd xmm1, qword [ebp - 0x9e18]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xf5c], edx
jmp 0x44e909
xor eax, eax
je 0x44e870
jmp 0x44e87f
jmp 0x44e6c9
jmp 0x44e6c9
mov ecx, 2
test ecx, ecx
je 0x44e8ff
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xf60], eax
cvtsi2sd xmm0, dword [ebp - 0xf60]
mov eax, dword [ebp - 0xf60]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9e18]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xf5c], ecx
jmp 0x44e909
mov dword [ebp - 0xf5c], 8
mov edx, dword [ebp - 0xf48]
shl edx, 2
add edx, dword [ebp - 0xf44]
mov eax, dword [ebp - 0xf5c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xf48]
shl ecx, 2
add ecx, dword [ebp - 0xf44]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44ebfc
xor eax, eax
je 0x44e96e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44e9aa
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e68]
movsd qword [ebp - 0x9e30], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44eb4a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44eb4a
mov dword [ebp - 0xf64], 0
jmp 0x44ea29
cmp dword [ebp - 0xf64], 0xf
jae 0x44eb45
cvtsi2sd xmm0, dword [ebp - 0xf64]
movsd xmm1, qword [ebp - 0x9e30]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9e38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44ea98
mov ecx, dword [ebp - 0xf64]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9e30]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e30], xmm1
jmp 0x44e994
cvtsi2sd xmm0, dword [ebp - 0xf64]
movsd xmm1, qword [ebp - 0x9e30]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9e40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44eaf5
mov eax, dword [ebp - 0xf64]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9e30]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e30], xmm1
jmp 0x44eb0e
mov ecx, 1
test ecx, ecx
je 0x44eb0a
jmp 0x44ebca
jmp 0x44eb31
cvtsi2sd xmm0, dword [ebp - 0xf64]
movsd xmm1, qword [ebp - 0x9e30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xf68], edx
jmp 0x44ebd4
xor eax, eax
je 0x44eb3b
jmp 0x44eb4a
jmp 0x44e994
jmp 0x44e994
mov ecx, 2
test ecx, ecx
je 0x44ebca
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xf6c], eax
cvtsi2sd xmm0, dword [ebp - 0xf6c]
mov eax, dword [ebp - 0xf6c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9e30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xf68], ecx
jmp 0x44ebd4
mov dword [ebp - 0xf68], 8
mov edx, dword [ebp - 0xf48]
shl edx, 2
add edx, dword [ebp - 0xf44]
mov eax, dword [ebp - 0xf68]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xf48]
shl ecx, 2
add ecx, dword [ebp - 0xf44]
mov dword [ecx], eax
mov edx, dword [ebp - 0xf48]
add edx, 0xffffffaf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9e48], xmm0
xor eax, eax
je 0x44ec16
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44ec52
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9e48]
movsd qword [ebp - 0x9e50], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44edf2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44edf2
mov dword [ebp - 0xf70], 0
jmp 0x44ecd1
cmp dword [ebp - 0xf70], 0xf
jae 0x44eded
cvtsi2sd xmm0, dword [ebp - 0xf70]
movsd xmm1, qword [ebp - 0x9e50]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9e58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44ed40
mov ecx, dword [ebp - 0xf70]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9e50]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e50], xmm1
jmp 0x44ec3c
cvtsi2sd xmm0, dword [ebp - 0xf70]
movsd xmm1, qword [ebp - 0x9e50]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9e60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44ed9d
mov eax, dword [ebp - 0xf70]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9e50]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e50], xmm1
jmp 0x44edb6
mov ecx, 1
test ecx, ecx
je 0x44edb2
jmp 0x44ee72
jmp 0x44edd9
cvtsi2sd xmm0, dword [ebp - 0xf70]
movsd xmm1, qword [ebp - 0x9e50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xf74], edx
jmp 0x44ee7c
xor eax, eax
je 0x44ede3
jmp 0x44edf2
jmp 0x44ec3c
jmp 0x44ec3c
mov ecx, 2
test ecx, ecx
je 0x44ee72
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xf78], eax
cvtsi2sd xmm0, dword [ebp - 0xf78]
mov eax, dword [ebp - 0xf78]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9e50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xf74], ecx
jmp 0x44ee7c
mov dword [ebp - 0xf74], 8
mov edx, dword [ebp - 0xf48]
add edx, 0xffffffaf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9e68], xmm0
xor eax, eax
je 0x44ee96
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44eed2
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9e68]
movsd qword [ebp - 0x9e70], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44f072
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44f072
mov dword [ebp - 0xf7c], 0
jmp 0x44ef51
cmp dword [ebp - 0xf7c], 0xf
jae 0x44f06d
cvtsi2sd xmm0, dword [ebp - 0xf7c]
movsd xmm1, qword [ebp - 0x9e70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9e78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44efc0
mov ecx, dword [ebp - 0xf7c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9e70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e70], xmm1
jmp 0x44eebc
cvtsi2sd xmm0, dword [ebp - 0xf7c]
movsd xmm1, qword [ebp - 0x9e70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9e80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44f01d
mov eax, dword [ebp - 0xf7c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9e70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e70], xmm1
jmp 0x44f036
mov ecx, 1
test ecx, ecx
je 0x44f032
jmp 0x44f0f2
jmp 0x44f059
cvtsi2sd xmm0, dword [ebp - 0xf7c]
movsd xmm1, qword [ebp - 0x9e70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xf80], edx
jmp 0x44f0fc
xor eax, eax
je 0x44f063
jmp 0x44f072
jmp 0x44eebc
jmp 0x44eebc
mov ecx, 2
test ecx, ecx
je 0x44f0f2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xf84], eax
cvtsi2sd xmm0, dword [ebp - 0xf84]
mov eax, dword [ebp - 0xf84]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9e70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xf80], ecx
jmp 0x44f0fc
mov dword [ebp - 0xf80], 8
mov edx, dword [ebp - 0xf48]
shl edx, 2
add edx, dword [ebp - 0xf44]
mov eax, dword [ebp - 0xf74]
add eax, dword [edx]
mov ecx, dword [ebp - 0xf48]
shl ecx, 2
add ecx, dword [ebp - 0xf44]
mov edx, dword [ebp - 0xf80]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xf48]
shl ecx, 2
add ecx, dword [ebp - 0xf44]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44f40a
xor eax, eax
je 0x44f17c
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44f1b8
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e60]
movsd qword [ebp - 0x9e88], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44f358
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44f358
mov dword [ebp - 0xf88], 0
jmp 0x44f237
cmp dword [ebp - 0xf88], 0xf
jae 0x44f353
cvtsi2sd xmm0, dword [ebp - 0xf88]
movsd xmm1, qword [ebp - 0x9e88]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e90], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9e90]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44f2a6
mov ecx, dword [ebp - 0xf88]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9e88]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e88], xmm1
jmp 0x44f1a2
cvtsi2sd xmm0, dword [ebp - 0xf88]
movsd xmm1, qword [ebp - 0x9e88]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e98], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9e98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44f303
mov eax, dword [ebp - 0xf88]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9e88]
addsd xmm1, xmm0
movsd qword [ebp - 0x9e88], xmm1
jmp 0x44f31c
mov ecx, 1
test ecx, ecx
je 0x44f318
jmp 0x44f3d8
jmp 0x44f33f
cvtsi2sd xmm0, dword [ebp - 0xf88]
movsd xmm1, qword [ebp - 0x9e88]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xf8c], edx
jmp 0x44f3e2
xor eax, eax
je 0x44f349
jmp 0x44f358
jmp 0x44f1a2
jmp 0x44f1a2
mov ecx, 2
test ecx, ecx
je 0x44f3d8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xf90], eax
cvtsi2sd xmm0, dword [ebp - 0xf90]
mov eax, dword [ebp - 0xf90]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9e88]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xf8c], ecx
jmp 0x44f3e2
mov dword [ebp - 0xf8c], 8
mov edx, dword [ebp - 0xf48]
shl edx, 2
add edx, dword [ebp - 0xf44]
mov eax, dword [ebp - 0xf8c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xf48]
shl ecx, 2
add ecx, dword [ebp - 0xf44]
mov dword [ecx], eax
jmp 0x44e33a
mov edx, dword [ebp - 0xf40]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xf40]
mov dword [ebp - 0xf94], eax
mov ecx, dword [ebp - 0xf94]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xf98], ecx
mov edx, dword [ebp - 0xf98]
mov dword [ebp - 0xf9c], edx
mov eax, dword [ebp - 0xf3c]
mov dword [ebp - 0xedc], eax
cmp dword [ebp - 0xedc], 0
je 0x4505ac
xor ecx, ecx
mov byte [ebp - 0x27], cl
lea ecx, [ebp - 0x27]
call fcn.00425a90
mov dword [ebp - 0xfa0], eax
mov edx, dword [ebp - 0xfa0]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x450573
mov ecx, dword [ebp - 0xfa0]
mov dword [ebp - 0xfa4], ecx
mov dword [ebp - 0xfa8], 0
jmp 0x44f4ad
mov edx, dword [ebp - 0xfa8]
add edx, 1
mov dword [ebp - 0xfa8], edx
cmp dword [ebp - 0xfa8], 1
jae 0x450573
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44f785
xor eax, eax
je 0x44f4f7
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x44f533
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e78]
movsd qword [ebp - 0x9ea0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44f6d3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44f6d3
mov dword [ebp - 0xfac], 0
jmp 0x44f5b2
cmp dword [ebp - 0xfac], 0xf
jae 0x44f6ce
cvtsi2sd xmm0, dword [ebp - 0xfac]
movsd xmm1, qword [ebp - 0x9ea0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ea8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ea8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44f621
mov ecx, dword [ebp - 0xfac]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9ea0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ea0], xmm1
jmp 0x44f51d
cvtsi2sd xmm0, dword [ebp - 0xfac]
movsd xmm1, qword [ebp - 0x9ea0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9eb0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9eb0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44f67e
mov eax, dword [ebp - 0xfac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ea0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ea0], xmm1
jmp 0x44f697
mov ecx, 1
test ecx, ecx
je 0x44f693
jmp 0x44f753
jmp 0x44f6ba
cvtsi2sd xmm0, dword [ebp - 0xfac]
movsd xmm1, qword [ebp - 0x9ea0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xfb0], edx
jmp 0x44f75d
xor eax, eax
je 0x44f6c4
jmp 0x44f6d3
jmp 0x44f51d
jmp 0x44f51d
mov ecx, 2
test ecx, ecx
je 0x44f753
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xfb4], eax
cvtsi2sd xmm0, dword [ebp - 0xfb4]
mov eax, dword [ebp - 0xfb4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9ea0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xfb0], ecx
jmp 0x44f75d
mov dword [ebp - 0xfb0], 8
mov edx, dword [ebp - 0xfa8]
shl edx, 2
add edx, dword [ebp - 0xfa4]
mov eax, dword [ebp - 0xfb0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xfa8]
shl ecx, 2
add ecx, dword [ebp - 0xfa4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4502a3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44fa95
xor eax, eax
je 0x44f807
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44f843
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e70]
movsd qword [ebp - 0x9eb8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44f9e3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44f9e3
mov dword [ebp - 0xfb8], 0
jmp 0x44f8c2
cmp dword [ebp - 0xfb8], 0xf
jae 0x44f9de
cvtsi2sd xmm0, dword [ebp - 0xfb8]
movsd xmm1, qword [ebp - 0x9eb8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ec0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ec0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44f931
mov ecx, dword [ebp - 0xfb8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9eb8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9eb8], xmm1
jmp 0x44f82d
cvtsi2sd xmm0, dword [ebp - 0xfb8]
movsd xmm1, qword [ebp - 0x9eb8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ec8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9ec8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44f98e
mov eax, dword [ebp - 0xfb8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9eb8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9eb8], xmm1
jmp 0x44f9a7
mov ecx, 1
test ecx, ecx
je 0x44f9a3
jmp 0x44fa63
jmp 0x44f9ca
cvtsi2sd xmm0, dword [ebp - 0xfb8]
movsd xmm1, qword [ebp - 0x9eb8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xfbc], edx
jmp 0x44fa6d
xor eax, eax
je 0x44f9d4
jmp 0x44f9e3
jmp 0x44f82d
jmp 0x44f82d
mov ecx, 2
test ecx, ecx
je 0x44fa63
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xfc0], eax
cvtsi2sd xmm0, dword [ebp - 0xfc0]
mov eax, dword [ebp - 0xfc0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9eb8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xfbc], ecx
jmp 0x44fa6d
mov dword [ebp - 0xfbc], 8
mov edx, dword [ebp - 0xfa8]
shl edx, 2
add edx, dword [ebp - 0xfa4]
mov eax, dword [ebp - 0xfbc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xfa8]
shl ecx, 2
add ecx, dword [ebp - 0xfa4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x44fd60
xor eax, eax
je 0x44fad2
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x44fb0e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e68]
movsd qword [ebp - 0x9ed0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44fcae
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44fcae
mov dword [ebp - 0xfc4], 0
jmp 0x44fb8d
cmp dword [ebp - 0xfc4], 0xf
jae 0x44fca9
cvtsi2sd xmm0, dword [ebp - 0xfc4]
movsd xmm1, qword [ebp - 0x9ed0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ed8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ed8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44fbfc
mov ecx, dword [ebp - 0xfc4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9ed0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ed0], xmm1
jmp 0x44faf8
cvtsi2sd xmm0, dword [ebp - 0xfc4]
movsd xmm1, qword [ebp - 0x9ed0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ee0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9ee0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44fc59
mov eax, dword [ebp - 0xfc4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ed0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ed0], xmm1
jmp 0x44fc72
mov ecx, 1
test ecx, ecx
je 0x44fc6e
jmp 0x44fd2e
jmp 0x44fc95
cvtsi2sd xmm0, dword [ebp - 0xfc4]
movsd xmm1, qword [ebp - 0x9ed0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xfc8], edx
jmp 0x44fd38
xor eax, eax
je 0x44fc9f
jmp 0x44fcae
jmp 0x44faf8
jmp 0x44faf8
mov ecx, 2
test ecx, ecx
je 0x44fd2e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xfcc], eax
cvtsi2sd xmm0, dword [ebp - 0xfcc]
mov eax, dword [ebp - 0xfcc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9ed0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xfc8], ecx
jmp 0x44fd38
mov dword [ebp - 0xfc8], 8
mov edx, dword [ebp - 0xfa8]
shl edx, 2
add edx, dword [ebp - 0xfa4]
mov eax, dword [ebp - 0xfc8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xfa8]
shl ecx, 2
add ecx, dword [ebp - 0xfa4]
mov dword [ecx], eax
mov edx, dword [ebp - 0xfa8]
add edx, 0xffffffaf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9ee8], xmm0
xor eax, eax
je 0x44fd7a
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x44fdb6
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9ee8]
movsd qword [ebp - 0x9ef0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x44ff56
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x44ff56
mov dword [ebp - 0xfd0], 0
jmp 0x44fe35
cmp dword [ebp - 0xfd0], 0xf
jae 0x44ff51
cvtsi2sd xmm0, dword [ebp - 0xfd0]
movsd xmm1, qword [ebp - 0x9ef0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ef8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ef8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44fea4
mov ecx, dword [ebp - 0xfd0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9ef0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ef0], xmm1
jmp 0x44fda0
cvtsi2sd xmm0, dword [ebp - 0xfd0]
movsd xmm1, qword [ebp - 0x9ef0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9f00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x44ff01
mov eax, dword [ebp - 0xfd0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ef0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ef0], xmm1
jmp 0x44ff1a
mov ecx, 1
test ecx, ecx
je 0x44ff16
jmp 0x44ffd6
jmp 0x44ff3d
cvtsi2sd xmm0, dword [ebp - 0xfd0]
movsd xmm1, qword [ebp - 0x9ef0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xfd4], edx
jmp 0x44ffe0
xor eax, eax
je 0x44ff47
jmp 0x44ff56
jmp 0x44fda0
jmp 0x44fda0
mov ecx, 2
test ecx, ecx
je 0x44ffd6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xfd8], eax
cvtsi2sd xmm0, dword [ebp - 0xfd8]
mov eax, dword [ebp - 0xfd8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9ef0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xfd4], ecx
jmp 0x44ffe0
mov dword [ebp - 0xfd4], 8
mov edx, dword [ebp - 0xfa8]
add edx, 0xffffffaf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9f08], xmm0
xor eax, eax
je 0x44fffa
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x450036
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9f08]
movsd qword [ebp - 0x9f10], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4501d6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4501d6
mov dword [ebp - 0xfdc], 0
jmp 0x4500b5
cmp dword [ebp - 0xfdc], 0xf
jae 0x4501d1
cvtsi2sd xmm0, dword [ebp - 0xfdc]
movsd xmm1, qword [ebp - 0x9f10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9f18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x450124
mov ecx, dword [ebp - 0xfdc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9f10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f10], xmm1
jmp 0x450020
cvtsi2sd xmm0, dword [ebp - 0xfdc]
movsd xmm1, qword [ebp - 0x9f10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9f20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x450181
mov eax, dword [ebp - 0xfdc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9f10]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f10], xmm1
jmp 0x45019a
mov ecx, 1
test ecx, ecx
je 0x450196
jmp 0x450256
jmp 0x4501bd
cvtsi2sd xmm0, dword [ebp - 0xfdc]
movsd xmm1, qword [ebp - 0x9f10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xfe0], edx
jmp 0x450260
xor eax, eax
je 0x4501c7
jmp 0x4501d6
jmp 0x450020
jmp 0x450020
mov ecx, 2
test ecx, ecx
je 0x450256
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xfe4], eax
cvtsi2sd xmm0, dword [ebp - 0xfe4]
mov eax, dword [ebp - 0xfe4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9f10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xfe0], ecx
jmp 0x450260
mov dword [ebp - 0xfe0], 8
mov edx, dword [ebp - 0xfa8]
shl edx, 2
add edx, dword [ebp - 0xfa4]
mov eax, dword [ebp - 0xfd4]
add eax, dword [edx]
mov ecx, dword [ebp - 0xfa8]
shl ecx, 2
add ecx, dword [ebp - 0xfa4]
mov edx, dword [ebp - 0xfe0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0xfa8]
shl ecx, 2
add ecx, dword [ebp - 0xfa4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45056e
xor eax, eax
je 0x4502e0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45031c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e60]
movsd qword [ebp - 0x9f28], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4504bc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4504bc
mov dword [ebp - 0xfe8], 0
jmp 0x45039b
cmp dword [ebp - 0xfe8], 0xf
jae 0x4504b7
cvtsi2sd xmm0, dword [ebp - 0xfe8]
movsd xmm1, qword [ebp - 0x9f28]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f30], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9f30]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45040a
mov ecx, dword [ebp - 0xfe8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9f28]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f28], xmm1
jmp 0x450306
cvtsi2sd xmm0, dword [ebp - 0xfe8]
movsd xmm1, qword [ebp - 0x9f28]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f38], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9f38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x450467
mov eax, dword [ebp - 0xfe8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9f28]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f28], xmm1
jmp 0x450480
mov ecx, 1
test ecx, ecx
je 0x45047c
jmp 0x45053c
jmp 0x4504a3
cvtsi2sd xmm0, dword [ebp - 0xfe8]
movsd xmm1, qword [ebp - 0x9f28]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0xfec], edx
jmp 0x450546
xor eax, eax
je 0x4504ad
jmp 0x4504bc
jmp 0x450306
jmp 0x450306
mov ecx, 2
test ecx, ecx
je 0x45053c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0xff0], eax
cvtsi2sd xmm0, dword [ebp - 0xff0]
mov eax, dword [ebp - 0xff0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9f28]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0xfec], ecx
jmp 0x450546
mov dword [ebp - 0xfec], 8
mov edx, dword [ebp - 0xfa8]
shl edx, 2
add edx, dword [ebp - 0xfa4]
mov eax, dword [ebp - 0xfec]
xor eax, dword [edx]
mov ecx, dword [ebp - 0xfa8]
shl ecx, 2
add ecx, dword [ebp - 0xfa4]
mov dword [ecx], eax
jmp 0x44f49e
mov edx, dword [ebp - 0xfa0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xfa0]
mov dword [ebp - 0xff4], eax
mov ecx, dword [ebp - 0xff4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0xff8], ecx
mov edx, dword [ebp - 0xff8]
mov dword [ebp - 0xf9c], edx
mov edx, dword [ebp - 0x5fc]
mov ecx, dword [ebp - 0x47c]
call fcn.005a9fa0
mov byte [ebp - 0x28], al
xor eax, eax
mov byte [ebp - 0x29], al
lea ecx, [ebp - 0x29]
call fcn.00425a60
mov dword [ebp - 0xffc], eax
mov ecx, dword [ebp - 0xffc]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4516d2
mov eax, dword [ebp - 0xffc]
mov dword [ebp - 0x1000], eax
mov dword [ebp - 0x1004], 0
jmp 0x45060c
mov ecx, dword [ebp - 0x1004]
add ecx, 1
mov dword [ebp - 0x1004], ecx
cmp dword [ebp - 0x1004], 1
jae 0x4516d2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4508e4
xor eax, eax
je 0x450656
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x450692
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e78]
movsd qword [ebp - 0x9f40], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x450832
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x450832
mov dword [ebp - 0x1008], 0
jmp 0x450711
cmp dword [ebp - 0x1008], 0xf
jae 0x45082d
cvtsi2sd xmm0, dword [ebp - 0x1008]
movsd xmm1, qword [ebp - 0x9f40]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f48], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9f48]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x450780
mov ecx, dword [ebp - 0x1008]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9f40]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f40], xmm1
jmp 0x45067c
cvtsi2sd xmm0, dword [ebp - 0x1008]
movsd xmm1, qword [ebp - 0x9f40]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f50], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9f50]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4507dd
mov eax, dword [ebp - 0x1008]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9f40]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f40], xmm1
jmp 0x4507f6
mov ecx, 1
test ecx, ecx
je 0x4507f2
jmp 0x4508b2
jmp 0x450819
cvtsi2sd xmm0, dword [ebp - 0x1008]
movsd xmm1, qword [ebp - 0x9f40]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x100c], edx
jmp 0x4508bc
xor eax, eax
je 0x450823
jmp 0x450832
jmp 0x45067c
jmp 0x45067c
mov ecx, 2
test ecx, ecx
je 0x4508b2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1010], eax
cvtsi2sd xmm0, dword [ebp - 0x1010]
mov eax, dword [ebp - 0x1010]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9f40]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x100c], ecx
jmp 0x4508bc
mov dword [ebp - 0x100c], 8
mov edx, dword [ebp - 0x1004]
shl edx, 2
add edx, dword [ebp - 0x1000]
mov eax, dword [ebp - 0x100c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1004]
shl ecx, 2
add ecx, dword [ebp - 0x1000]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x451402
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x450bf4
xor eax, eax
je 0x450966
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4509a2
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e70]
movsd qword [ebp - 0x9f58], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x450b42
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x450b42
mov dword [ebp - 0x1014], 0
jmp 0x450a21
cmp dword [ebp - 0x1014], 0xf
jae 0x450b3d
cvtsi2sd xmm0, dword [ebp - 0x1014]
movsd xmm1, qword [ebp - 0x9f58]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f60], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9f60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x450a90
mov ecx, dword [ebp - 0x1014]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9f58]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f58], xmm1
jmp 0x45098c
cvtsi2sd xmm0, dword [ebp - 0x1014]
movsd xmm1, qword [ebp - 0x9f58]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f68], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9f68]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x450aed
mov eax, dword [ebp - 0x1014]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9f58]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f58], xmm1
jmp 0x450b06
mov ecx, 1
test ecx, ecx
je 0x450b02
jmp 0x450bc2
jmp 0x450b29
cvtsi2sd xmm0, dword [ebp - 0x1014]
movsd xmm1, qword [ebp - 0x9f58]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1018], edx
jmp 0x450bcc
xor eax, eax
je 0x450b33
jmp 0x450b42
jmp 0x45098c
jmp 0x45098c
mov ecx, 2
test ecx, ecx
je 0x450bc2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x101c], eax
cvtsi2sd xmm0, dword [ebp - 0x101c]
mov eax, dword [ebp - 0x101c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9f58]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1018], ecx
jmp 0x450bcc
mov dword [ebp - 0x1018], 8
mov edx, dword [ebp - 0x1004]
shl edx, 2
add edx, dword [ebp - 0x1000]
mov eax, dword [ebp - 0x1018]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1004]
shl ecx, 2
add ecx, dword [ebp - 0x1000]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x450ebf
xor eax, eax
je 0x450c31
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x450c6d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e68]
movsd qword [ebp - 0x9f70], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x450e0d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x450e0d
mov dword [ebp - 0x1020], 0
jmp 0x450cec
cmp dword [ebp - 0x1020], 0xf
jae 0x450e08
cvtsi2sd xmm0, dword [ebp - 0x1020]
movsd xmm1, qword [ebp - 0x9f70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9f78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x450d5b
mov ecx, dword [ebp - 0x1020]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9f70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f70], xmm1
jmp 0x450c57
cvtsi2sd xmm0, dword [ebp - 0x1020]
movsd xmm1, qword [ebp - 0x9f70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9f80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x450db8
mov eax, dword [ebp - 0x1020]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9f70]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f70], xmm1
jmp 0x450dd1
mov ecx, 1
test ecx, ecx
je 0x450dcd
jmp 0x450e8d
jmp 0x450df4
cvtsi2sd xmm0, dword [ebp - 0x1020]
movsd xmm1, qword [ebp - 0x9f70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1024], edx
jmp 0x450e97
xor eax, eax
je 0x450dfe
jmp 0x450e0d
jmp 0x450c57
jmp 0x450c57
mov ecx, 2
test ecx, ecx
je 0x450e8d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1028], eax
cvtsi2sd xmm0, dword [ebp - 0x1028]
mov eax, dword [ebp - 0x1028]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9f70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1024], ecx
jmp 0x450e97
mov dword [ebp - 0x1024], 8
mov edx, dword [ebp - 0x1004]
shl edx, 2
add edx, dword [ebp - 0x1000]
mov eax, dword [ebp - 0x1024]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1004]
shl ecx, 2
add ecx, dword [ebp - 0x1000]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1004]
add edx, 0xffffffaf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9f88], xmm0
xor eax, eax
je 0x450ed9
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x450f15
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9f88]
movsd qword [ebp - 0x9f90], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4510b5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4510b5
mov dword [ebp - 0x102c], 0
jmp 0x450f94
cmp dword [ebp - 0x102c], 0xf
jae 0x4510b0
cvtsi2sd xmm0, dword [ebp - 0x102c]
movsd xmm1, qword [ebp - 0x9f90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9f98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x451003
mov ecx, dword [ebp - 0x102c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9f90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f90], xmm1
jmp 0x450eff
cvtsi2sd xmm0, dword [ebp - 0x102c]
movsd xmm1, qword [ebp - 0x9f90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9fa0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9fa0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x451060
mov eax, dword [ebp - 0x102c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9f90]
addsd xmm1, xmm0
movsd qword [ebp - 0x9f90], xmm1
jmp 0x451079
mov ecx, 1
test ecx, ecx
je 0x451075
jmp 0x451135
jmp 0x45109c
cvtsi2sd xmm0, dword [ebp - 0x102c]
movsd xmm1, qword [ebp - 0x9f90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1030], edx
jmp 0x45113f
xor eax, eax
je 0x4510a6
jmp 0x4510b5
jmp 0x450eff
jmp 0x450eff
mov ecx, 2
test ecx, ecx
je 0x451135
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1034], eax
cvtsi2sd xmm0, dword [ebp - 0x1034]
mov eax, dword [ebp - 0x1034]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9f90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1030], ecx
jmp 0x45113f
mov dword [ebp - 0x1030], 8
mov edx, dword [ebp - 0x1004]
add edx, 0xffffffaf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0x9fa8], xmm0
xor eax, eax
je 0x451159
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x451195
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0x9fa8]
movsd qword [ebp - 0x9fb0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x451335
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x451335
mov dword [ebp - 0x1038], 0
jmp 0x451214
cmp dword [ebp - 0x1038], 0xf
jae 0x451330
cvtsi2sd xmm0, dword [ebp - 0x1038]
movsd xmm1, qword [ebp - 0x9fb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9fb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9fb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x451283
mov ecx, dword [ebp - 0x1038]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9fb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9fb0], xmm1
jmp 0x45117f
cvtsi2sd xmm0, dword [ebp - 0x1038]
movsd xmm1, qword [ebp - 0x9fb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9fc0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9fc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4512e0
mov eax, dword [ebp - 0x1038]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9fb0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9fb0], xmm1
jmp 0x4512f9
mov ecx, 1
test ecx, ecx
je 0x4512f5
jmp 0x4513b5
jmp 0x45131c
cvtsi2sd xmm0, dword [ebp - 0x1038]
movsd xmm1, qword [ebp - 0x9fb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x103c], edx
jmp 0x4513bf
xor eax, eax
je 0x451326
jmp 0x451335
jmp 0x45117f
jmp 0x45117f
mov ecx, 2
test ecx, ecx
je 0x4513b5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1040], eax
cvtsi2sd xmm0, dword [ebp - 0x1040]
mov eax, dword [ebp - 0x1040]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9fb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x103c], ecx
jmp 0x4513bf
mov dword [ebp - 0x103c], 8
mov edx, dword [ebp - 0x1004]
shl edx, 2
add edx, dword [ebp - 0x1000]
mov eax, dword [ebp - 0x1030]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1004]
shl ecx, 2
add ecx, dword [ebp - 0x1000]
mov edx, dword [ebp - 0x103c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1004]
shl ecx, 2
add ecx, dword [ebp - 0x1000]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4516cd
xor eax, eax
je 0x45143f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45147b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e60]
movsd qword [ebp - 0x9fc8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45161b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45161b
mov dword [ebp - 0x1044], 0
jmp 0x4514fa
cmp dword [ebp - 0x1044], 0xf
jae 0x451616
cvtsi2sd xmm0, dword [ebp - 0x1044]
movsd xmm1, qword [ebp - 0x9fc8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9fd0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9fd0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x451569
mov ecx, dword [ebp - 0x1044]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9fc8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9fc8], xmm1
jmp 0x451465
cvtsi2sd xmm0, dword [ebp - 0x1044]
movsd xmm1, qword [ebp - 0x9fc8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9fd8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9fd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4515c6
mov eax, dword [ebp - 0x1044]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9fc8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9fc8], xmm1
jmp 0x4515df
mov ecx, 1
test ecx, ecx
je 0x4515db
jmp 0x45169b
jmp 0x451602
cvtsi2sd xmm0, dword [ebp - 0x1044]
movsd xmm1, qword [ebp - 0x9fc8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1048], edx
jmp 0x4516a5
xor eax, eax
je 0x45160c
jmp 0x45161b
jmp 0x451465
jmp 0x451465
mov ecx, 2
test ecx, ecx
je 0x45169b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x104c], eax
cvtsi2sd xmm0, dword [ebp - 0x104c]
mov eax, dword [ebp - 0x104c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9fc8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1048], ecx
jmp 0x4516a5
mov dword [ebp - 0x1048], 8
mov edx, dword [ebp - 0x1004]
shl edx, 2
add edx, dword [ebp - 0x1000]
mov eax, dword [ebp - 0x1048]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1004]
shl ecx, 2
add ecx, dword [ebp - 0x1000]
mov dword [ecx], eax
jmp 0x4505fd
mov edx, dword [ebp - 0xffc]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0xffc]
mov dword [ebp - 0x1050], eax
mov ecx, dword [ebp - 0x1050]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1054], ecx
mov edx, dword [ebp - 0x1054]
mov dword [ebp - 0x1058], edx
xor eax, eax
mov byte [ebp - 0x2a], al
lea ecx, [ebp - 0x2a]
call fcn.00425a30
mov dword [ebp - 0x105c], eax
mov ecx, dword [ebp - 0x105c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x45281d
mov eax, dword [ebp - 0x105c]
mov dword [ebp - 0x1060], eax
mov dword [ebp - 0x1064], 0
jmp 0x451757
mov ecx, dword [ebp - 0x1064]
add ecx, 1
mov dword [ebp - 0x1064], ecx
cmp dword [ebp - 0x1064], 1
jae 0x45281d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x451a2f
xor eax, eax
je 0x4517a1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4517dd
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e70]
movsd qword [ebp - 0x9fe0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45197d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45197d
mov dword [ebp - 0x1068], 0
jmp 0x45185c
cmp dword [ebp - 0x1068], 0xf
jae 0x451978
cvtsi2sd xmm0, dword [ebp - 0x1068]
movsd xmm1, qword [ebp - 0x9fe0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9fe8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9fe8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4518cb
mov ecx, dword [ebp - 0x1068]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9fe0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9fe0], xmm1
jmp 0x4517c7
cvtsi2sd xmm0, dword [ebp - 0x1068]
movsd xmm1, qword [ebp - 0x9fe0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ff0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0x9ff0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x451928
mov eax, dword [ebp - 0x1068]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9fe0]
addsd xmm1, xmm0
movsd qword [ebp - 0x9fe0], xmm1
jmp 0x451941
mov ecx, 1
test ecx, ecx
je 0x45193d
jmp 0x4519fd
jmp 0x451964
cvtsi2sd xmm0, dword [ebp - 0x1068]
movsd xmm1, qword [ebp - 0x9fe0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x106c], edx
jmp 0x451a07
xor eax, eax
je 0x45196e
jmp 0x45197d
jmp 0x4517c7
jmp 0x4517c7
mov ecx, 2
test ecx, ecx
je 0x4519fd
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1070], eax
cvtsi2sd xmm0, dword [ebp - 0x1070]
mov eax, dword [ebp - 0x1070]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9fe0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x106c], ecx
jmp 0x451a07
mov dword [ebp - 0x106c], 8
mov edx, dword [ebp - 0x1064]
shl edx, 2
add edx, dword [ebp - 0x1060]
mov eax, dword [ebp - 0x106c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1064]
shl ecx, 2
add ecx, dword [ebp - 0x1060]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45254d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x451d3f
xor eax, eax
je 0x451ab1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x451aed
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e68]
movsd qword [ebp - 0x9ff8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x451c8d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x451c8d
mov dword [ebp - 0x1074], 0
jmp 0x451b6c
cmp dword [ebp - 0x1074], 0xf
jae 0x451c88
cvtsi2sd xmm0, dword [ebp - 0x1074]
movsd xmm1, qword [ebp - 0x9ff8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa000], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa000]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x451bdb
mov ecx, dword [ebp - 0x1074]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0x9ff8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ff8], xmm1
jmp 0x451ad7
cvtsi2sd xmm0, dword [ebp - 0x1074]
movsd xmm1, qword [ebp - 0x9ff8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa008], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa008]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x451c38
mov eax, dword [ebp - 0x1074]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0x9ff8]
addsd xmm1, xmm0
movsd qword [ebp - 0x9ff8], xmm1
jmp 0x451c51
mov ecx, 1
test ecx, ecx
je 0x451c4d
jmp 0x451d0d
jmp 0x451c74
cvtsi2sd xmm0, dword [ebp - 0x1074]
movsd xmm1, qword [ebp - 0x9ff8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1078], edx
jmp 0x451d17
xor eax, eax
je 0x451c7e
jmp 0x451c8d
jmp 0x451ad7
jmp 0x451ad7
mov ecx, 2
test ecx, ecx
je 0x451d0d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x107c], eax
cvtsi2sd xmm0, dword [ebp - 0x107c]
mov eax, dword [ebp - 0x107c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0x9ff8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1078], ecx
jmp 0x451d17
mov dword [ebp - 0x1078], 8
mov edx, dword [ebp - 0x1064]
shl edx, 2
add edx, dword [ebp - 0x1060]
mov eax, dword [ebp - 0x1078]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1064]
shl ecx, 2
add ecx, dword [ebp - 0x1060]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45200a
xor eax, eax
je 0x451d7c
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x451db8
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e60]
movsd qword [ebp - 0xa010], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x451f58
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x451f58
mov dword [ebp - 0x1080], 0
jmp 0x451e37
cmp dword [ebp - 0x1080], 0xf
jae 0x451f53
cvtsi2sd xmm0, dword [ebp - 0x1080]
movsd xmm1, qword [ebp - 0xa010]
addsd xmm1, xmm0
movsd qword [ebp - 0xa018], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa018]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x451ea6
mov ecx, dword [ebp - 0x1080]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa010]
addsd xmm1, xmm0
movsd qword [ebp - 0xa010], xmm1
jmp 0x451da2
cvtsi2sd xmm0, dword [ebp - 0x1080]
movsd xmm1, qword [ebp - 0xa010]
addsd xmm1, xmm0
movsd qword [ebp - 0xa020], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa020]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x451f03
mov eax, dword [ebp - 0x1080]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa010]
addsd xmm1, xmm0
movsd qword [ebp - 0xa010], xmm1
jmp 0x451f1c
mov ecx, 1
test ecx, ecx
je 0x451f18
jmp 0x451fd8
jmp 0x451f3f
cvtsi2sd xmm0, dword [ebp - 0x1080]
movsd xmm1, qword [ebp - 0xa010]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1084], edx
jmp 0x451fe2
xor eax, eax
je 0x451f49
jmp 0x451f58
jmp 0x451da2
jmp 0x451da2
mov ecx, 2
test ecx, ecx
je 0x451fd8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1088], eax
cvtsi2sd xmm0, dword [ebp - 0x1088]
mov eax, dword [ebp - 0x1088]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa010]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1084], ecx
jmp 0x451fe2
mov dword [ebp - 0x1084], 8
mov edx, dword [ebp - 0x1064]
shl edx, 2
add edx, dword [ebp - 0x1060]
mov eax, dword [ebp - 0x1084]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1064]
shl ecx, 2
add ecx, dword [ebp - 0x1060]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1064]
add edx, 0xffffffb0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa028], xmm0
xor eax, eax
je 0x452024
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x452060
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa028]
movsd qword [ebp - 0xa030], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x452200
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x452200
mov dword [ebp - 0x108c], 0
jmp 0x4520df
cmp dword [ebp - 0x108c], 0xf
jae 0x4521fb
cvtsi2sd xmm0, dword [ebp - 0x108c]
movsd xmm1, qword [ebp - 0xa030]
addsd xmm1, xmm0
movsd qword [ebp - 0xa038], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa038]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45214e
mov ecx, dword [ebp - 0x108c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa030]
addsd xmm1, xmm0
movsd qword [ebp - 0xa030], xmm1
jmp 0x45204a
cvtsi2sd xmm0, dword [ebp - 0x108c]
movsd xmm1, qword [ebp - 0xa030]
addsd xmm1, xmm0
movsd qword [ebp - 0xa040], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa040]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4521ab
mov eax, dword [ebp - 0x108c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa030]
addsd xmm1, xmm0
movsd qword [ebp - 0xa030], xmm1
jmp 0x4521c4
mov ecx, 1
test ecx, ecx
je 0x4521c0
jmp 0x452280
jmp 0x4521e7
cvtsi2sd xmm0, dword [ebp - 0x108c]
movsd xmm1, qword [ebp - 0xa030]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1090], edx
jmp 0x45228a
xor eax, eax
je 0x4521f1
jmp 0x452200
jmp 0x45204a
jmp 0x45204a
mov ecx, 2
test ecx, ecx
je 0x452280
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1094], eax
cvtsi2sd xmm0, dword [ebp - 0x1094]
mov eax, dword [ebp - 0x1094]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa030]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1090], ecx
jmp 0x45228a
mov dword [ebp - 0x1090], 8
mov edx, dword [ebp - 0x1064]
add edx, 0xffffffb0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa048], xmm0
xor eax, eax
je 0x4522a4
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4522e0
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa048]
movsd qword [ebp - 0xa050], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x452480
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x452480
mov dword [ebp - 0x1098], 0
jmp 0x45235f
cmp dword [ebp - 0x1098], 0xf
jae 0x45247b
cvtsi2sd xmm0, dword [ebp - 0x1098]
movsd xmm1, qword [ebp - 0xa050]
addsd xmm1, xmm0
movsd qword [ebp - 0xa058], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa058]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4523ce
mov ecx, dword [ebp - 0x1098]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa050]
addsd xmm1, xmm0
movsd qword [ebp - 0xa050], xmm1
jmp 0x4522ca
cvtsi2sd xmm0, dword [ebp - 0x1098]
movsd xmm1, qword [ebp - 0xa050]
addsd xmm1, xmm0
movsd qword [ebp - 0xa060], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa060]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45242b
mov eax, dword [ebp - 0x1098]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa050]
addsd xmm1, xmm0
movsd qword [ebp - 0xa050], xmm1
jmp 0x452444
mov ecx, 1
test ecx, ecx
je 0x452440
jmp 0x452500
jmp 0x452467
cvtsi2sd xmm0, dword [ebp - 0x1098]
movsd xmm1, qword [ebp - 0xa050]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x109c], edx
jmp 0x45250a
xor eax, eax
je 0x452471
jmp 0x452480
jmp 0x4522ca
jmp 0x4522ca
mov ecx, 2
test ecx, ecx
je 0x452500
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x10a0], eax
cvtsi2sd xmm0, dword [ebp - 0x10a0]
mov eax, dword [ebp - 0x10a0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa050]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x109c], ecx
jmp 0x45250a
mov dword [ebp - 0x109c], 8
mov edx, dword [ebp - 0x1064]
shl edx, 2
add edx, dword [ebp - 0x1060]
mov eax, dword [ebp - 0x1090]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1064]
shl ecx, 2
add ecx, dword [ebp - 0x1060]
mov edx, dword [ebp - 0x109c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1064]
shl ecx, 2
add ecx, dword [ebp - 0x1060]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x452818
xor eax, eax
je 0x45258a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4525c6
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e58]
movsd qword [ebp - 0xa068], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x452766
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x452766
mov dword [ebp - 0x10a4], 0
jmp 0x452645
cmp dword [ebp - 0x10a4], 0xf
jae 0x452761
cvtsi2sd xmm0, dword [ebp - 0x10a4]
movsd xmm1, qword [ebp - 0xa068]
addsd xmm1, xmm0
movsd qword [ebp - 0xa070], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa070]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4526b4
mov ecx, dword [ebp - 0x10a4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa068]
addsd xmm1, xmm0
movsd qword [ebp - 0xa068], xmm1
jmp 0x4525b0
cvtsi2sd xmm0, dword [ebp - 0x10a4]
movsd xmm1, qword [ebp - 0xa068]
addsd xmm1, xmm0
movsd qword [ebp - 0xa078], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa078]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x452711
mov eax, dword [ebp - 0x10a4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa068]
addsd xmm1, xmm0
movsd qword [ebp - 0xa068], xmm1
jmp 0x45272a
mov ecx, 1
test ecx, ecx
je 0x452726
jmp 0x4527e6
jmp 0x45274d
cvtsi2sd xmm0, dword [ebp - 0x10a4]
movsd xmm1, qword [ebp - 0xa068]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x10a8], edx
jmp 0x4527f0
xor eax, eax
je 0x452757
jmp 0x452766
jmp 0x4525b0
jmp 0x4525b0
mov ecx, 2
test ecx, ecx
je 0x4527e6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x10ac], eax
cvtsi2sd xmm0, dword [ebp - 0x10ac]
mov eax, dword [ebp - 0x10ac]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa068]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x10a8], ecx
jmp 0x4527f0
mov dword [ebp - 0x10a8], 8
mov edx, dword [ebp - 0x1064]
shl edx, 2
add edx, dword [ebp - 0x1060]
mov eax, dword [ebp - 0x10a8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1064]
shl ecx, 2
add ecx, dword [ebp - 0x1060]
mov dword [ecx], eax
jmp 0x451748
mov edx, dword [ebp - 0x105c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x105c]
mov dword [ebp - 0x10b0], eax
mov ecx, dword [ebp - 0x10b0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x10b4], ecx
mov edx, dword [ebp - 0x10b4]
mov dword [ebp - 0x10b8], edx
xor eax, eax
mov byte [ebp - 0x2b], al
lea ecx, [ebp - 0x2b]
call fcn.00425a00
mov dword [ebp - 0x10bc], eax
mov ecx, dword [ebp - 0x10bc]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x453968
mov eax, dword [ebp - 0x10bc]
mov dword [ebp - 0x10c0], eax
mov dword [ebp - 0x10c4], 0
jmp 0x4528a2
mov ecx, dword [ebp - 0x10c4]
add ecx, 1
mov dword [ebp - 0x10c4], ecx
cmp dword [ebp - 0x10c4], 1
jae 0x453968
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x452b7a
xor eax, eax
je 0x4528ec
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x452928
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e70]
movsd qword [ebp - 0xa080], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x452ac8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x452ac8
mov dword [ebp - 0x10c8], 0
jmp 0x4529a7
cmp dword [ebp - 0x10c8], 0xf
jae 0x452ac3
cvtsi2sd xmm0, dword [ebp - 0x10c8]
movsd xmm1, qword [ebp - 0xa080]
addsd xmm1, xmm0
movsd qword [ebp - 0xa088], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa088]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x452a16
mov ecx, dword [ebp - 0x10c8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa080]
addsd xmm1, xmm0
movsd qword [ebp - 0xa080], xmm1
jmp 0x452912
cvtsi2sd xmm0, dword [ebp - 0x10c8]
movsd xmm1, qword [ebp - 0xa080]
addsd xmm1, xmm0
movsd qword [ebp - 0xa090], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa090]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x452a73
mov eax, dword [ebp - 0x10c8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa080]
addsd xmm1, xmm0
movsd qword [ebp - 0xa080], xmm1
jmp 0x452a8c
mov ecx, 1
test ecx, ecx
je 0x452a88
jmp 0x452b48
jmp 0x452aaf
cvtsi2sd xmm0, dword [ebp - 0x10c8]
movsd xmm1, qword [ebp - 0xa080]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x10cc], edx
jmp 0x452b52
xor eax, eax
je 0x452ab9
jmp 0x452ac8
jmp 0x452912
jmp 0x452912
mov ecx, 2
test ecx, ecx
je 0x452b48
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x10d0], eax
cvtsi2sd xmm0, dword [ebp - 0x10d0]
mov eax, dword [ebp - 0x10d0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa080]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x10cc], ecx
jmp 0x452b52
mov dword [ebp - 0x10cc], 8
mov edx, dword [ebp - 0x10c4]
shl edx, 2
add edx, dword [ebp - 0x10c0]
mov eax, dword [ebp - 0x10cc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x10c4]
shl ecx, 2
add ecx, dword [ebp - 0x10c0]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x453698
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x452e8a
xor eax, eax
je 0x452bfc
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x452c38
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e68]
movsd qword [ebp - 0xa098], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x452dd8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x452dd8
mov dword [ebp - 0x10d4], 0
jmp 0x452cb7
cmp dword [ebp - 0x10d4], 0xf
jae 0x452dd3
cvtsi2sd xmm0, dword [ebp - 0x10d4]
movsd xmm1, qword [ebp - 0xa098]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0a0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa0a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x452d26
mov ecx, dword [ebp - 0x10d4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa098]
addsd xmm1, xmm0
movsd qword [ebp - 0xa098], xmm1
jmp 0x452c22
cvtsi2sd xmm0, dword [ebp - 0x10d4]
movsd xmm1, qword [ebp - 0xa098]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0a8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa0a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x452d83
mov eax, dword [ebp - 0x10d4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa098]
addsd xmm1, xmm0
movsd qword [ebp - 0xa098], xmm1
jmp 0x452d9c
mov ecx, 1
test ecx, ecx
je 0x452d98
jmp 0x452e58
jmp 0x452dbf
cvtsi2sd xmm0, dword [ebp - 0x10d4]
movsd xmm1, qword [ebp - 0xa098]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x10d8], edx
jmp 0x452e62
xor eax, eax
je 0x452dc9
jmp 0x452dd8
jmp 0x452c22
jmp 0x452c22
mov ecx, 2
test ecx, ecx
je 0x452e58
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x10dc], eax
cvtsi2sd xmm0, dword [ebp - 0x10dc]
mov eax, dword [ebp - 0x10dc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa098]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x10d8], ecx
jmp 0x452e62
mov dword [ebp - 0x10d8], 8
mov edx, dword [ebp - 0x10c4]
shl edx, 2
add edx, dword [ebp - 0x10c0]
mov eax, dword [ebp - 0x10d8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x10c4]
shl ecx, 2
add ecx, dword [ebp - 0x10c0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x453155
xor eax, eax
je 0x452ec7
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x452f03
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e60]
movsd qword [ebp - 0xa0b0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4530a3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4530a3
mov dword [ebp - 0x10e0], 0
jmp 0x452f82
cmp dword [ebp - 0x10e0], 0xf
jae 0x45309e
cvtsi2sd xmm0, dword [ebp - 0x10e0]
movsd xmm1, qword [ebp - 0xa0b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa0b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x452ff1
mov ecx, dword [ebp - 0x10e0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa0b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0b0], xmm1
jmp 0x452eed
cvtsi2sd xmm0, dword [ebp - 0x10e0]
movsd xmm1, qword [ebp - 0xa0b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa0c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45304e
mov eax, dword [ebp - 0x10e0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa0b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0b0], xmm1
jmp 0x453067
mov ecx, 1
test ecx, ecx
je 0x453063
jmp 0x453123
jmp 0x45308a
cvtsi2sd xmm0, dword [ebp - 0x10e0]
movsd xmm1, qword [ebp - 0xa0b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x10e4], edx
jmp 0x45312d
xor eax, eax
je 0x453094
jmp 0x4530a3
jmp 0x452eed
jmp 0x452eed
mov ecx, 2
test ecx, ecx
je 0x453123
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x10e8], eax
cvtsi2sd xmm0, dword [ebp - 0x10e8]
mov eax, dword [ebp - 0x10e8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa0b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x10e4], ecx
jmp 0x45312d
mov dword [ebp - 0x10e4], 8
mov edx, dword [ebp - 0x10c4]
shl edx, 2
add edx, dword [ebp - 0x10c0]
mov eax, dword [ebp - 0x10e4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x10c4]
shl ecx, 2
add ecx, dword [ebp - 0x10c0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x10c4]
add edx, 0xffffffb0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa0c8], xmm0
xor eax, eax
je 0x45316f
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4531ab
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa0c8]
movsd qword [ebp - 0xa0d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45334b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45334b
mov dword [ebp - 0x10ec], 0
jmp 0x45322a
cmp dword [ebp - 0x10ec], 0xf
jae 0x453346
cvtsi2sd xmm0, dword [ebp - 0x10ec]
movsd xmm1, qword [ebp - 0xa0d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa0d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x453299
mov ecx, dword [ebp - 0x10ec]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa0d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0d0], xmm1
jmp 0x453195
cvtsi2sd xmm0, dword [ebp - 0x10ec]
movsd xmm1, qword [ebp - 0xa0d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa0e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4532f6
mov eax, dword [ebp - 0x10ec]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa0d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0d0], xmm1
jmp 0x45330f
mov ecx, 1
test ecx, ecx
je 0x45330b
jmp 0x4533cb
jmp 0x453332
cvtsi2sd xmm0, dword [ebp - 0x10ec]
movsd xmm1, qword [ebp - 0xa0d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x10f0], edx
jmp 0x4533d5
xor eax, eax
je 0x45333c
jmp 0x45334b
jmp 0x453195
jmp 0x453195
mov ecx, 2
test ecx, ecx
je 0x4533cb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x10f4], eax
cvtsi2sd xmm0, dword [ebp - 0x10f4]
mov eax, dword [ebp - 0x10f4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa0d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x10f0], ecx
jmp 0x4533d5
mov dword [ebp - 0x10f0], 8
mov edx, dword [ebp - 0x10c4]
add edx, 0xffffffb0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa0e8], xmm0
xor eax, eax
je 0x4533ef
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45342b
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa0e8]
movsd qword [ebp - 0xa0f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4535cb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4535cb
mov dword [ebp - 0x10f8], 0
jmp 0x4534aa
cmp dword [ebp - 0x10f8], 0xf
jae 0x4535c6
cvtsi2sd xmm0, dword [ebp - 0x10f8]
movsd xmm1, qword [ebp - 0xa0f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa0f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x453519
mov ecx, dword [ebp - 0x10f8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa0f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0f0], xmm1
jmp 0x453415
cvtsi2sd xmm0, dword [ebp - 0x10f8]
movsd xmm1, qword [ebp - 0xa0f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa100], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa100]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x453576
mov eax, dword [ebp - 0x10f8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa0f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa0f0], xmm1
jmp 0x45358f
mov ecx, 1
test ecx, ecx
je 0x45358b
jmp 0x45364b
jmp 0x4535b2
cvtsi2sd xmm0, dword [ebp - 0x10f8]
movsd xmm1, qword [ebp - 0xa0f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x10fc], edx
jmp 0x453655
xor eax, eax
je 0x4535bc
jmp 0x4535cb
jmp 0x453415
jmp 0x453415
mov ecx, 2
test ecx, ecx
je 0x45364b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1100], eax
cvtsi2sd xmm0, dword [ebp - 0x1100]
mov eax, dword [ebp - 0x1100]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa0f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x10fc], ecx
jmp 0x453655
mov dword [ebp - 0x10fc], 8
mov edx, dword [ebp - 0x10c4]
shl edx, 2
add edx, dword [ebp - 0x10c0]
mov eax, dword [ebp - 0x10f0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x10c4]
shl ecx, 2
add ecx, dword [ebp - 0x10c0]
mov edx, dword [ebp - 0x10fc]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x10c4]
shl ecx, 2
add ecx, dword [ebp - 0x10c0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x453963
xor eax, eax
je 0x4536d5
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x453711
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e58]
movsd qword [ebp - 0xa108], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4538b1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4538b1
mov dword [ebp - 0x1104], 0
jmp 0x453790
cmp dword [ebp - 0x1104], 0xf
jae 0x4538ac
cvtsi2sd xmm0, dword [ebp - 0x1104]
movsd xmm1, qword [ebp - 0xa108]
addsd xmm1, xmm0
movsd qword [ebp - 0xa110], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa110]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4537ff
mov ecx, dword [ebp - 0x1104]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa108]
addsd xmm1, xmm0
movsd qword [ebp - 0xa108], xmm1
jmp 0x4536fb
cvtsi2sd xmm0, dword [ebp - 0x1104]
movsd xmm1, qword [ebp - 0xa108]
addsd xmm1, xmm0
movsd qword [ebp - 0xa118], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa118]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45385c
mov eax, dword [ebp - 0x1104]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa108]
addsd xmm1, xmm0
movsd qword [ebp - 0xa108], xmm1
jmp 0x453875
mov ecx, 1
test ecx, ecx
je 0x453871
jmp 0x453931
jmp 0x453898
cvtsi2sd xmm0, dword [ebp - 0x1104]
movsd xmm1, qword [ebp - 0xa108]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1108], edx
jmp 0x45393b
xor eax, eax
je 0x4538a2
jmp 0x4538b1
jmp 0x4536fb
jmp 0x4536fb
mov ecx, 2
test ecx, ecx
je 0x453931
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x110c], eax
cvtsi2sd xmm0, dword [ebp - 0x110c]
mov eax, dword [ebp - 0x110c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa108]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1108], ecx
jmp 0x45393b
mov dword [ebp - 0x1108], 8
mov edx, dword [ebp - 0x10c4]
shl edx, 2
add edx, dword [ebp - 0x10c0]
mov eax, dword [ebp - 0x1108]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x10c4]
shl ecx, 2
add ecx, dword [ebp - 0x10c0]
mov dword [ecx], eax
jmp 0x452893
mov edx, dword [ebp - 0x10bc]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x10bc]
mov dword [ebp - 0x1110], eax
mov ecx, dword [ebp - 0x1110]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1114], ecx
mov edx, dword [ebp - 0x1114]
mov dword [ebp - 0x1118], edx
mov eax, dword [ebp - 0x10b8]
mov dword [ebp - 0x1058], eax
cmp dword [ebp - 0x1058], 0
je 0x454b05
xor ecx, ecx
mov byte [ebp - 0x2c], cl
lea ecx, [ebp - 0x2c]
call fcn.004259d0
mov dword [ebp - 0x111c], eax
mov edx, dword [ebp - 0x111c]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x454acc
mov ecx, dword [ebp - 0x111c]
mov dword [ebp - 0x1120], ecx
mov dword [ebp - 0x1124], 0
jmp 0x453a06
mov edx, dword [ebp - 0x1124]
add edx, 1
mov dword [ebp - 0x1124], edx
cmp dword [ebp - 0x1124], 1
jae 0x454acc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x453cde
xor eax, eax
je 0x453a50
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x453a8c
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e70]
movsd qword [ebp - 0xa120], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x453c2c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x453c2c
mov dword [ebp - 0x1128], 0
jmp 0x453b0b
cmp dword [ebp - 0x1128], 0xf
jae 0x453c27
cvtsi2sd xmm0, dword [ebp - 0x1128]
movsd xmm1, qword [ebp - 0xa120]
addsd xmm1, xmm0
movsd qword [ebp - 0xa128], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa128]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x453b7a
mov ecx, dword [ebp - 0x1128]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa120]
addsd xmm1, xmm0
movsd qword [ebp - 0xa120], xmm1
jmp 0x453a76
cvtsi2sd xmm0, dword [ebp - 0x1128]
movsd xmm1, qword [ebp - 0xa120]
addsd xmm1, xmm0
movsd qword [ebp - 0xa130], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa130]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x453bd7
mov eax, dword [ebp - 0x1128]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa120]
addsd xmm1, xmm0
movsd qword [ebp - 0xa120], xmm1
jmp 0x453bf0
mov ecx, 1
test ecx, ecx
je 0x453bec
jmp 0x453cac
jmp 0x453c13
cvtsi2sd xmm0, dword [ebp - 0x1128]
movsd xmm1, qword [ebp - 0xa120]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x112c], edx
jmp 0x453cb6
xor eax, eax
je 0x453c1d
jmp 0x453c2c
jmp 0x453a76
jmp 0x453a76
mov ecx, 2
test ecx, ecx
je 0x453cac
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1130], eax
cvtsi2sd xmm0, dword [ebp - 0x1130]
mov eax, dword [ebp - 0x1130]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa120]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x112c], ecx
jmp 0x453cb6
mov dword [ebp - 0x112c], 8
mov edx, dword [ebp - 0x1124]
shl edx, 2
add edx, dword [ebp - 0x1120]
mov eax, dword [ebp - 0x112c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1124]
shl ecx, 2
add ecx, dword [ebp - 0x1120]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4547fc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x453fee
xor eax, eax
je 0x453d60
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x453d9c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e68]
movsd qword [ebp - 0xa138], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x453f3c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x453f3c
mov dword [ebp - 0x1134], 0
jmp 0x453e1b
cmp dword [ebp - 0x1134], 0xf
jae 0x453f37
cvtsi2sd xmm0, dword [ebp - 0x1134]
movsd xmm1, qword [ebp - 0xa138]
addsd xmm1, xmm0
movsd qword [ebp - 0xa140], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa140]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x453e8a
mov ecx, dword [ebp - 0x1134]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa138]
addsd xmm1, xmm0
movsd qword [ebp - 0xa138], xmm1
jmp 0x453d86
cvtsi2sd xmm0, dword [ebp - 0x1134]
movsd xmm1, qword [ebp - 0xa138]
addsd xmm1, xmm0
movsd qword [ebp - 0xa148], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa148]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x453ee7
mov eax, dword [ebp - 0x1134]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa138]
addsd xmm1, xmm0
movsd qword [ebp - 0xa138], xmm1
jmp 0x453f00
mov ecx, 1
test ecx, ecx
je 0x453efc
jmp 0x453fbc
jmp 0x453f23
cvtsi2sd xmm0, dword [ebp - 0x1134]
movsd xmm1, qword [ebp - 0xa138]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1138], edx
jmp 0x453fc6
xor eax, eax
je 0x453f2d
jmp 0x453f3c
jmp 0x453d86
jmp 0x453d86
mov ecx, 2
test ecx, ecx
je 0x453fbc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x113c], eax
cvtsi2sd xmm0, dword [ebp - 0x113c]
mov eax, dword [ebp - 0x113c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa138]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1138], ecx
jmp 0x453fc6
mov dword [ebp - 0x1138], 8
mov edx, dword [ebp - 0x1124]
shl edx, 2
add edx, dword [ebp - 0x1120]
mov eax, dword [ebp - 0x1138]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1124]
shl ecx, 2
add ecx, dword [ebp - 0x1120]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4542b9
xor eax, eax
je 0x45402b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x454067
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e60]
movsd qword [ebp - 0xa150], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x454207
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x454207
mov dword [ebp - 0x1140], 0
jmp 0x4540e6
cmp dword [ebp - 0x1140], 0xf
jae 0x454202
cvtsi2sd xmm0, dword [ebp - 0x1140]
movsd xmm1, qword [ebp - 0xa150]
addsd xmm1, xmm0
movsd qword [ebp - 0xa158], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa158]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x454155
mov ecx, dword [ebp - 0x1140]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa150]
addsd xmm1, xmm0
movsd qword [ebp - 0xa150], xmm1
jmp 0x454051
cvtsi2sd xmm0, dword [ebp - 0x1140]
movsd xmm1, qword [ebp - 0xa150]
addsd xmm1, xmm0
movsd qword [ebp - 0xa160], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa160]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4541b2
mov eax, dword [ebp - 0x1140]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa150]
addsd xmm1, xmm0
movsd qword [ebp - 0xa150], xmm1
jmp 0x4541cb
mov ecx, 1
test ecx, ecx
je 0x4541c7
jmp 0x454287
jmp 0x4541ee
cvtsi2sd xmm0, dword [ebp - 0x1140]
movsd xmm1, qword [ebp - 0xa150]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1144], edx
jmp 0x454291
xor eax, eax
je 0x4541f8
jmp 0x454207
jmp 0x454051
jmp 0x454051
mov ecx, 2
test ecx, ecx
je 0x454287
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1148], eax
cvtsi2sd xmm0, dword [ebp - 0x1148]
mov eax, dword [ebp - 0x1148]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa150]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1144], ecx
jmp 0x454291
mov dword [ebp - 0x1144], 8
mov edx, dword [ebp - 0x1124]
shl edx, 2
add edx, dword [ebp - 0x1120]
mov eax, dword [ebp - 0x1144]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1124]
shl ecx, 2
add ecx, dword [ebp - 0x1120]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1124]
add edx, 0xffffffb0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa168], xmm0
xor eax, eax
je 0x4542d3
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45430f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa168]
movsd qword [ebp - 0xa170], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4544af
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4544af
mov dword [ebp - 0x114c], 0
jmp 0x45438e
cmp dword [ebp - 0x114c], 0xf
jae 0x4544aa
cvtsi2sd xmm0, dword [ebp - 0x114c]
movsd xmm1, qword [ebp - 0xa170]
addsd xmm1, xmm0
movsd qword [ebp - 0xa178], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa178]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4543fd
mov ecx, dword [ebp - 0x114c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa170]
addsd xmm1, xmm0
movsd qword [ebp - 0xa170], xmm1
jmp 0x4542f9
cvtsi2sd xmm0, dword [ebp - 0x114c]
movsd xmm1, qword [ebp - 0xa170]
addsd xmm1, xmm0
movsd qword [ebp - 0xa180], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa180]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45445a
mov eax, dword [ebp - 0x114c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa170]
addsd xmm1, xmm0
movsd qword [ebp - 0xa170], xmm1
jmp 0x454473
mov ecx, 1
test ecx, ecx
je 0x45446f
jmp 0x45452f
jmp 0x454496
cvtsi2sd xmm0, dword [ebp - 0x114c]
movsd xmm1, qword [ebp - 0xa170]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1150], edx
jmp 0x454539
xor eax, eax
je 0x4544a0
jmp 0x4544af
jmp 0x4542f9
jmp 0x4542f9
mov ecx, 2
test ecx, ecx
je 0x45452f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1154], eax
cvtsi2sd xmm0, dword [ebp - 0x1154]
mov eax, dword [ebp - 0x1154]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa170]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1150], ecx
jmp 0x454539
mov dword [ebp - 0x1150], 8
mov edx, dword [ebp - 0x1124]
add edx, 0xffffffb0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa188], xmm0
xor eax, eax
je 0x454553
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45458f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa188]
movsd qword [ebp - 0xa190], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45472f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45472f
mov dword [ebp - 0x1158], 0
jmp 0x45460e
cmp dword [ebp - 0x1158], 0xf
jae 0x45472a
cvtsi2sd xmm0, dword [ebp - 0x1158]
movsd xmm1, qword [ebp - 0xa190]
addsd xmm1, xmm0
movsd qword [ebp - 0xa198], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa198]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45467d
mov ecx, dword [ebp - 0x1158]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa190]
addsd xmm1, xmm0
movsd qword [ebp - 0xa190], xmm1
jmp 0x454579
cvtsi2sd xmm0, dword [ebp - 0x1158]
movsd xmm1, qword [ebp - 0xa190]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa1a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4546da
mov eax, dword [ebp - 0x1158]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa190]
addsd xmm1, xmm0
movsd qword [ebp - 0xa190], xmm1
jmp 0x4546f3
mov ecx, 1
test ecx, ecx
je 0x4546ef
jmp 0x4547af
jmp 0x454716
cvtsi2sd xmm0, dword [ebp - 0x1158]
movsd xmm1, qword [ebp - 0xa190]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x115c], edx
jmp 0x4547b9
xor eax, eax
je 0x454720
jmp 0x45472f
jmp 0x454579
jmp 0x454579
mov ecx, 2
test ecx, ecx
je 0x4547af
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1160], eax
cvtsi2sd xmm0, dword [ebp - 0x1160]
mov eax, dword [ebp - 0x1160]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa190]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x115c], ecx
jmp 0x4547b9
mov dword [ebp - 0x115c], 8
mov edx, dword [ebp - 0x1124]
shl edx, 2
add edx, dword [ebp - 0x1120]
mov eax, dword [ebp - 0x1150]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1124]
shl ecx, 2
add ecx, dword [ebp - 0x1120]
mov edx, dword [ebp - 0x115c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1124]
shl ecx, 2
add ecx, dword [ebp - 0x1120]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x454ac7
xor eax, eax
je 0x454839
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x454875
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e58]
movsd qword [ebp - 0xa1a8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x454a15
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x454a15
mov dword [ebp - 0x1164], 0
jmp 0x4548f4
cmp dword [ebp - 0x1164], 0xf
jae 0x454a10
cvtsi2sd xmm0, dword [ebp - 0x1164]
movsd xmm1, qword [ebp - 0xa1a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1b0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa1b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x454963
mov ecx, dword [ebp - 0x1164]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa1a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1a8], xmm1
jmp 0x45485f
cvtsi2sd xmm0, dword [ebp - 0x1164]
movsd xmm1, qword [ebp - 0xa1a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1b8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa1b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4549c0
mov eax, dword [ebp - 0x1164]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa1a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1a8], xmm1
jmp 0x4549d9
mov ecx, 1
test ecx, ecx
je 0x4549d5
jmp 0x454a95
jmp 0x4549fc
cvtsi2sd xmm0, dword [ebp - 0x1164]
movsd xmm1, qword [ebp - 0xa1a8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1168], edx
jmp 0x454a9f
xor eax, eax
je 0x454a06
jmp 0x454a15
jmp 0x45485f
jmp 0x45485f
mov ecx, 2
test ecx, ecx
je 0x454a95
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x116c], eax
cvtsi2sd xmm0, dword [ebp - 0x116c]
mov eax, dword [ebp - 0x116c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa1a8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1168], ecx
jmp 0x454a9f
mov dword [ebp - 0x1168], 8
mov edx, dword [ebp - 0x1124]
shl edx, 2
add edx, dword [ebp - 0x1120]
mov eax, dword [ebp - 0x1168]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1124]
shl ecx, 2
add ecx, dword [ebp - 0x1120]
mov dword [ecx], eax
jmp 0x4539f7
mov edx, dword [ebp - 0x111c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x111c]
mov dword [ebp - 0x1170], eax
mov ecx, dword [ebp - 0x1170]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1174], ecx
mov edx, dword [ebp - 0x1174]
mov dword [ebp - 0x1118], edx
mov eax, dword [ebp + 8]
mov dword [ebp - 0x1178], eax
xor ecx, ecx
mov byte [ebp - 0x2d], cl
lea ecx, [ebp - 0x2d]
call fcn.004259a0
mov dword [ebp - 0x117c], eax
mov edx, dword [ebp - 0x117c]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x455c20
mov ecx, dword [ebp - 0x117c]
mov dword [ebp - 0x1180], ecx
mov dword [ebp - 0x1184], 0
jmp 0x454b5a
mov edx, dword [ebp - 0x1184]
add edx, 1
mov dword [ebp - 0x1184], edx
cmp dword [ebp - 0x1184], 1
jae 0x455c20
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x454e32
xor eax, eax
je 0x454ba4
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x454be0
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e68]
movsd qword [ebp - 0xa1c0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x454d80
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x454d80
mov dword [ebp - 0x1188], 0
jmp 0x454c5f
cmp dword [ebp - 0x1188], 0xf
jae 0x454d7b
cvtsi2sd xmm0, dword [ebp - 0x1188]
movsd xmm1, qword [ebp - 0xa1c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1c8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa1c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x454cce
mov ecx, dword [ebp - 0x1188]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa1c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1c0], xmm1
jmp 0x454bca
cvtsi2sd xmm0, dword [ebp - 0x1188]
movsd xmm1, qword [ebp - 0xa1c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1d0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa1d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x454d2b
mov eax, dword [ebp - 0x1188]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa1c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1c0], xmm1
jmp 0x454d44
mov ecx, 1
test ecx, ecx
je 0x454d40
jmp 0x454e00
jmp 0x454d67
cvtsi2sd xmm0, dword [ebp - 0x1188]
movsd xmm1, qword [ebp - 0xa1c0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x118c], edx
jmp 0x454e0a
xor eax, eax
je 0x454d71
jmp 0x454d80
jmp 0x454bca
jmp 0x454bca
mov ecx, 2
test ecx, ecx
je 0x454e00
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1190], eax
cvtsi2sd xmm0, dword [ebp - 0x1190]
mov eax, dword [ebp - 0x1190]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa1c0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x118c], ecx
jmp 0x454e0a
mov dword [ebp - 0x118c], 8
mov edx, dword [ebp - 0x1184]
shl edx, 2
add edx, dword [ebp - 0x1180]
mov eax, dword [ebp - 0x118c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1184]
shl ecx, 2
add ecx, dword [ebp - 0x1180]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x455950
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x455142
xor eax, eax
je 0x454eb4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x454ef0
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e60]
movsd qword [ebp - 0xa1d8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x455090
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x455090
mov dword [ebp - 0x1194], 0
jmp 0x454f6f
cmp dword [ebp - 0x1194], 0xf
jae 0x45508b
cvtsi2sd xmm0, dword [ebp - 0x1194]
movsd xmm1, qword [ebp - 0xa1d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1e0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa1e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x454fde
mov ecx, dword [ebp - 0x1194]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa1d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1d8], xmm1
jmp 0x454eda
cvtsi2sd xmm0, dword [ebp - 0x1194]
movsd xmm1, qword [ebp - 0xa1d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1e8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa1e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45503b
mov eax, dword [ebp - 0x1194]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa1d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1d8], xmm1
jmp 0x455054
mov ecx, 1
test ecx, ecx
je 0x455050
jmp 0x455110
jmp 0x455077
cvtsi2sd xmm0, dword [ebp - 0x1194]
movsd xmm1, qword [ebp - 0xa1d8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1198], edx
jmp 0x45511a
xor eax, eax
je 0x455081
jmp 0x455090
jmp 0x454eda
jmp 0x454eda
mov ecx, 2
test ecx, ecx
je 0x455110
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x119c], eax
cvtsi2sd xmm0, dword [ebp - 0x119c]
mov eax, dword [ebp - 0x119c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa1d8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1198], ecx
jmp 0x45511a
mov dword [ebp - 0x1198], 8
mov edx, dword [ebp - 0x1184]
shl edx, 2
add edx, dword [ebp - 0x1180]
mov eax, dword [ebp - 0x1198]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1184]
shl ecx, 2
add ecx, dword [ebp - 0x1180]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45540d
xor eax, eax
je 0x45517f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4551bb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e58]
movsd qword [ebp - 0xa1f0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45535b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45535b
mov dword [ebp - 0x11a0], 0
jmp 0x45523a
cmp dword [ebp - 0x11a0], 0xf
jae 0x455356
cvtsi2sd xmm0, dword [ebp - 0x11a0]
movsd xmm1, qword [ebp - 0xa1f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa1f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4552a9
mov ecx, dword [ebp - 0x11a0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa1f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1f0], xmm1
jmp 0x4551a5
cvtsi2sd xmm0, dword [ebp - 0x11a0]
movsd xmm1, qword [ebp - 0xa1f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa200], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa200]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x455306
mov eax, dword [ebp - 0x11a0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa1f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa1f0], xmm1
jmp 0x45531f
mov ecx, 1
test ecx, ecx
je 0x45531b
jmp 0x4553db
jmp 0x455342
cvtsi2sd xmm0, dword [ebp - 0x11a0]
movsd xmm1, qword [ebp - 0xa1f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x11a4], edx
jmp 0x4553e5
xor eax, eax
je 0x45534c
jmp 0x45535b
jmp 0x4551a5
jmp 0x4551a5
mov ecx, 2
test ecx, ecx
je 0x4553db
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x11a8], eax
cvtsi2sd xmm0, dword [ebp - 0x11a8]
mov eax, dword [ebp - 0x11a8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa1f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x11a4], ecx
jmp 0x4553e5
mov dword [ebp - 0x11a4], 8
mov edx, dword [ebp - 0x1184]
shl edx, 2
add edx, dword [ebp - 0x1180]
mov eax, dword [ebp - 0x11a4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1184]
shl ecx, 2
add ecx, dword [ebp - 0x1180]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1184]
add edx, 0xffffffb1
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa208], xmm0
xor eax, eax
je 0x455427
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x455463
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa208]
movsd qword [ebp - 0xa210], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x455603
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x455603
mov dword [ebp - 0x11ac], 0
jmp 0x4554e2
cmp dword [ebp - 0x11ac], 0xf
jae 0x4555fe
cvtsi2sd xmm0, dword [ebp - 0x11ac]
movsd xmm1, qword [ebp - 0xa210]
addsd xmm1, xmm0
movsd qword [ebp - 0xa218], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa218]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x455551
mov ecx, dword [ebp - 0x11ac]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa210]
addsd xmm1, xmm0
movsd qword [ebp - 0xa210], xmm1
jmp 0x45544d
cvtsi2sd xmm0, dword [ebp - 0x11ac]
movsd xmm1, qword [ebp - 0xa210]
addsd xmm1, xmm0
movsd qword [ebp - 0xa220], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa220]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4555ae
mov eax, dword [ebp - 0x11ac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa210]
addsd xmm1, xmm0
movsd qword [ebp - 0xa210], xmm1
jmp 0x4555c7
mov ecx, 1
test ecx, ecx
je 0x4555c3
jmp 0x455683
jmp 0x4555ea
cvtsi2sd xmm0, dword [ebp - 0x11ac]
movsd xmm1, qword [ebp - 0xa210]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x11b0], edx
jmp 0x45568d
xor eax, eax
je 0x4555f4
jmp 0x455603
jmp 0x45544d
jmp 0x45544d
mov ecx, 2
test ecx, ecx
je 0x455683
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x11b4], eax
cvtsi2sd xmm0, dword [ebp - 0x11b4]
mov eax, dword [ebp - 0x11b4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa210]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x11b0], ecx
jmp 0x45568d
mov dword [ebp - 0x11b0], 8
mov edx, dword [ebp - 0x1184]
add edx, 0xffffffb1
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa228], xmm0
xor eax, eax
je 0x4556a7
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4556e3
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa228]
movsd qword [ebp - 0xa230], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x455883
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x455883
mov dword [ebp - 0x11b8], 0
jmp 0x455762
cmp dword [ebp - 0x11b8], 0xf
jae 0x45587e
cvtsi2sd xmm0, dword [ebp - 0x11b8]
movsd xmm1, qword [ebp - 0xa230]
addsd xmm1, xmm0
movsd qword [ebp - 0xa238], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa238]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4557d1
mov ecx, dword [ebp - 0x11b8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa230]
addsd xmm1, xmm0
movsd qword [ebp - 0xa230], xmm1
jmp 0x4556cd
cvtsi2sd xmm0, dword [ebp - 0x11b8]
movsd xmm1, qword [ebp - 0xa230]
addsd xmm1, xmm0
movsd qword [ebp - 0xa240], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa240]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45582e
mov eax, dword [ebp - 0x11b8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa230]
addsd xmm1, xmm0
movsd qword [ebp - 0xa230], xmm1
jmp 0x455847
mov ecx, 1
test ecx, ecx
je 0x455843
jmp 0x455903
jmp 0x45586a
cvtsi2sd xmm0, dword [ebp - 0x11b8]
movsd xmm1, qword [ebp - 0xa230]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x11bc], edx
jmp 0x45590d
xor eax, eax
je 0x455874
jmp 0x455883
jmp 0x4556cd
jmp 0x4556cd
mov ecx, 2
test ecx, ecx
je 0x455903
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x11c0], eax
cvtsi2sd xmm0, dword [ebp - 0x11c0]
mov eax, dword [ebp - 0x11c0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa230]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x11bc], ecx
jmp 0x45590d
mov dword [ebp - 0x11bc], 8
mov edx, dword [ebp - 0x1184]
shl edx, 2
add edx, dword [ebp - 0x1180]
mov eax, dword [ebp - 0x11b0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1184]
shl ecx, 2
add ecx, dword [ebp - 0x1180]
mov edx, dword [ebp - 0x11bc]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1184]
shl ecx, 2
add ecx, dword [ebp - 0x1180]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x455c1b
xor eax, eax
je 0x45598d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4559c9
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e50]
movsd qword [ebp - 0xa248], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x455b69
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x455b69
mov dword [ebp - 0x11c4], 0
jmp 0x455a48
cmp dword [ebp - 0x11c4], 0xf
jae 0x455b64
cvtsi2sd xmm0, dword [ebp - 0x11c4]
movsd xmm1, qword [ebp - 0xa248]
addsd xmm1, xmm0
movsd qword [ebp - 0xa250], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa250]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x455ab7
mov ecx, dword [ebp - 0x11c4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa248]
addsd xmm1, xmm0
movsd qword [ebp - 0xa248], xmm1
jmp 0x4559b3
cvtsi2sd xmm0, dword [ebp - 0x11c4]
movsd xmm1, qword [ebp - 0xa248]
addsd xmm1, xmm0
movsd qword [ebp - 0xa258], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa258]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x455b14
mov eax, dword [ebp - 0x11c4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa248]
addsd xmm1, xmm0
movsd qword [ebp - 0xa248], xmm1
jmp 0x455b2d
mov ecx, 1
test ecx, ecx
je 0x455b29
jmp 0x455be9
jmp 0x455b50
cvtsi2sd xmm0, dword [ebp - 0x11c4]
movsd xmm1, qword [ebp - 0xa248]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x11c8], edx
jmp 0x455bf3
xor eax, eax
je 0x455b5a
jmp 0x455b69
jmp 0x4559b3
jmp 0x4559b3
mov ecx, 2
test ecx, ecx
je 0x455be9
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x11cc], eax
cvtsi2sd xmm0, dword [ebp - 0x11cc]
mov eax, dword [ebp - 0x11cc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa248]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x11c8], ecx
jmp 0x455bf3
mov dword [ebp - 0x11c8], 8
mov edx, dword [ebp - 0x1184]
shl edx, 2
add edx, dword [ebp - 0x1180]
mov eax, dword [ebp - 0x11c8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1184]
shl ecx, 2
add ecx, dword [ebp - 0x1180]
mov dword [ecx], eax
jmp 0x454b4b
mov edx, dword [ebp - 0x117c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x117c]
mov dword [ebp - 0x11d0], eax
mov ecx, dword [ebp - 0x11d0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x11d4], ecx
mov edx, dword [ebp - 0x11d4]
mov dword [ebp - 0x11d8], edx
xor eax, eax
mov byte [ebp - 0x2e], al
lea ecx, [ebp - 0x2e]
call fcn.00425970
mov dword [ebp - 0x11dc], eax
mov ecx, dword [ebp - 0x11dc]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x456d6b
mov eax, dword [ebp - 0x11dc]
mov dword [ebp - 0x11e0], eax
mov dword [ebp - 0x11e4], 0
jmp 0x455ca5
mov ecx, dword [ebp - 0x11e4]
add ecx, 1
mov dword [ebp - 0x11e4], ecx
cmp dword [ebp - 0x11e4], 1
jae 0x456d6b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x455f7d
xor eax, eax
je 0x455cef
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x455d2b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e68]
movsd qword [ebp - 0xa260], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x455ecb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x455ecb
mov dword [ebp - 0x11e8], 0
jmp 0x455daa
cmp dword [ebp - 0x11e8], 0xf
jae 0x455ec6
cvtsi2sd xmm0, dword [ebp - 0x11e8]
movsd xmm1, qword [ebp - 0xa260]
addsd xmm1, xmm0
movsd qword [ebp - 0xa268], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa268]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x455e19
mov ecx, dword [ebp - 0x11e8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa260]
addsd xmm1, xmm0
movsd qword [ebp - 0xa260], xmm1
jmp 0x455d15
cvtsi2sd xmm0, dword [ebp - 0x11e8]
movsd xmm1, qword [ebp - 0xa260]
addsd xmm1, xmm0
movsd qword [ebp - 0xa270], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa270]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x455e76
mov eax, dword [ebp - 0x11e8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa260]
addsd xmm1, xmm0
movsd qword [ebp - 0xa260], xmm1
jmp 0x455e8f
mov ecx, 1
test ecx, ecx
je 0x455e8b
jmp 0x455f4b
jmp 0x455eb2
cvtsi2sd xmm0, dword [ebp - 0x11e8]
movsd xmm1, qword [ebp - 0xa260]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x11ec], edx
jmp 0x455f55
xor eax, eax
je 0x455ebc
jmp 0x455ecb
jmp 0x455d15
jmp 0x455d15
mov ecx, 2
test ecx, ecx
je 0x455f4b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x11f0], eax
cvtsi2sd xmm0, dword [ebp - 0x11f0]
mov eax, dword [ebp - 0x11f0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa260]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x11ec], ecx
jmp 0x455f55
mov dword [ebp - 0x11ec], 8
mov edx, dword [ebp - 0x11e4]
shl edx, 2
add edx, dword [ebp - 0x11e0]
mov eax, dword [ebp - 0x11ec]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x11e4]
shl ecx, 2
add ecx, dword [ebp - 0x11e0]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x456a9b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45628d
xor eax, eax
je 0x455fff
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45603b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e60]
movsd qword [ebp - 0xa278], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4561db
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4561db
mov dword [ebp - 0x11f4], 0
jmp 0x4560ba
cmp dword [ebp - 0x11f4], 0xf
jae 0x4561d6
cvtsi2sd xmm0, dword [ebp - 0x11f4]
movsd xmm1, qword [ebp - 0xa278]
addsd xmm1, xmm0
movsd qword [ebp - 0xa280], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa280]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x456129
mov ecx, dword [ebp - 0x11f4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa278]
addsd xmm1, xmm0
movsd qword [ebp - 0xa278], xmm1
jmp 0x456025
cvtsi2sd xmm0, dword [ebp - 0x11f4]
movsd xmm1, qword [ebp - 0xa278]
addsd xmm1, xmm0
movsd qword [ebp - 0xa288], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa288]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x456186
mov eax, dword [ebp - 0x11f4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa278]
addsd xmm1, xmm0
movsd qword [ebp - 0xa278], xmm1
jmp 0x45619f
mov ecx, 1
test ecx, ecx
je 0x45619b
jmp 0x45625b
jmp 0x4561c2
cvtsi2sd xmm0, dword [ebp - 0x11f4]
movsd xmm1, qword [ebp - 0xa278]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x11f8], edx
jmp 0x456265
xor eax, eax
je 0x4561cc
jmp 0x4561db
jmp 0x456025
jmp 0x456025
mov ecx, 2
test ecx, ecx
je 0x45625b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x11fc], eax
cvtsi2sd xmm0, dword [ebp - 0x11fc]
mov eax, dword [ebp - 0x11fc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa278]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x11f8], ecx
jmp 0x456265
mov dword [ebp - 0x11f8], 8
mov edx, dword [ebp - 0x11e4]
shl edx, 2
add edx, dword [ebp - 0x11e0]
mov eax, dword [ebp - 0x11f8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x11e4]
shl ecx, 2
add ecx, dword [ebp - 0x11e0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x456558
xor eax, eax
je 0x4562ca
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x456306
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e58]
movsd qword [ebp - 0xa290], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4564a6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4564a6
mov dword [ebp - 0x1200], 0
jmp 0x456385
cmp dword [ebp - 0x1200], 0xf
jae 0x4564a1
cvtsi2sd xmm0, dword [ebp - 0x1200]
movsd xmm1, qword [ebp - 0xa290]
addsd xmm1, xmm0
movsd qword [ebp - 0xa298], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa298]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4563f4
mov ecx, dword [ebp - 0x1200]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa290]
addsd xmm1, xmm0
movsd qword [ebp - 0xa290], xmm1
jmp 0x4562f0
cvtsi2sd xmm0, dword [ebp - 0x1200]
movsd xmm1, qword [ebp - 0xa290]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa2a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x456451
mov eax, dword [ebp - 0x1200]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa290]
addsd xmm1, xmm0
movsd qword [ebp - 0xa290], xmm1
jmp 0x45646a
mov ecx, 1
test ecx, ecx
je 0x456466
jmp 0x456526
jmp 0x45648d
cvtsi2sd xmm0, dword [ebp - 0x1200]
movsd xmm1, qword [ebp - 0xa290]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1204], edx
jmp 0x456530
xor eax, eax
je 0x456497
jmp 0x4564a6
jmp 0x4562f0
jmp 0x4562f0
mov ecx, 2
test ecx, ecx
je 0x456526
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1208], eax
cvtsi2sd xmm0, dword [ebp - 0x1208]
mov eax, dword [ebp - 0x1208]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa290]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1204], ecx
jmp 0x456530
mov dword [ebp - 0x1204], 8
mov edx, dword [ebp - 0x11e4]
shl edx, 2
add edx, dword [ebp - 0x11e0]
mov eax, dword [ebp - 0x1204]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x11e4]
shl ecx, 2
add ecx, dword [ebp - 0x11e0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x11e4]
add edx, 0xffffffb1
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa2a8], xmm0
xor eax, eax
je 0x456572
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4565ae
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa2a8]
movsd qword [ebp - 0xa2b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45674e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45674e
mov dword [ebp - 0x120c], 0
jmp 0x45662d
cmp dword [ebp - 0x120c], 0xf
jae 0x456749
cvtsi2sd xmm0, dword [ebp - 0x120c]
movsd xmm1, qword [ebp - 0xa2b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa2b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45669c
mov ecx, dword [ebp - 0x120c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa2b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2b0], xmm1
jmp 0x456598
cvtsi2sd xmm0, dword [ebp - 0x120c]
movsd xmm1, qword [ebp - 0xa2b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa2c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4566f9
mov eax, dword [ebp - 0x120c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa2b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2b0], xmm1
jmp 0x456712
mov ecx, 1
test ecx, ecx
je 0x45670e
jmp 0x4567ce
jmp 0x456735
cvtsi2sd xmm0, dword [ebp - 0x120c]
movsd xmm1, qword [ebp - 0xa2b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1210], edx
jmp 0x4567d8
xor eax, eax
je 0x45673f
jmp 0x45674e
jmp 0x456598
jmp 0x456598
mov ecx, 2
test ecx, ecx
je 0x4567ce
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1214], eax
cvtsi2sd xmm0, dword [ebp - 0x1214]
mov eax, dword [ebp - 0x1214]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa2b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1210], ecx
jmp 0x4567d8
mov dword [ebp - 0x1210], 8
mov edx, dword [ebp - 0x11e4]
add edx, 0xffffffb1
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa2c8], xmm0
xor eax, eax
je 0x4567f2
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45682e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa2c8]
movsd qword [ebp - 0xa2d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4569ce
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4569ce
mov dword [ebp - 0x1218], 0
jmp 0x4568ad
cmp dword [ebp - 0x1218], 0xf
jae 0x4569c9
cvtsi2sd xmm0, dword [ebp - 0x1218]
movsd xmm1, qword [ebp - 0xa2d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa2d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45691c
mov ecx, dword [ebp - 0x1218]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa2d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2d0], xmm1
jmp 0x456818
cvtsi2sd xmm0, dword [ebp - 0x1218]
movsd xmm1, qword [ebp - 0xa2d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa2e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x456979
mov eax, dword [ebp - 0x1218]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa2d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2d0], xmm1
jmp 0x456992
mov ecx, 1
test ecx, ecx
je 0x45698e
jmp 0x456a4e
jmp 0x4569b5
cvtsi2sd xmm0, dword [ebp - 0x1218]
movsd xmm1, qword [ebp - 0xa2d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x121c], edx
jmp 0x456a58
xor eax, eax
je 0x4569bf
jmp 0x4569ce
jmp 0x456818
jmp 0x456818
mov ecx, 2
test ecx, ecx
je 0x456a4e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1220], eax
cvtsi2sd xmm0, dword [ebp - 0x1220]
mov eax, dword [ebp - 0x1220]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa2d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x121c], ecx
jmp 0x456a58
mov dword [ebp - 0x121c], 8
mov edx, dword [ebp - 0x11e4]
shl edx, 2
add edx, dword [ebp - 0x11e0]
mov eax, dword [ebp - 0x1210]
add eax, dword [edx]
mov ecx, dword [ebp - 0x11e4]
shl ecx, 2
add ecx, dword [ebp - 0x11e0]
mov edx, dword [ebp - 0x121c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x11e4]
shl ecx, 2
add ecx, dword [ebp - 0x11e0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x456d66
xor eax, eax
je 0x456ad8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x456b14
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e50]
movsd qword [ebp - 0xa2e8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x456cb4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x456cb4
mov dword [ebp - 0x1224], 0
jmp 0x456b93
cmp dword [ebp - 0x1224], 0xf
jae 0x456caf
cvtsi2sd xmm0, dword [ebp - 0x1224]
movsd xmm1, qword [ebp - 0xa2e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2f0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa2f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x456c02
mov ecx, dword [ebp - 0x1224]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa2e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2e8], xmm1
jmp 0x456afe
cvtsi2sd xmm0, dword [ebp - 0x1224]
movsd xmm1, qword [ebp - 0xa2e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2f8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa2f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x456c5f
mov eax, dword [ebp - 0x1224]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa2e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa2e8], xmm1
jmp 0x456c78
mov ecx, 1
test ecx, ecx
je 0x456c74
jmp 0x456d34
jmp 0x456c9b
cvtsi2sd xmm0, dword [ebp - 0x1224]
movsd xmm1, qword [ebp - 0xa2e8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1228], edx
jmp 0x456d3e
xor eax, eax
je 0x456ca5
jmp 0x456cb4
jmp 0x456afe
jmp 0x456afe
mov ecx, 2
test ecx, ecx
je 0x456d34
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x122c], eax
cvtsi2sd xmm0, dword [ebp - 0x122c]
mov eax, dword [ebp - 0x122c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa2e8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1228], ecx
jmp 0x456d3e
mov dword [ebp - 0x1228], 8
mov edx, dword [ebp - 0x11e4]
shl edx, 2
add edx, dword [ebp - 0x11e0]
mov eax, dword [ebp - 0x1228]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x11e4]
shl ecx, 2
add ecx, dword [ebp - 0x11e0]
mov dword [ecx], eax
jmp 0x455c96
mov edx, dword [ebp - 0x11dc]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x11dc]
mov dword [ebp - 0x1230], eax
mov ecx, dword [ebp - 0x1230]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1234], ecx
mov edx, dword [ebp - 0x1234]
mov dword [ebp - 0x1238], edx
xor eax, eax
mov byte [ebp - 0x2f], al
lea ecx, [ebp - 0x2f]
call fcn.00425940
mov dword [ebp - 0x123c], eax
mov ecx, dword [ebp - 0x123c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x457eb6
mov eax, dword [ebp - 0x123c]
mov dword [ebp - 0x1240], eax
mov dword [ebp - 0x1244], 0
jmp 0x456df0
mov ecx, dword [ebp - 0x1244]
add ecx, 1
mov dword [ebp - 0x1244], ecx
cmp dword [ebp - 0x1244], 1
jae 0x457eb6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4570c8
xor eax, eax
je 0x456e3a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x456e76
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e60]
movsd qword [ebp - 0xa300], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x457016
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x457016
mov dword [ebp - 0x1248], 0
jmp 0x456ef5
cmp dword [ebp - 0x1248], 0xf
jae 0x457011
cvtsi2sd xmm0, dword [ebp - 0x1248]
movsd xmm1, qword [ebp - 0xa300]
addsd xmm1, xmm0
movsd qword [ebp - 0xa308], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa308]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x456f64
mov ecx, dword [ebp - 0x1248]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa300]
addsd xmm1, xmm0
movsd qword [ebp - 0xa300], xmm1
jmp 0x456e60
cvtsi2sd xmm0, dword [ebp - 0x1248]
movsd xmm1, qword [ebp - 0xa300]
addsd xmm1, xmm0
movsd qword [ebp - 0xa310], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa310]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x456fc1
mov eax, dword [ebp - 0x1248]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa300]
addsd xmm1, xmm0
movsd qword [ebp - 0xa300], xmm1
jmp 0x456fda
mov ecx, 1
test ecx, ecx
je 0x456fd6
jmp 0x457096
jmp 0x456ffd
cvtsi2sd xmm0, dword [ebp - 0x1248]
movsd xmm1, qword [ebp - 0xa300]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x124c], edx
jmp 0x4570a0
xor eax, eax
je 0x457007
jmp 0x457016
jmp 0x456e60
jmp 0x456e60
mov ecx, 2
test ecx, ecx
je 0x457096
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1250], eax
cvtsi2sd xmm0, dword [ebp - 0x1250]
mov eax, dword [ebp - 0x1250]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa300]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x124c], ecx
jmp 0x4570a0
mov dword [ebp - 0x124c], 8
mov edx, dword [ebp - 0x1244]
shl edx, 2
add edx, dword [ebp - 0x1240]
mov eax, dword [ebp - 0x124c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1244]
shl ecx, 2
add ecx, dword [ebp - 0x1240]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x457be6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4573d8
xor eax, eax
je 0x45714a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x457186
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e58]
movsd qword [ebp - 0xa318], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x457326
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x457326
mov dword [ebp - 0x1254], 0
jmp 0x457205
cmp dword [ebp - 0x1254], 0xf
jae 0x457321
cvtsi2sd xmm0, dword [ebp - 0x1254]
movsd xmm1, qword [ebp - 0xa318]
addsd xmm1, xmm0
movsd qword [ebp - 0xa320], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa320]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x457274
mov ecx, dword [ebp - 0x1254]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa318]
addsd xmm1, xmm0
movsd qword [ebp - 0xa318], xmm1
jmp 0x457170
cvtsi2sd xmm0, dword [ebp - 0x1254]
movsd xmm1, qword [ebp - 0xa318]
addsd xmm1, xmm0
movsd qword [ebp - 0xa328], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa328]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4572d1
mov eax, dword [ebp - 0x1254]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa318]
addsd xmm1, xmm0
movsd qword [ebp - 0xa318], xmm1
jmp 0x4572ea
mov ecx, 1
test ecx, ecx
je 0x4572e6
jmp 0x4573a6
jmp 0x45730d
cvtsi2sd xmm0, dword [ebp - 0x1254]
movsd xmm1, qword [ebp - 0xa318]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1258], edx
jmp 0x4573b0
xor eax, eax
je 0x457317
jmp 0x457326
jmp 0x457170
jmp 0x457170
mov ecx, 2
test ecx, ecx
je 0x4573a6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x125c], eax
cvtsi2sd xmm0, dword [ebp - 0x125c]
mov eax, dword [ebp - 0x125c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa318]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1258], ecx
jmp 0x4573b0
mov dword [ebp - 0x1258], 8
mov edx, dword [ebp - 0x1244]
shl edx, 2
add edx, dword [ebp - 0x1240]
mov eax, dword [ebp - 0x1258]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1244]
shl ecx, 2
add ecx, dword [ebp - 0x1240]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4576a3
xor eax, eax
je 0x457415
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x457451
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e50]
movsd qword [ebp - 0xa330], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4575f1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4575f1
mov dword [ebp - 0x1260], 0
jmp 0x4574d0
cmp dword [ebp - 0x1260], 0xf
jae 0x4575ec
cvtsi2sd xmm0, dword [ebp - 0x1260]
movsd xmm1, qword [ebp - 0xa330]
addsd xmm1, xmm0
movsd qword [ebp - 0xa338], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa338]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45753f
mov ecx, dword [ebp - 0x1260]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa330]
addsd xmm1, xmm0
movsd qword [ebp - 0xa330], xmm1
jmp 0x45743b
cvtsi2sd xmm0, dword [ebp - 0x1260]
movsd xmm1, qword [ebp - 0xa330]
addsd xmm1, xmm0
movsd qword [ebp - 0xa340], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa340]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45759c
mov eax, dword [ebp - 0x1260]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa330]
addsd xmm1, xmm0
movsd qword [ebp - 0xa330], xmm1
jmp 0x4575b5
mov ecx, 1
test ecx, ecx
je 0x4575b1
jmp 0x457671
jmp 0x4575d8
cvtsi2sd xmm0, dword [ebp - 0x1260]
movsd xmm1, qword [ebp - 0xa330]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1264], edx
jmp 0x45767b
xor eax, eax
je 0x4575e2
jmp 0x4575f1
jmp 0x45743b
jmp 0x45743b
mov ecx, 2
test ecx, ecx
je 0x457671
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1268], eax
cvtsi2sd xmm0, dword [ebp - 0x1268]
mov eax, dword [ebp - 0x1268]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa330]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1264], ecx
jmp 0x45767b
mov dword [ebp - 0x1264], 8
mov edx, dword [ebp - 0x1244]
shl edx, 2
add edx, dword [ebp - 0x1240]
mov eax, dword [ebp - 0x1264]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1244]
shl ecx, 2
add ecx, dword [ebp - 0x1240]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1244]
add edx, 0xffffffb2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa348], xmm0
xor eax, eax
je 0x4576bd
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4576f9
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa348]
movsd qword [ebp - 0xa350], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x457899
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x457899
mov dword [ebp - 0x126c], 0
jmp 0x457778
cmp dword [ebp - 0x126c], 0xf
jae 0x457894
cvtsi2sd xmm0, dword [ebp - 0x126c]
movsd xmm1, qword [ebp - 0xa350]
addsd xmm1, xmm0
movsd qword [ebp - 0xa358], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa358]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4577e7
mov ecx, dword [ebp - 0x126c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa350]
addsd xmm1, xmm0
movsd qword [ebp - 0xa350], xmm1
jmp 0x4576e3
cvtsi2sd xmm0, dword [ebp - 0x126c]
movsd xmm1, qword [ebp - 0xa350]
addsd xmm1, xmm0
movsd qword [ebp - 0xa360], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa360]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x457844
mov eax, dword [ebp - 0x126c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa350]
addsd xmm1, xmm0
movsd qword [ebp - 0xa350], xmm1
jmp 0x45785d
mov ecx, 1
test ecx, ecx
je 0x457859
jmp 0x457919
jmp 0x457880
cvtsi2sd xmm0, dword [ebp - 0x126c]
movsd xmm1, qword [ebp - 0xa350]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1270], edx
jmp 0x457923
xor eax, eax
je 0x45788a
jmp 0x457899
jmp 0x4576e3
jmp 0x4576e3
mov ecx, 2
test ecx, ecx
je 0x457919
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1274], eax
cvtsi2sd xmm0, dword [ebp - 0x1274]
mov eax, dword [ebp - 0x1274]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa350]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1270], ecx
jmp 0x457923
mov dword [ebp - 0x1270], 8
mov edx, dword [ebp - 0x1244]
add edx, 0xffffffb2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa368], xmm0
xor eax, eax
je 0x45793d
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x457979
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa368]
movsd qword [ebp - 0xa370], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x457b19
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x457b19
mov dword [ebp - 0x1278], 0
jmp 0x4579f8
cmp dword [ebp - 0x1278], 0xf
jae 0x457b14
cvtsi2sd xmm0, dword [ebp - 0x1278]
movsd xmm1, qword [ebp - 0xa370]
addsd xmm1, xmm0
movsd qword [ebp - 0xa378], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa378]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x457a67
mov ecx, dword [ebp - 0x1278]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa370]
addsd xmm1, xmm0
movsd qword [ebp - 0xa370], xmm1
jmp 0x457963
cvtsi2sd xmm0, dword [ebp - 0x1278]
movsd xmm1, qword [ebp - 0xa370]
addsd xmm1, xmm0
movsd qword [ebp - 0xa380], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa380]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x457ac4
mov eax, dword [ebp - 0x1278]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa370]
addsd xmm1, xmm0
movsd qword [ebp - 0xa370], xmm1
jmp 0x457add
mov ecx, 1
test ecx, ecx
je 0x457ad9
jmp 0x457b99
jmp 0x457b00
cvtsi2sd xmm0, dword [ebp - 0x1278]
movsd xmm1, qword [ebp - 0xa370]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x127c], edx
jmp 0x457ba3
xor eax, eax
je 0x457b0a
jmp 0x457b19
jmp 0x457963
jmp 0x457963
mov ecx, 2
test ecx, ecx
je 0x457b99
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1280], eax
cvtsi2sd xmm0, dword [ebp - 0x1280]
mov eax, dword [ebp - 0x1280]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa370]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x127c], ecx
jmp 0x457ba3
mov dword [ebp - 0x127c], 8
mov edx, dword [ebp - 0x1244]
shl edx, 2
add edx, dword [ebp - 0x1240]
mov eax, dword [ebp - 0x1270]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1244]
shl ecx, 2
add ecx, dword [ebp - 0x1240]
mov edx, dword [ebp - 0x127c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1244]
shl ecx, 2
add ecx, dword [ebp - 0x1240]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x457eb1
xor eax, eax
je 0x457c23
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x457c5f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e48]
movsd qword [ebp - 0xa388], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x457dff
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x457dff
mov dword [ebp - 0x1284], 0
jmp 0x457cde
cmp dword [ebp - 0x1284], 0xf
jae 0x457dfa
cvtsi2sd xmm0, dword [ebp - 0x1284]
movsd xmm1, qword [ebp - 0xa388]
addsd xmm1, xmm0
movsd qword [ebp - 0xa390], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa390]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x457d4d
mov ecx, dword [ebp - 0x1284]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa388]
addsd xmm1, xmm0
movsd qword [ebp - 0xa388], xmm1
jmp 0x457c49
cvtsi2sd xmm0, dword [ebp - 0x1284]
movsd xmm1, qword [ebp - 0xa388]
addsd xmm1, xmm0
movsd qword [ebp - 0xa398], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa398]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x457daa
mov eax, dword [ebp - 0x1284]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa388]
addsd xmm1, xmm0
movsd qword [ebp - 0xa388], xmm1
jmp 0x457dc3
mov ecx, 1
test ecx, ecx
je 0x457dbf
jmp 0x457e7f
jmp 0x457de6
cvtsi2sd xmm0, dword [ebp - 0x1284]
movsd xmm1, qword [ebp - 0xa388]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1288], edx
jmp 0x457e89
xor eax, eax
je 0x457df0
jmp 0x457dff
jmp 0x457c49
jmp 0x457c49
mov ecx, 2
test ecx, ecx
je 0x457e7f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x128c], eax
cvtsi2sd xmm0, dword [ebp - 0x128c]
mov eax, dword [ebp - 0x128c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa388]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1288], ecx
jmp 0x457e89
mov dword [ebp - 0x1288], 8
mov edx, dword [ebp - 0x1244]
shl edx, 2
add edx, dword [ebp - 0x1240]
mov eax, dword [ebp - 0x1288]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1244]
shl ecx, 2
add ecx, dword [ebp - 0x1240]
mov dword [ecx], eax
jmp 0x456de1
mov edx, dword [ebp - 0x123c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x123c]
mov dword [ebp - 0x1290], eax
mov ecx, dword [ebp - 0x1290]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1294], ecx
mov edx, dword [ebp - 0x1294]
mov dword [ebp - 0x1298], edx
mov eax, dword [ebp - 0x1238]
mov dword [ebp - 0x11d8], eax
cmp dword [ebp - 0x11d8], 0
je 0x459053
xor ecx, ecx
mov byte [ebp - 0x30], cl
lea ecx, [ebp - 0x30]
call fcn.00425910
mov dword [ebp - 0x129c], eax
mov edx, dword [ebp - 0x129c]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x45901a
mov ecx, dword [ebp - 0x129c]
mov dword [ebp - 0x12a0], ecx
mov dword [ebp - 0x12a4], 0
jmp 0x457f54
mov edx, dword [ebp - 0x12a4]
add edx, 1
mov dword [ebp - 0x12a4], edx
cmp dword [ebp - 0x12a4], 1
jae 0x45901a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45822c
xor eax, eax
je 0x457f9e
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x457fda
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e60]
movsd qword [ebp - 0xa3a0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45817a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45817a
mov dword [ebp - 0x12a8], 0
jmp 0x458059
cmp dword [ebp - 0x12a8], 0xf
jae 0x458175
cvtsi2sd xmm0, dword [ebp - 0x12a8]
movsd xmm1, qword [ebp - 0xa3a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3a8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa3a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4580c8
mov ecx, dword [ebp - 0x12a8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa3a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3a0], xmm1
jmp 0x457fc4
cvtsi2sd xmm0, dword [ebp - 0x12a8]
movsd xmm1, qword [ebp - 0xa3a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3b0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa3b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x458125
mov eax, dword [ebp - 0x12a8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa3a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3a0], xmm1
jmp 0x45813e
mov ecx, 1
test ecx, ecx
je 0x45813a
jmp 0x4581fa
jmp 0x458161
cvtsi2sd xmm0, dword [ebp - 0x12a8]
movsd xmm1, qword [ebp - 0xa3a0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x12ac], edx
jmp 0x458204
xor eax, eax
je 0x45816b
jmp 0x45817a
jmp 0x457fc4
jmp 0x457fc4
mov ecx, 2
test ecx, ecx
je 0x4581fa
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x12b0], eax
cvtsi2sd xmm0, dword [ebp - 0x12b0]
mov eax, dword [ebp - 0x12b0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa3a0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x12ac], ecx
jmp 0x458204
mov dword [ebp - 0x12ac], 8
mov edx, dword [ebp - 0x12a4]
shl edx, 2
add edx, dword [ebp - 0x12a0]
mov eax, dword [ebp - 0x12ac]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x12a4]
shl ecx, 2
add ecx, dword [ebp - 0x12a0]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x458d4a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45853c
xor eax, eax
je 0x4582ae
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4582ea
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e58]
movsd qword [ebp - 0xa3b8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45848a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45848a
mov dword [ebp - 0x12b4], 0
jmp 0x458369
cmp dword [ebp - 0x12b4], 0xf
jae 0x458485
cvtsi2sd xmm0, dword [ebp - 0x12b4]
movsd xmm1, qword [ebp - 0xa3b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3c0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa3c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4583d8
mov ecx, dword [ebp - 0x12b4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa3b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3b8], xmm1
jmp 0x4582d4
cvtsi2sd xmm0, dword [ebp - 0x12b4]
movsd xmm1, qword [ebp - 0xa3b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3c8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa3c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x458435
mov eax, dword [ebp - 0x12b4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa3b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3b8], xmm1
jmp 0x45844e
mov ecx, 1
test ecx, ecx
je 0x45844a
jmp 0x45850a
jmp 0x458471
cvtsi2sd xmm0, dword [ebp - 0x12b4]
movsd xmm1, qword [ebp - 0xa3b8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x12b8], edx
jmp 0x458514
xor eax, eax
je 0x45847b
jmp 0x45848a
jmp 0x4582d4
jmp 0x4582d4
mov ecx, 2
test ecx, ecx
je 0x45850a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x12bc], eax
cvtsi2sd xmm0, dword [ebp - 0x12bc]
mov eax, dword [ebp - 0x12bc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa3b8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x12b8], ecx
jmp 0x458514
mov dword [ebp - 0x12b8], 8
mov edx, dword [ebp - 0x12a4]
shl edx, 2
add edx, dword [ebp - 0x12a0]
mov eax, dword [ebp - 0x12b8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x12a4]
shl ecx, 2
add ecx, dword [ebp - 0x12a0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x458807
xor eax, eax
je 0x458579
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4585b5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e50]
movsd qword [ebp - 0xa3d0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x458755
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x458755
mov dword [ebp - 0x12c0], 0
jmp 0x458634
cmp dword [ebp - 0x12c0], 0xf
jae 0x458750
cvtsi2sd xmm0, dword [ebp - 0x12c0]
movsd xmm1, qword [ebp - 0xa3d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa3d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4586a3
mov ecx, dword [ebp - 0x12c0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa3d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3d0], xmm1
jmp 0x45859f
cvtsi2sd xmm0, dword [ebp - 0x12c0]
movsd xmm1, qword [ebp - 0xa3d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa3e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x458700
mov eax, dword [ebp - 0x12c0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa3d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3d0], xmm1
jmp 0x458719
mov ecx, 1
test ecx, ecx
je 0x458715
jmp 0x4587d5
jmp 0x45873c
cvtsi2sd xmm0, dword [ebp - 0x12c0]
movsd xmm1, qword [ebp - 0xa3d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x12c4], edx
jmp 0x4587df
xor eax, eax
je 0x458746
jmp 0x458755
jmp 0x45859f
jmp 0x45859f
mov ecx, 2
test ecx, ecx
je 0x4587d5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x12c8], eax
cvtsi2sd xmm0, dword [ebp - 0x12c8]
mov eax, dword [ebp - 0x12c8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa3d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x12c4], ecx
jmp 0x4587df
mov dword [ebp - 0x12c4], 8
mov edx, dword [ebp - 0x12a4]
shl edx, 2
add edx, dword [ebp - 0x12a0]
mov eax, dword [ebp - 0x12c4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x12a4]
shl ecx, 2
add ecx, dword [ebp - 0x12a0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x12a4]
add edx, 0xffffffb2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa3e8], xmm0
xor eax, eax
je 0x458821
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45885d
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa3e8]
movsd qword [ebp - 0xa3f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4589fd
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4589fd
mov dword [ebp - 0x12cc], 0
jmp 0x4588dc
cmp dword [ebp - 0x12cc], 0xf
jae 0x4589f8
cvtsi2sd xmm0, dword [ebp - 0x12cc]
movsd xmm1, qword [ebp - 0xa3f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa3f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45894b
mov ecx, dword [ebp - 0x12cc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa3f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3f0], xmm1
jmp 0x458847
cvtsi2sd xmm0, dword [ebp - 0x12cc]
movsd xmm1, qword [ebp - 0xa3f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa400], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa400]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4589a8
mov eax, dword [ebp - 0x12cc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa3f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa3f0], xmm1
jmp 0x4589c1
mov ecx, 1
test ecx, ecx
je 0x4589bd
jmp 0x458a7d
jmp 0x4589e4
cvtsi2sd xmm0, dword [ebp - 0x12cc]
movsd xmm1, qword [ebp - 0xa3f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x12d0], edx
jmp 0x458a87
xor eax, eax
je 0x4589ee
jmp 0x4589fd
jmp 0x458847
jmp 0x458847
mov ecx, 2
test ecx, ecx
je 0x458a7d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x12d4], eax
cvtsi2sd xmm0, dword [ebp - 0x12d4]
mov eax, dword [ebp - 0x12d4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa3f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x12d0], ecx
jmp 0x458a87
mov dword [ebp - 0x12d0], 8
mov edx, dword [ebp - 0x12a4]
add edx, 0xffffffb2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa408], xmm0
xor eax, eax
je 0x458aa1
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x458add
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa408]
movsd qword [ebp - 0xa410], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x458c7d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x458c7d
mov dword [ebp - 0x12d8], 0
jmp 0x458b5c
cmp dword [ebp - 0x12d8], 0xf
jae 0x458c78
cvtsi2sd xmm0, dword [ebp - 0x12d8]
movsd xmm1, qword [ebp - 0xa410]
addsd xmm1, xmm0
movsd qword [ebp - 0xa418], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa418]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x458bcb
mov ecx, dword [ebp - 0x12d8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa410]
addsd xmm1, xmm0
movsd qword [ebp - 0xa410], xmm1
jmp 0x458ac7
cvtsi2sd xmm0, dword [ebp - 0x12d8]
movsd xmm1, qword [ebp - 0xa410]
addsd xmm1, xmm0
movsd qword [ebp - 0xa420], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa420]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x458c28
mov eax, dword [ebp - 0x12d8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa410]
addsd xmm1, xmm0
movsd qword [ebp - 0xa410], xmm1
jmp 0x458c41
mov ecx, 1
test ecx, ecx
je 0x458c3d
jmp 0x458cfd
jmp 0x458c64
cvtsi2sd xmm0, dword [ebp - 0x12d8]
movsd xmm1, qword [ebp - 0xa410]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x12dc], edx
jmp 0x458d07
xor eax, eax
je 0x458c6e
jmp 0x458c7d
jmp 0x458ac7
jmp 0x458ac7
mov ecx, 2
test ecx, ecx
je 0x458cfd
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x12e0], eax
cvtsi2sd xmm0, dword [ebp - 0x12e0]
mov eax, dword [ebp - 0x12e0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa410]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x12dc], ecx
jmp 0x458d07
mov dword [ebp - 0x12dc], 8
mov edx, dword [ebp - 0x12a4]
shl edx, 2
add edx, dword [ebp - 0x12a0]
mov eax, dword [ebp - 0x12d0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x12a4]
shl ecx, 2
add ecx, dword [ebp - 0x12a0]
mov edx, dword [ebp - 0x12dc]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x12a4]
shl ecx, 2
add ecx, dword [ebp - 0x12a0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x459015
xor eax, eax
je 0x458d87
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x458dc3
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e48]
movsd qword [ebp - 0xa428], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x458f63
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x458f63
mov dword [ebp - 0x12e4], 0
jmp 0x458e42
cmp dword [ebp - 0x12e4], 0xf
jae 0x458f5e
cvtsi2sd xmm0, dword [ebp - 0x12e4]
movsd xmm1, qword [ebp - 0xa428]
addsd xmm1, xmm0
movsd qword [ebp - 0xa430], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa430]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x458eb1
mov ecx, dword [ebp - 0x12e4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa428]
addsd xmm1, xmm0
movsd qword [ebp - 0xa428], xmm1
jmp 0x458dad
cvtsi2sd xmm0, dword [ebp - 0x12e4]
movsd xmm1, qword [ebp - 0xa428]
addsd xmm1, xmm0
movsd qword [ebp - 0xa438], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa438]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x458f0e
mov eax, dword [ebp - 0x12e4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa428]
addsd xmm1, xmm0
movsd qword [ebp - 0xa428], xmm1
jmp 0x458f27
mov ecx, 1
test ecx, ecx
je 0x458f23
jmp 0x458fe3
jmp 0x458f4a
cvtsi2sd xmm0, dword [ebp - 0x12e4]
movsd xmm1, qword [ebp - 0xa428]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x12e8], edx
jmp 0x458fed
xor eax, eax
je 0x458f54
jmp 0x458f63
jmp 0x458dad
jmp 0x458dad
mov ecx, 2
test ecx, ecx
je 0x458fe3
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x12ec], eax
cvtsi2sd xmm0, dword [ebp - 0x12ec]
mov eax, dword [ebp - 0x12ec]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa428]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x12e8], ecx
jmp 0x458fed
mov dword [ebp - 0x12e8], 8
mov edx, dword [ebp - 0x12a4]
shl edx, 2
add edx, dword [ebp - 0x12a0]
mov eax, dword [ebp - 0x12e8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x12a4]
shl ecx, 2
add ecx, dword [ebp - 0x12a0]
mov dword [ecx], eax
jmp 0x457f45
mov edx, dword [ebp - 0x129c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x129c]
mov dword [ebp - 0x12f0], eax
mov ecx, dword [ebp - 0x12f0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x12f4], ecx
mov edx, dword [ebp - 0x12f4]
mov dword [ebp - 0x1298], edx
xor eax, eax
mov byte [ebp - 0x31], al
lea ecx, [ebp - 0x31]
call fcn.004258e0
mov dword [ebp - 0x12f8], eax
mov ecx, dword [ebp - 0x12f8]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x45a165
mov eax, dword [ebp - 0x12f8]
mov dword [ebp - 0x12fc], eax
mov dword [ebp - 0x1300], 0
jmp 0x45909f
mov ecx, dword [ebp - 0x1300]
add ecx, 1
mov dword [ebp - 0x1300], ecx
cmp dword [ebp - 0x1300], 1
jae 0x45a165
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x459377
xor eax, eax
je 0x4590e9
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x459125
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e60]
movsd qword [ebp - 0xa440], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4592c5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4592c5
mov dword [ebp - 0x1304], 0
jmp 0x4591a4
cmp dword [ebp - 0x1304], 0xf
jae 0x4592c0
cvtsi2sd xmm0, dword [ebp - 0x1304]
movsd xmm1, qword [ebp - 0xa440]
addsd xmm1, xmm0
movsd qword [ebp - 0xa448], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa448]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x459213
mov ecx, dword [ebp - 0x1304]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa440]
addsd xmm1, xmm0
movsd qword [ebp - 0xa440], xmm1
jmp 0x45910f
cvtsi2sd xmm0, dword [ebp - 0x1304]
movsd xmm1, qword [ebp - 0xa440]
addsd xmm1, xmm0
movsd qword [ebp - 0xa450], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa450]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x459270
mov eax, dword [ebp - 0x1304]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa440]
addsd xmm1, xmm0
movsd qword [ebp - 0xa440], xmm1
jmp 0x459289
mov ecx, 1
test ecx, ecx
je 0x459285
jmp 0x459345
jmp 0x4592ac
cvtsi2sd xmm0, dword [ebp - 0x1304]
movsd xmm1, qword [ebp - 0xa440]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1308], edx
jmp 0x45934f
xor eax, eax
je 0x4592b6
jmp 0x4592c5
jmp 0x45910f
jmp 0x45910f
mov ecx, 2
test ecx, ecx
je 0x459345
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x130c], eax
cvtsi2sd xmm0, dword [ebp - 0x130c]
mov eax, dword [ebp - 0x130c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa440]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1308], ecx
jmp 0x45934f
mov dword [ebp - 0x1308], 8
mov edx, dword [ebp - 0x1300]
shl edx, 2
add edx, dword [ebp - 0x12fc]
mov eax, dword [ebp - 0x1308]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1300]
shl ecx, 2
add ecx, dword [ebp - 0x12fc]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x459e95
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x459687
xor eax, eax
je 0x4593f9
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x459435
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e58]
movsd qword [ebp - 0xa458], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4595d5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4595d5
mov dword [ebp - 0x1310], 0
jmp 0x4594b4
cmp dword [ebp - 0x1310], 0xf
jae 0x4595d0
cvtsi2sd xmm0, dword [ebp - 0x1310]
movsd xmm1, qword [ebp - 0xa458]
addsd xmm1, xmm0
movsd qword [ebp - 0xa460], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa460]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x459523
mov ecx, dword [ebp - 0x1310]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa458]
addsd xmm1, xmm0
movsd qword [ebp - 0xa458], xmm1
jmp 0x45941f
cvtsi2sd xmm0, dword [ebp - 0x1310]
movsd xmm1, qword [ebp - 0xa458]
addsd xmm1, xmm0
movsd qword [ebp - 0xa468], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa468]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x459580
mov eax, dword [ebp - 0x1310]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa458]
addsd xmm1, xmm0
movsd qword [ebp - 0xa458], xmm1
jmp 0x459599
mov ecx, 1
test ecx, ecx
je 0x459595
jmp 0x459655
jmp 0x4595bc
cvtsi2sd xmm0, dword [ebp - 0x1310]
movsd xmm1, qword [ebp - 0xa458]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1314], edx
jmp 0x45965f
xor eax, eax
je 0x4595c6
jmp 0x4595d5
jmp 0x45941f
jmp 0x45941f
mov ecx, 2
test ecx, ecx
je 0x459655
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1318], eax
cvtsi2sd xmm0, dword [ebp - 0x1318]
mov eax, dword [ebp - 0x1318]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa458]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1314], ecx
jmp 0x45965f
mov dword [ebp - 0x1314], 8
mov edx, dword [ebp - 0x1300]
shl edx, 2
add edx, dword [ebp - 0x12fc]
mov eax, dword [ebp - 0x1314]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1300]
shl ecx, 2
add ecx, dword [ebp - 0x12fc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x459952
xor eax, eax
je 0x4596c4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x459700
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e50]
movsd qword [ebp - 0xa470], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4598a0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4598a0
mov dword [ebp - 0x131c], 0
jmp 0x45977f
cmp dword [ebp - 0x131c], 0xf
jae 0x45989b
cvtsi2sd xmm0, dword [ebp - 0x131c]
movsd xmm1, qword [ebp - 0xa470]
addsd xmm1, xmm0
movsd qword [ebp - 0xa478], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa478]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4597ee
mov ecx, dword [ebp - 0x131c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa470]
addsd xmm1, xmm0
movsd qword [ebp - 0xa470], xmm1
jmp 0x4596ea
cvtsi2sd xmm0, dword [ebp - 0x131c]
movsd xmm1, qword [ebp - 0xa470]
addsd xmm1, xmm0
movsd qword [ebp - 0xa480], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa480]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45984b
mov eax, dword [ebp - 0x131c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa470]
addsd xmm1, xmm0
movsd qword [ebp - 0xa470], xmm1
jmp 0x459864
mov ecx, 1
test ecx, ecx
je 0x459860
jmp 0x459920
jmp 0x459887
cvtsi2sd xmm0, dword [ebp - 0x131c]
movsd xmm1, qword [ebp - 0xa470]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1320], edx
jmp 0x45992a
xor eax, eax
je 0x459891
jmp 0x4598a0
jmp 0x4596ea
jmp 0x4596ea
mov ecx, 2
test ecx, ecx
je 0x459920
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1324], eax
cvtsi2sd xmm0, dword [ebp - 0x1324]
mov eax, dword [ebp - 0x1324]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa470]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1320], ecx
jmp 0x45992a
mov dword [ebp - 0x1320], 8
mov edx, dword [ebp - 0x1300]
shl edx, 2
add edx, dword [ebp - 0x12fc]
mov eax, dword [ebp - 0x1320]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1300]
shl ecx, 2
add ecx, dword [ebp - 0x12fc]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1300]
add edx, 0xffffffb2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa488], xmm0
xor eax, eax
je 0x45996c
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4599a8
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa488]
movsd qword [ebp - 0xa490], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x459b48
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x459b48
mov dword [ebp - 0x1328], 0
jmp 0x459a27
cmp dword [ebp - 0x1328], 0xf
jae 0x459b43
cvtsi2sd xmm0, dword [ebp - 0x1328]
movsd xmm1, qword [ebp - 0xa490]
addsd xmm1, xmm0
movsd qword [ebp - 0xa498], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa498]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x459a96
mov ecx, dword [ebp - 0x1328]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa490]
addsd xmm1, xmm0
movsd qword [ebp - 0xa490], xmm1
jmp 0x459992
cvtsi2sd xmm0, dword [ebp - 0x1328]
movsd xmm1, qword [ebp - 0xa490]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa4a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x459af3
mov eax, dword [ebp - 0x1328]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa490]
addsd xmm1, xmm0
movsd qword [ebp - 0xa490], xmm1
jmp 0x459b0c
mov ecx, 1
test ecx, ecx
je 0x459b08
jmp 0x459bc8
jmp 0x459b2f
cvtsi2sd xmm0, dword [ebp - 0x1328]
movsd xmm1, qword [ebp - 0xa490]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x132c], edx
jmp 0x459bd2
xor eax, eax
je 0x459b39
jmp 0x459b48
jmp 0x459992
jmp 0x459992
mov ecx, 2
test ecx, ecx
je 0x459bc8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1330], eax
cvtsi2sd xmm0, dword [ebp - 0x1330]
mov eax, dword [ebp - 0x1330]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa490]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x132c], ecx
jmp 0x459bd2
mov dword [ebp - 0x132c], 8
mov edx, dword [ebp - 0x1300]
add edx, 0xffffffb2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa4a8], xmm0
xor eax, eax
je 0x459bec
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x459c28
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa4a8]
movsd qword [ebp - 0xa4b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x459dc8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x459dc8
mov dword [ebp - 0x1334], 0
jmp 0x459ca7
cmp dword [ebp - 0x1334], 0xf
jae 0x459dc3
cvtsi2sd xmm0, dword [ebp - 0x1334]
movsd xmm1, qword [ebp - 0xa4b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa4b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x459d16
mov ecx, dword [ebp - 0x1334]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa4b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4b0], xmm1
jmp 0x459c12
cvtsi2sd xmm0, dword [ebp - 0x1334]
movsd xmm1, qword [ebp - 0xa4b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa4c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x459d73
mov eax, dword [ebp - 0x1334]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa4b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4b0], xmm1
jmp 0x459d8c
mov ecx, 1
test ecx, ecx
je 0x459d88
jmp 0x459e48
jmp 0x459daf
cvtsi2sd xmm0, dword [ebp - 0x1334]
movsd xmm1, qword [ebp - 0xa4b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1338], edx
jmp 0x459e52
xor eax, eax
je 0x459db9
jmp 0x459dc8
jmp 0x459c12
jmp 0x459c12
mov ecx, 2
test ecx, ecx
je 0x459e48
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x133c], eax
cvtsi2sd xmm0, dword [ebp - 0x133c]
mov eax, dword [ebp - 0x133c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa4b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1338], ecx
jmp 0x459e52
mov dword [ebp - 0x1338], 8
mov edx, dword [ebp - 0x1300]
shl edx, 2
add edx, dword [ebp - 0x12fc]
mov eax, dword [ebp - 0x132c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1300]
shl ecx, 2
add ecx, dword [ebp - 0x12fc]
mov edx, dword [ebp - 0x1338]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1300]
shl ecx, 2
add ecx, dword [ebp - 0x12fc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45a160
xor eax, eax
je 0x459ed2
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x459f0e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e48]
movsd qword [ebp - 0xa4c8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45a0ae
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45a0ae
mov dword [ebp - 0x1340], 0
jmp 0x459f8d
cmp dword [ebp - 0x1340], 0xf
jae 0x45a0a9
cvtsi2sd xmm0, dword [ebp - 0x1340]
movsd xmm1, qword [ebp - 0xa4c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4d0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa4d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x459ffc
mov ecx, dword [ebp - 0x1340]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa4c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4c8], xmm1
jmp 0x459ef8
cvtsi2sd xmm0, dword [ebp - 0x1340]
movsd xmm1, qword [ebp - 0xa4c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4d8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa4d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45a059
mov eax, dword [ebp - 0x1340]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa4c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4c8], xmm1
jmp 0x45a072
mov ecx, 1
test ecx, ecx
je 0x45a06e
jmp 0x45a12e
jmp 0x45a095
cvtsi2sd xmm0, dword [ebp - 0x1340]
movsd xmm1, qword [ebp - 0xa4c8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1344], edx
jmp 0x45a138
xor eax, eax
je 0x45a09f
jmp 0x45a0ae
jmp 0x459ef8
jmp 0x459ef8
mov ecx, 2
test ecx, ecx
je 0x45a12e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1348], eax
cvtsi2sd xmm0, dword [ebp - 0x1348]
mov eax, dword [ebp - 0x1348]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa4c8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1344], ecx
jmp 0x45a138
mov dword [ebp - 0x1344], 8
mov edx, dword [ebp - 0x1300]
shl edx, 2
add edx, dword [ebp - 0x12fc]
mov eax, dword [ebp - 0x1344]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1300]
shl ecx, 2
add ecx, dword [ebp - 0x12fc]
mov dword [ecx], eax
jmp 0x459090
mov edx, dword [ebp - 0x12f8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x12f8]
mov dword [ebp - 0x134c], eax
mov ecx, dword [ebp - 0x134c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1350], ecx
mov edx, dword [ebp - 0x1350]
mov dword [ebp - 0x1354], edx
xor eax, eax
mov byte [ebp - 0x32], al
lea ecx, [ebp - 0x32]
call fcn.004258b0
mov dword [ebp - 0x1358], eax
mov ecx, dword [ebp - 0x1358]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x45b2b0
mov eax, dword [ebp - 0x1358]
mov dword [ebp - 0x135c], eax
mov dword [ebp - 0x1360], 0
jmp 0x45a1ea
mov ecx, dword [ebp - 0x1360]
add ecx, 1
mov dword [ebp - 0x1360], ecx
cmp dword [ebp - 0x1360], 1
jae 0x45b2b0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45a4c2
xor eax, eax
je 0x45a234
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45a270
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e58]
movsd qword [ebp - 0xa4e0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45a410
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45a410
mov dword [ebp - 0x1364], 0
jmp 0x45a2ef
cmp dword [ebp - 0x1364], 0xf
jae 0x45a40b
cvtsi2sd xmm0, dword [ebp - 0x1364]
movsd xmm1, qword [ebp - 0xa4e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4e8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa4e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45a35e
mov ecx, dword [ebp - 0x1364]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa4e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4e0], xmm1
jmp 0x45a25a
cvtsi2sd xmm0, dword [ebp - 0x1364]
movsd xmm1, qword [ebp - 0xa4e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4f0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa4f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45a3bb
mov eax, dword [ebp - 0x1364]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa4e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4e0], xmm1
jmp 0x45a3d4
mov ecx, 1
test ecx, ecx
je 0x45a3d0
jmp 0x45a490
jmp 0x45a3f7
cvtsi2sd xmm0, dword [ebp - 0x1364]
movsd xmm1, qword [ebp - 0xa4e0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1368], edx
jmp 0x45a49a
xor eax, eax
je 0x45a401
jmp 0x45a410
jmp 0x45a25a
jmp 0x45a25a
mov ecx, 2
test ecx, ecx
je 0x45a490
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x136c], eax
cvtsi2sd xmm0, dword [ebp - 0x136c]
mov eax, dword [ebp - 0x136c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa4e0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1368], ecx
jmp 0x45a49a
mov dword [ebp - 0x1368], 8
mov edx, dword [ebp - 0x1360]
shl edx, 2
add edx, dword [ebp - 0x135c]
mov eax, dword [ebp - 0x1368]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1360]
shl ecx, 2
add ecx, dword [ebp - 0x135c]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45afe0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45a7d2
xor eax, eax
je 0x45a544
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45a580
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e50]
movsd qword [ebp - 0xa4f8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45a720
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45a720
mov dword [ebp - 0x1370], 0
jmp 0x45a5ff
cmp dword [ebp - 0x1370], 0xf
jae 0x45a71b
cvtsi2sd xmm0, dword [ebp - 0x1370]
movsd xmm1, qword [ebp - 0xa4f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa500], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa500]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45a66e
mov ecx, dword [ebp - 0x1370]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa4f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4f8], xmm1
jmp 0x45a56a
cvtsi2sd xmm0, dword [ebp - 0x1370]
movsd xmm1, qword [ebp - 0xa4f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa508], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa508]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45a6cb
mov eax, dword [ebp - 0x1370]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa4f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa4f8], xmm1
jmp 0x45a6e4
mov ecx, 1
test ecx, ecx
je 0x45a6e0
jmp 0x45a7a0
jmp 0x45a707
cvtsi2sd xmm0, dword [ebp - 0x1370]
movsd xmm1, qword [ebp - 0xa4f8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1374], edx
jmp 0x45a7aa
xor eax, eax
je 0x45a711
jmp 0x45a720
jmp 0x45a56a
jmp 0x45a56a
mov ecx, 2
test ecx, ecx
je 0x45a7a0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1378], eax
cvtsi2sd xmm0, dword [ebp - 0x1378]
mov eax, dword [ebp - 0x1378]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa4f8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1374], ecx
jmp 0x45a7aa
mov dword [ebp - 0x1374], 8
mov edx, dword [ebp - 0x1360]
shl edx, 2
add edx, dword [ebp - 0x135c]
mov eax, dword [ebp - 0x1374]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1360]
shl ecx, 2
add ecx, dword [ebp - 0x135c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45aa9d
xor eax, eax
je 0x45a80f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45a84b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e48]
movsd qword [ebp - 0xa510], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45a9eb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45a9eb
mov dword [ebp - 0x137c], 0
jmp 0x45a8ca
cmp dword [ebp - 0x137c], 0xf
jae 0x45a9e6
cvtsi2sd xmm0, dword [ebp - 0x137c]
movsd xmm1, qword [ebp - 0xa510]
addsd xmm1, xmm0
movsd qword [ebp - 0xa518], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa518]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45a939
mov ecx, dword [ebp - 0x137c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa510]
addsd xmm1, xmm0
movsd qword [ebp - 0xa510], xmm1
jmp 0x45a835
cvtsi2sd xmm0, dword [ebp - 0x137c]
movsd xmm1, qword [ebp - 0xa510]
addsd xmm1, xmm0
movsd qword [ebp - 0xa520], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa520]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45a996
mov eax, dword [ebp - 0x137c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa510]
addsd xmm1, xmm0
movsd qword [ebp - 0xa510], xmm1
jmp 0x45a9af
mov ecx, 1
test ecx, ecx
je 0x45a9ab
jmp 0x45aa6b
jmp 0x45a9d2
cvtsi2sd xmm0, dword [ebp - 0x137c]
movsd xmm1, qword [ebp - 0xa510]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1380], edx
jmp 0x45aa75
xor eax, eax
je 0x45a9dc
jmp 0x45a9eb
jmp 0x45a835
jmp 0x45a835
mov ecx, 2
test ecx, ecx
je 0x45aa6b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1384], eax
cvtsi2sd xmm0, dword [ebp - 0x1384]
mov eax, dword [ebp - 0x1384]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa510]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1380], ecx
jmp 0x45aa75
mov dword [ebp - 0x1380], 8
mov edx, dword [ebp - 0x1360]
shl edx, 2
add edx, dword [ebp - 0x135c]
mov eax, dword [ebp - 0x1380]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1360]
shl ecx, 2
add ecx, dword [ebp - 0x135c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1360]
add edx, 0xffffffb3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa528], xmm0
xor eax, eax
je 0x45aab7
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45aaf3
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa528]
movsd qword [ebp - 0xa530], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45ac93
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45ac93
mov dword [ebp - 0x1388], 0
jmp 0x45ab72
cmp dword [ebp - 0x1388], 0xf
jae 0x45ac8e
cvtsi2sd xmm0, dword [ebp - 0x1388]
movsd xmm1, qword [ebp - 0xa530]
addsd xmm1, xmm0
movsd qword [ebp - 0xa538], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa538]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45abe1
mov ecx, dword [ebp - 0x1388]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa530]
addsd xmm1, xmm0
movsd qword [ebp - 0xa530], xmm1
jmp 0x45aadd
cvtsi2sd xmm0, dword [ebp - 0x1388]
movsd xmm1, qword [ebp - 0xa530]
addsd xmm1, xmm0
movsd qword [ebp - 0xa540], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa540]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45ac3e
mov eax, dword [ebp - 0x1388]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa530]
addsd xmm1, xmm0
movsd qword [ebp - 0xa530], xmm1
jmp 0x45ac57
mov ecx, 1
test ecx, ecx
je 0x45ac53
jmp 0x45ad13
jmp 0x45ac7a
cvtsi2sd xmm0, dword [ebp - 0x1388]
movsd xmm1, qword [ebp - 0xa530]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x138c], edx
jmp 0x45ad1d
xor eax, eax
je 0x45ac84
jmp 0x45ac93
jmp 0x45aadd
jmp 0x45aadd
mov ecx, 2
test ecx, ecx
je 0x45ad13
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1390], eax
cvtsi2sd xmm0, dword [ebp - 0x1390]
mov eax, dword [ebp - 0x1390]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa530]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x138c], ecx
jmp 0x45ad1d
mov dword [ebp - 0x138c], 8
mov edx, dword [ebp - 0x1360]
add edx, 0xffffffb3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa548], xmm0
xor eax, eax
je 0x45ad37
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45ad73
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa548]
movsd qword [ebp - 0xa550], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45af13
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45af13
mov dword [ebp - 0x1394], 0
jmp 0x45adf2
cmp dword [ebp - 0x1394], 0xf
jae 0x45af0e
cvtsi2sd xmm0, dword [ebp - 0x1394]
movsd xmm1, qword [ebp - 0xa550]
addsd xmm1, xmm0
movsd qword [ebp - 0xa558], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa558]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45ae61
mov ecx, dword [ebp - 0x1394]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa550]
addsd xmm1, xmm0
movsd qword [ebp - 0xa550], xmm1
jmp 0x45ad5d
cvtsi2sd xmm0, dword [ebp - 0x1394]
movsd xmm1, qword [ebp - 0xa550]
addsd xmm1, xmm0
movsd qword [ebp - 0xa560], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa560]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45aebe
mov eax, dword [ebp - 0x1394]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa550]
addsd xmm1, xmm0
movsd qword [ebp - 0xa550], xmm1
jmp 0x45aed7
mov ecx, 1
test ecx, ecx
je 0x45aed3
jmp 0x45af93
jmp 0x45aefa
cvtsi2sd xmm0, dword [ebp - 0x1394]
movsd xmm1, qword [ebp - 0xa550]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1398], edx
jmp 0x45af9d
xor eax, eax
je 0x45af04
jmp 0x45af13
jmp 0x45ad5d
jmp 0x45ad5d
mov ecx, 2
test ecx, ecx
je 0x45af93
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x139c], eax
cvtsi2sd xmm0, dword [ebp - 0x139c]
mov eax, dword [ebp - 0x139c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa550]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1398], ecx
jmp 0x45af9d
mov dword [ebp - 0x1398], 8
mov edx, dword [ebp - 0x1360]
shl edx, 2
add edx, dword [ebp - 0x135c]
mov eax, dword [ebp - 0x138c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1360]
shl ecx, 2
add ecx, dword [ebp - 0x135c]
mov edx, dword [ebp - 0x1398]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1360]
shl ecx, 2
add ecx, dword [ebp - 0x135c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45b2ab
xor eax, eax
je 0x45b01d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45b059
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e40]
movsd qword [ebp - 0xa568], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45b1f9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45b1f9
mov dword [ebp - 0x13a0], 0
jmp 0x45b0d8
cmp dword [ebp - 0x13a0], 0xf
jae 0x45b1f4
cvtsi2sd xmm0, dword [ebp - 0x13a0]
movsd xmm1, qword [ebp - 0xa568]
addsd xmm1, xmm0
movsd qword [ebp - 0xa570], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa570]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45b147
mov ecx, dword [ebp - 0x13a0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa568]
addsd xmm1, xmm0
movsd qword [ebp - 0xa568], xmm1
jmp 0x45b043
cvtsi2sd xmm0, dword [ebp - 0x13a0]
movsd xmm1, qword [ebp - 0xa568]
addsd xmm1, xmm0
movsd qword [ebp - 0xa578], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa578]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45b1a4
mov eax, dword [ebp - 0x13a0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa568]
addsd xmm1, xmm0
movsd qword [ebp - 0xa568], xmm1
jmp 0x45b1bd
mov ecx, 1
test ecx, ecx
je 0x45b1b9
jmp 0x45b279
jmp 0x45b1e0
cvtsi2sd xmm0, dword [ebp - 0x13a0]
movsd xmm1, qword [ebp - 0xa568]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x13a4], edx
jmp 0x45b283
xor eax, eax
je 0x45b1ea
jmp 0x45b1f9
jmp 0x45b043
jmp 0x45b043
mov ecx, 2
test ecx, ecx
je 0x45b279
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x13a8], eax
cvtsi2sd xmm0, dword [ebp - 0x13a8]
mov eax, dword [ebp - 0x13a8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa568]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x13a4], ecx
jmp 0x45b283
mov dword [ebp - 0x13a4], 8
mov edx, dword [ebp - 0x1360]
shl edx, 2
add edx, dword [ebp - 0x135c]
mov eax, dword [ebp - 0x13a4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1360]
shl ecx, 2
add ecx, dword [ebp - 0x135c]
mov dword [ecx], eax
jmp 0x45a1db
mov edx, dword [ebp - 0x1358]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1358]
mov dword [ebp - 0x13ac], eax
mov ecx, dword [ebp - 0x13ac]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x13b0], ecx
mov edx, dword [ebp - 0x13b0]
mov dword [ebp - 0x13b4], edx
xor eax, eax
mov byte [ebp - 0x33], al
lea ecx, [ebp - 0x33]
call fcn.00425880
mov dword [ebp - 0x13b8], eax
mov ecx, dword [ebp - 0x13b8]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x45c3fb
mov eax, dword [ebp - 0x13b8]
mov dword [ebp - 0x13bc], eax
mov dword [ebp - 0x13c0], 0
jmp 0x45b335
mov ecx, dword [ebp - 0x13c0]
add ecx, 1
mov dword [ebp - 0x13c0], ecx
cmp dword [ebp - 0x13c0], 1
jae 0x45c3fb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45b60d
xor eax, eax
je 0x45b37f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45b3bb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e58]
movsd qword [ebp - 0xa580], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45b55b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45b55b
mov dword [ebp - 0x13c4], 0
jmp 0x45b43a
cmp dword [ebp - 0x13c4], 0xf
jae 0x45b556
cvtsi2sd xmm0, dword [ebp - 0x13c4]
movsd xmm1, qword [ebp - 0xa580]
addsd xmm1, xmm0
movsd qword [ebp - 0xa588], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa588]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45b4a9
mov ecx, dword [ebp - 0x13c4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa580]
addsd xmm1, xmm0
movsd qword [ebp - 0xa580], xmm1
jmp 0x45b3a5
cvtsi2sd xmm0, dword [ebp - 0x13c4]
movsd xmm1, qword [ebp - 0xa580]
addsd xmm1, xmm0
movsd qword [ebp - 0xa590], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa590]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45b506
mov eax, dword [ebp - 0x13c4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa580]
addsd xmm1, xmm0
movsd qword [ebp - 0xa580], xmm1
jmp 0x45b51f
mov ecx, 1
test ecx, ecx
je 0x45b51b
jmp 0x45b5db
jmp 0x45b542
cvtsi2sd xmm0, dword [ebp - 0x13c4]
movsd xmm1, qword [ebp - 0xa580]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x13c8], edx
jmp 0x45b5e5
xor eax, eax
je 0x45b54c
jmp 0x45b55b
jmp 0x45b3a5
jmp 0x45b3a5
mov ecx, 2
test ecx, ecx
je 0x45b5db
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x13cc], eax
cvtsi2sd xmm0, dword [ebp - 0x13cc]
mov eax, dword [ebp - 0x13cc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa580]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x13c8], ecx
jmp 0x45b5e5
mov dword [ebp - 0x13c8], 8
mov edx, dword [ebp - 0x13c0]
shl edx, 2
add edx, dword [ebp - 0x13bc]
mov eax, dword [ebp - 0x13c8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x13c0]
shl ecx, 2
add ecx, dword [ebp - 0x13bc]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45c12b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45b91d
xor eax, eax
je 0x45b68f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45b6cb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e50]
movsd qword [ebp - 0xa598], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45b86b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45b86b
mov dword [ebp - 0x13d0], 0
jmp 0x45b74a
cmp dword [ebp - 0x13d0], 0xf
jae 0x45b866
cvtsi2sd xmm0, dword [ebp - 0x13d0]
movsd xmm1, qword [ebp - 0xa598]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5a0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa5a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45b7b9
mov ecx, dword [ebp - 0x13d0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa598]
addsd xmm1, xmm0
movsd qword [ebp - 0xa598], xmm1
jmp 0x45b6b5
cvtsi2sd xmm0, dword [ebp - 0x13d0]
movsd xmm1, qword [ebp - 0xa598]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5a8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa5a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45b816
mov eax, dword [ebp - 0x13d0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa598]
addsd xmm1, xmm0
movsd qword [ebp - 0xa598], xmm1
jmp 0x45b82f
mov ecx, 1
test ecx, ecx
je 0x45b82b
jmp 0x45b8eb
jmp 0x45b852
cvtsi2sd xmm0, dword [ebp - 0x13d0]
movsd xmm1, qword [ebp - 0xa598]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x13d4], edx
jmp 0x45b8f5
xor eax, eax
je 0x45b85c
jmp 0x45b86b
jmp 0x45b6b5
jmp 0x45b6b5
mov ecx, 2
test ecx, ecx
je 0x45b8eb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x13d8], eax
cvtsi2sd xmm0, dword [ebp - 0x13d8]
mov eax, dword [ebp - 0x13d8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa598]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x13d4], ecx
jmp 0x45b8f5
mov dword [ebp - 0x13d4], 8
mov edx, dword [ebp - 0x13c0]
shl edx, 2
add edx, dword [ebp - 0x13bc]
mov eax, dword [ebp - 0x13d4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x13c0]
shl ecx, 2
add ecx, dword [ebp - 0x13bc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45bbe8
xor eax, eax
je 0x45b95a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45b996
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e48]
movsd qword [ebp - 0xa5b0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45bb36
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45bb36
mov dword [ebp - 0x13dc], 0
jmp 0x45ba15
cmp dword [ebp - 0x13dc], 0xf
jae 0x45bb31
cvtsi2sd xmm0, dword [ebp - 0x13dc]
movsd xmm1, qword [ebp - 0xa5b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa5b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45ba84
mov ecx, dword [ebp - 0x13dc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa5b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5b0], xmm1
jmp 0x45b980
cvtsi2sd xmm0, dword [ebp - 0x13dc]
movsd xmm1, qword [ebp - 0xa5b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa5c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45bae1
mov eax, dword [ebp - 0x13dc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa5b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5b0], xmm1
jmp 0x45bafa
mov ecx, 1
test ecx, ecx
je 0x45baf6
jmp 0x45bbb6
jmp 0x45bb1d
cvtsi2sd xmm0, dword [ebp - 0x13dc]
movsd xmm1, qword [ebp - 0xa5b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x13e0], edx
jmp 0x45bbc0
xor eax, eax
je 0x45bb27
jmp 0x45bb36
jmp 0x45b980
jmp 0x45b980
mov ecx, 2
test ecx, ecx
je 0x45bbb6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x13e4], eax
cvtsi2sd xmm0, dword [ebp - 0x13e4]
mov eax, dword [ebp - 0x13e4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa5b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x13e0], ecx
jmp 0x45bbc0
mov dword [ebp - 0x13e0], 8
mov edx, dword [ebp - 0x13c0]
shl edx, 2
add edx, dword [ebp - 0x13bc]
mov eax, dword [ebp - 0x13e0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x13c0]
shl ecx, 2
add ecx, dword [ebp - 0x13bc]
mov dword [ecx], eax
mov edx, dword [ebp - 0x13c0]
add edx, 0xffffffb3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa5c8], xmm0
xor eax, eax
je 0x45bc02
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45bc3e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa5c8]
movsd qword [ebp - 0xa5d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45bdde
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45bdde
mov dword [ebp - 0x13e8], 0
jmp 0x45bcbd
cmp dword [ebp - 0x13e8], 0xf
jae 0x45bdd9
cvtsi2sd xmm0, dword [ebp - 0x13e8]
movsd xmm1, qword [ebp - 0xa5d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa5d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45bd2c
mov ecx, dword [ebp - 0x13e8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa5d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5d0], xmm1
jmp 0x45bc28
cvtsi2sd xmm0, dword [ebp - 0x13e8]
movsd xmm1, qword [ebp - 0xa5d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa5e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45bd89
mov eax, dword [ebp - 0x13e8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa5d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5d0], xmm1
jmp 0x45bda2
mov ecx, 1
test ecx, ecx
je 0x45bd9e
jmp 0x45be5e
jmp 0x45bdc5
cvtsi2sd xmm0, dword [ebp - 0x13e8]
movsd xmm1, qword [ebp - 0xa5d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x13ec], edx
jmp 0x45be68
xor eax, eax
je 0x45bdcf
jmp 0x45bdde
jmp 0x45bc28
jmp 0x45bc28
mov ecx, 2
test ecx, ecx
je 0x45be5e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x13f0], eax
cvtsi2sd xmm0, dword [ebp - 0x13f0]
mov eax, dword [ebp - 0x13f0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa5d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x13ec], ecx
jmp 0x45be68
mov dword [ebp - 0x13ec], 8
mov edx, dword [ebp - 0x13c0]
add edx, 0xffffffb3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa5e8], xmm0
xor eax, eax
je 0x45be82
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45bebe
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa5e8]
movsd qword [ebp - 0xa5f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45c05e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45c05e
mov dword [ebp - 0x13f4], 0
jmp 0x45bf3d
cmp dword [ebp - 0x13f4], 0xf
jae 0x45c059
cvtsi2sd xmm0, dword [ebp - 0x13f4]
movsd xmm1, qword [ebp - 0xa5f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa5f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45bfac
mov ecx, dword [ebp - 0x13f4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa5f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5f0], xmm1
jmp 0x45bea8
cvtsi2sd xmm0, dword [ebp - 0x13f4]
movsd xmm1, qword [ebp - 0xa5f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa600], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa600]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45c009
mov eax, dword [ebp - 0x13f4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa5f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa5f0], xmm1
jmp 0x45c022
mov ecx, 1
test ecx, ecx
je 0x45c01e
jmp 0x45c0de
jmp 0x45c045
cvtsi2sd xmm0, dword [ebp - 0x13f4]
movsd xmm1, qword [ebp - 0xa5f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x13f8], edx
jmp 0x45c0e8
xor eax, eax
je 0x45c04f
jmp 0x45c05e
jmp 0x45bea8
jmp 0x45bea8
mov ecx, 2
test ecx, ecx
je 0x45c0de
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x13fc], eax
cvtsi2sd xmm0, dword [ebp - 0x13fc]
mov eax, dword [ebp - 0x13fc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa5f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x13f8], ecx
jmp 0x45c0e8
mov dword [ebp - 0x13f8], 8
mov edx, dword [ebp - 0x13c0]
shl edx, 2
add edx, dword [ebp - 0x13bc]
mov eax, dword [ebp - 0x13ec]
add eax, dword [edx]
mov ecx, dword [ebp - 0x13c0]
shl ecx, 2
add ecx, dword [ebp - 0x13bc]
mov edx, dword [ebp - 0x13f8]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x13c0]
shl ecx, 2
add ecx, dword [ebp - 0x13bc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45c3f6
xor eax, eax
je 0x45c168
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45c1a4
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e40]
movsd qword [ebp - 0xa608], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45c344
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45c344
mov dword [ebp - 0x1400], 0
jmp 0x45c223
cmp dword [ebp - 0x1400], 0xf
jae 0x45c33f
cvtsi2sd xmm0, dword [ebp - 0x1400]
movsd xmm1, qword [ebp - 0xa608]
addsd xmm1, xmm0
movsd qword [ebp - 0xa610], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa610]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45c292
mov ecx, dword [ebp - 0x1400]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa608]
addsd xmm1, xmm0
movsd qword [ebp - 0xa608], xmm1
jmp 0x45c18e
cvtsi2sd xmm0, dword [ebp - 0x1400]
movsd xmm1, qword [ebp - 0xa608]
addsd xmm1, xmm0
movsd qword [ebp - 0xa618], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa618]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45c2ef
mov eax, dword [ebp - 0x1400]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa608]
addsd xmm1, xmm0
movsd qword [ebp - 0xa608], xmm1
jmp 0x45c308
mov ecx, 1
test ecx, ecx
je 0x45c304
jmp 0x45c3c4
jmp 0x45c32b
cvtsi2sd xmm0, dword [ebp - 0x1400]
movsd xmm1, qword [ebp - 0xa608]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1404], edx
jmp 0x45c3ce
xor eax, eax
je 0x45c335
jmp 0x45c344
jmp 0x45c18e
jmp 0x45c18e
mov ecx, 2
test ecx, ecx
je 0x45c3c4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1408], eax
cvtsi2sd xmm0, dword [ebp - 0x1408]
mov eax, dword [ebp - 0x1408]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa608]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1404], ecx
jmp 0x45c3ce
mov dword [ebp - 0x1404], 8
mov edx, dword [ebp - 0x13c0]
shl edx, 2
add edx, dword [ebp - 0x13bc]
mov eax, dword [ebp - 0x1404]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x13c0]
shl ecx, 2
add ecx, dword [ebp - 0x13bc]
mov dword [ecx], eax
jmp 0x45b326
mov edx, dword [ebp - 0x13b8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x13b8]
mov dword [ebp - 0x140c], eax
mov ecx, dword [ebp - 0x140c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1410], ecx
mov edx, dword [ebp - 0x1410]
mov dword [ebp - 0x1414], edx
mov eax, dword [ebp - 0x13b4]
mov dword [ebp - 0x1354], eax
cmp dword [ebp - 0x1354], 0
je 0x45d598
xor ecx, ecx
mov byte [ebp - 0x34], cl
lea ecx, [ebp - 0x34]
call fcn.00425850
mov dword [ebp - 0x1418], eax
mov edx, dword [ebp - 0x1418]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x45d55f
mov ecx, dword [ebp - 0x1418]
mov dword [ebp - 0x141c], ecx
mov dword [ebp - 0x1420], 0
jmp 0x45c499
mov edx, dword [ebp - 0x1420]
add edx, 1
mov dword [ebp - 0x1420], edx
cmp dword [ebp - 0x1420], 1
jae 0x45d55f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45c771
xor eax, eax
je 0x45c4e3
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x45c51f
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e58]
movsd qword [ebp - 0xa620], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45c6bf
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45c6bf
mov dword [ebp - 0x1424], 0
jmp 0x45c59e
cmp dword [ebp - 0x1424], 0xf
jae 0x45c6ba
cvtsi2sd xmm0, dword [ebp - 0x1424]
movsd xmm1, qword [ebp - 0xa620]
addsd xmm1, xmm0
movsd qword [ebp - 0xa628], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa628]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45c60d
mov ecx, dword [ebp - 0x1424]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa620]
addsd xmm1, xmm0
movsd qword [ebp - 0xa620], xmm1
jmp 0x45c509
cvtsi2sd xmm0, dword [ebp - 0x1424]
movsd xmm1, qword [ebp - 0xa620]
addsd xmm1, xmm0
movsd qword [ebp - 0xa630], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa630]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45c66a
mov eax, dword [ebp - 0x1424]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa620]
addsd xmm1, xmm0
movsd qword [ebp - 0xa620], xmm1
jmp 0x45c683
mov ecx, 1
test ecx, ecx
je 0x45c67f
jmp 0x45c73f
jmp 0x45c6a6
cvtsi2sd xmm0, dword [ebp - 0x1424]
movsd xmm1, qword [ebp - 0xa620]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1428], edx
jmp 0x45c749
xor eax, eax
je 0x45c6b0
jmp 0x45c6bf
jmp 0x45c509
jmp 0x45c509
mov ecx, 2
test ecx, ecx
je 0x45c73f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x142c], eax
cvtsi2sd xmm0, dword [ebp - 0x142c]
mov eax, dword [ebp - 0x142c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa620]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1428], ecx
jmp 0x45c749
mov dword [ebp - 0x1428], 8
mov edx, dword [ebp - 0x1420]
shl edx, 2
add edx, dword [ebp - 0x141c]
mov eax, dword [ebp - 0x1428]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1420]
shl ecx, 2
add ecx, dword [ebp - 0x141c]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45d28f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45ca81
xor eax, eax
je 0x45c7f3
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45c82f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e50]
movsd qword [ebp - 0xa638], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45c9cf
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45c9cf
mov dword [ebp - 0x1430], 0
jmp 0x45c8ae
cmp dword [ebp - 0x1430], 0xf
jae 0x45c9ca
cvtsi2sd xmm0, dword [ebp - 0x1430]
movsd xmm1, qword [ebp - 0xa638]
addsd xmm1, xmm0
movsd qword [ebp - 0xa640], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa640]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45c91d
mov ecx, dword [ebp - 0x1430]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa638]
addsd xmm1, xmm0
movsd qword [ebp - 0xa638], xmm1
jmp 0x45c819
cvtsi2sd xmm0, dword [ebp - 0x1430]
movsd xmm1, qword [ebp - 0xa638]
addsd xmm1, xmm0
movsd qword [ebp - 0xa648], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa648]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45c97a
mov eax, dword [ebp - 0x1430]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa638]
addsd xmm1, xmm0
movsd qword [ebp - 0xa638], xmm1
jmp 0x45c993
mov ecx, 1
test ecx, ecx
je 0x45c98f
jmp 0x45ca4f
jmp 0x45c9b6
cvtsi2sd xmm0, dword [ebp - 0x1430]
movsd xmm1, qword [ebp - 0xa638]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1434], edx
jmp 0x45ca59
xor eax, eax
je 0x45c9c0
jmp 0x45c9cf
jmp 0x45c819
jmp 0x45c819
mov ecx, 2
test ecx, ecx
je 0x45ca4f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1438], eax
cvtsi2sd xmm0, dword [ebp - 0x1438]
mov eax, dword [ebp - 0x1438]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa638]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1434], ecx
jmp 0x45ca59
mov dword [ebp - 0x1434], 8
mov edx, dword [ebp - 0x1420]
shl edx, 2
add edx, dword [ebp - 0x141c]
mov eax, dword [ebp - 0x1434]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1420]
shl ecx, 2
add ecx, dword [ebp - 0x141c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45cd4c
xor eax, eax
je 0x45cabe
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45cafa
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e48]
movsd qword [ebp - 0xa650], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45cc9a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45cc9a
mov dword [ebp - 0x143c], 0
jmp 0x45cb79
cmp dword [ebp - 0x143c], 0xf
jae 0x45cc95
cvtsi2sd xmm0, dword [ebp - 0x143c]
movsd xmm1, qword [ebp - 0xa650]
addsd xmm1, xmm0
movsd qword [ebp - 0xa658], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa658]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45cbe8
mov ecx, dword [ebp - 0x143c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa650]
addsd xmm1, xmm0
movsd qword [ebp - 0xa650], xmm1
jmp 0x45cae4
cvtsi2sd xmm0, dword [ebp - 0x143c]
movsd xmm1, qword [ebp - 0xa650]
addsd xmm1, xmm0
movsd qword [ebp - 0xa660], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa660]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45cc45
mov eax, dword [ebp - 0x143c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa650]
addsd xmm1, xmm0
movsd qword [ebp - 0xa650], xmm1
jmp 0x45cc5e
mov ecx, 1
test ecx, ecx
je 0x45cc5a
jmp 0x45cd1a
jmp 0x45cc81
cvtsi2sd xmm0, dword [ebp - 0x143c]
movsd xmm1, qword [ebp - 0xa650]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1440], edx
jmp 0x45cd24
xor eax, eax
je 0x45cc8b
jmp 0x45cc9a
jmp 0x45cae4
jmp 0x45cae4
mov ecx, 2
test ecx, ecx
je 0x45cd1a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1444], eax
cvtsi2sd xmm0, dword [ebp - 0x1444]
mov eax, dword [ebp - 0x1444]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa650]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1440], ecx
jmp 0x45cd24
mov dword [ebp - 0x1440], 8
mov edx, dword [ebp - 0x1420]
shl edx, 2
add edx, dword [ebp - 0x141c]
mov eax, dword [ebp - 0x1440]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1420]
shl ecx, 2
add ecx, dword [ebp - 0x141c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1420]
add edx, 0xffffffb3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa668], xmm0
xor eax, eax
je 0x45cd66
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45cda2
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa668]
movsd qword [ebp - 0xa670], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45cf42
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45cf42
mov dword [ebp - 0x1448], 0
jmp 0x45ce21
cmp dword [ebp - 0x1448], 0xf
jae 0x45cf3d
cvtsi2sd xmm0, dword [ebp - 0x1448]
movsd xmm1, qword [ebp - 0xa670]
addsd xmm1, xmm0
movsd qword [ebp - 0xa678], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa678]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45ce90
mov ecx, dword [ebp - 0x1448]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa670]
addsd xmm1, xmm0
movsd qword [ebp - 0xa670], xmm1
jmp 0x45cd8c
cvtsi2sd xmm0, dword [ebp - 0x1448]
movsd xmm1, qword [ebp - 0xa670]
addsd xmm1, xmm0
movsd qword [ebp - 0xa680], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa680]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45ceed
mov eax, dword [ebp - 0x1448]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa670]
addsd xmm1, xmm0
movsd qword [ebp - 0xa670], xmm1
jmp 0x45cf06
mov ecx, 1
test ecx, ecx
je 0x45cf02
jmp 0x45cfc2
jmp 0x45cf29
cvtsi2sd xmm0, dword [ebp - 0x1448]
movsd xmm1, qword [ebp - 0xa670]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x144c], edx
jmp 0x45cfcc
xor eax, eax
je 0x45cf33
jmp 0x45cf42
jmp 0x45cd8c
jmp 0x45cd8c
mov ecx, 2
test ecx, ecx
je 0x45cfc2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1450], eax
cvtsi2sd xmm0, dword [ebp - 0x1450]
mov eax, dword [ebp - 0x1450]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa670]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x144c], ecx
jmp 0x45cfcc
mov dword [ebp - 0x144c], 8
mov edx, dword [ebp - 0x1420]
add edx, 0xffffffb3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa688], xmm0
xor eax, eax
je 0x45cfe6
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45d022
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa688]
movsd qword [ebp - 0xa690], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45d1c2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45d1c2
mov dword [ebp - 0x1454], 0
jmp 0x45d0a1
cmp dword [ebp - 0x1454], 0xf
jae 0x45d1bd
cvtsi2sd xmm0, dword [ebp - 0x1454]
movsd xmm1, qword [ebp - 0xa690]
addsd xmm1, xmm0
movsd qword [ebp - 0xa698], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa698]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45d110
mov ecx, dword [ebp - 0x1454]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa690]
addsd xmm1, xmm0
movsd qword [ebp - 0xa690], xmm1
jmp 0x45d00c
cvtsi2sd xmm0, dword [ebp - 0x1454]
movsd xmm1, qword [ebp - 0xa690]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa6a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45d16d
mov eax, dword [ebp - 0x1454]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa690]
addsd xmm1, xmm0
movsd qword [ebp - 0xa690], xmm1
jmp 0x45d186
mov ecx, 1
test ecx, ecx
je 0x45d182
jmp 0x45d242
jmp 0x45d1a9
cvtsi2sd xmm0, dword [ebp - 0x1454]
movsd xmm1, qword [ebp - 0xa690]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1458], edx
jmp 0x45d24c
xor eax, eax
je 0x45d1b3
jmp 0x45d1c2
jmp 0x45d00c
jmp 0x45d00c
mov ecx, 2
test ecx, ecx
je 0x45d242
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x145c], eax
cvtsi2sd xmm0, dword [ebp - 0x145c]
mov eax, dword [ebp - 0x145c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa690]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1458], ecx
jmp 0x45d24c
mov dword [ebp - 0x1458], 8
mov edx, dword [ebp - 0x1420]
shl edx, 2
add edx, dword [ebp - 0x141c]
mov eax, dword [ebp - 0x144c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1420]
shl ecx, 2
add ecx, dword [ebp - 0x141c]
mov edx, dword [ebp - 0x1458]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1420]
shl ecx, 2
add ecx, dword [ebp - 0x141c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45d55a
xor eax, eax
je 0x45d2cc
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45d308
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e40]
movsd qword [ebp - 0xa6a8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45d4a8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45d4a8
mov dword [ebp - 0x1460], 0
jmp 0x45d387
cmp dword [ebp - 0x1460], 0xf
jae 0x45d4a3
cvtsi2sd xmm0, dword [ebp - 0x1460]
movsd xmm1, qword [ebp - 0xa6a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6b0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa6b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45d3f6
mov ecx, dword [ebp - 0x1460]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa6a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6a8], xmm1
jmp 0x45d2f2
cvtsi2sd xmm0, dword [ebp - 0x1460]
movsd xmm1, qword [ebp - 0xa6a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6b8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa6b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45d453
mov eax, dword [ebp - 0x1460]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa6a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6a8], xmm1
jmp 0x45d46c
mov ecx, 1
test ecx, ecx
je 0x45d468
jmp 0x45d528
jmp 0x45d48f
cvtsi2sd xmm0, dword [ebp - 0x1460]
movsd xmm1, qword [ebp - 0xa6a8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1464], edx
jmp 0x45d532
xor eax, eax
je 0x45d499
jmp 0x45d4a8
jmp 0x45d2f2
jmp 0x45d2f2
mov ecx, 2
test ecx, ecx
je 0x45d528
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1468], eax
cvtsi2sd xmm0, dword [ebp - 0x1468]
mov eax, dword [ebp - 0x1468]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa6a8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1464], ecx
jmp 0x45d532
mov dword [ebp - 0x1464], 8
mov edx, dword [ebp - 0x1420]
shl edx, 2
add edx, dword [ebp - 0x141c]
mov eax, dword [ebp - 0x1464]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1420]
shl ecx, 2
add ecx, dword [ebp - 0x141c]
mov dword [ecx], eax
jmp 0x45c48a
mov edx, dword [ebp - 0x1418]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1418]
mov dword [ebp - 0x146c], eax
mov ecx, dword [ebp - 0x146c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1470], ecx
mov edx, dword [ebp - 0x1470]
mov dword [ebp - 0x1414], edx
xor eax, eax
mov byte [ebp - 0x35], al
lea ecx, [ebp - 0x35]
call fcn.00425820
mov dword [ebp - 0x1474], eax
mov ecx, dword [ebp - 0x1474]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x45e6aa
mov eax, dword [ebp - 0x1474]
mov dword [ebp - 0x1478], eax
mov dword [ebp - 0x147c], 0
jmp 0x45d5e4
mov ecx, dword [ebp - 0x147c]
add ecx, 1
mov dword [ebp - 0x147c], ecx
cmp dword [ebp - 0x147c], 1
jae 0x45e6aa
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45d8bc
xor eax, eax
je 0x45d62e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45d66a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e50]
movsd qword [ebp - 0xa6c0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45d80a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45d80a
mov dword [ebp - 0x1480], 0
jmp 0x45d6e9
cmp dword [ebp - 0x1480], 0xf
jae 0x45d805
cvtsi2sd xmm0, dword [ebp - 0x1480]
movsd xmm1, qword [ebp - 0xa6c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6c8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa6c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45d758
mov ecx, dword [ebp - 0x1480]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa6c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6c0], xmm1
jmp 0x45d654
cvtsi2sd xmm0, dword [ebp - 0x1480]
movsd xmm1, qword [ebp - 0xa6c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6d0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa6d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45d7b5
mov eax, dword [ebp - 0x1480]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa6c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6c0], xmm1
jmp 0x45d7ce
mov ecx, 1
test ecx, ecx
je 0x45d7ca
jmp 0x45d88a
jmp 0x45d7f1
cvtsi2sd xmm0, dword [ebp - 0x1480]
movsd xmm1, qword [ebp - 0xa6c0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1484], edx
jmp 0x45d894
xor eax, eax
je 0x45d7fb
jmp 0x45d80a
jmp 0x45d654
jmp 0x45d654
mov ecx, 2
test ecx, ecx
je 0x45d88a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1488], eax
cvtsi2sd xmm0, dword [ebp - 0x1488]
mov eax, dword [ebp - 0x1488]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa6c0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1484], ecx
jmp 0x45d894
mov dword [ebp - 0x1484], 8
mov edx, dword [ebp - 0x147c]
shl edx, 2
add edx, dword [ebp - 0x1478]
mov eax, dword [ebp - 0x1484]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x147c]
shl ecx, 2
add ecx, dword [ebp - 0x1478]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45e3da
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45dbcc
xor eax, eax
je 0x45d93e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45d97a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e48]
movsd qword [ebp - 0xa6d8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45db1a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45db1a
mov dword [ebp - 0x148c], 0
jmp 0x45d9f9
cmp dword [ebp - 0x148c], 0xf
jae 0x45db15
cvtsi2sd xmm0, dword [ebp - 0x148c]
movsd xmm1, qword [ebp - 0xa6d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6e0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa6e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45da68
mov ecx, dword [ebp - 0x148c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa6d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6d8], xmm1
jmp 0x45d964
cvtsi2sd xmm0, dword [ebp - 0x148c]
movsd xmm1, qword [ebp - 0xa6d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6e8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa6e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45dac5
mov eax, dword [ebp - 0x148c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa6d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6d8], xmm1
jmp 0x45dade
mov ecx, 1
test ecx, ecx
je 0x45dada
jmp 0x45db9a
jmp 0x45db01
cvtsi2sd xmm0, dword [ebp - 0x148c]
movsd xmm1, qword [ebp - 0xa6d8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1490], edx
jmp 0x45dba4
xor eax, eax
je 0x45db0b
jmp 0x45db1a
jmp 0x45d964
jmp 0x45d964
mov ecx, 2
test ecx, ecx
je 0x45db9a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1494], eax
cvtsi2sd xmm0, dword [ebp - 0x1494]
mov eax, dword [ebp - 0x1494]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa6d8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1490], ecx
jmp 0x45dba4
mov dword [ebp - 0x1490], 8
mov edx, dword [ebp - 0x147c]
shl edx, 2
add edx, dword [ebp - 0x1478]
mov eax, dword [ebp - 0x1490]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x147c]
shl ecx, 2
add ecx, dword [ebp - 0x1478]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45de97
xor eax, eax
je 0x45dc09
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45dc45
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e40]
movsd qword [ebp - 0xa6f0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45dde5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45dde5
mov dword [ebp - 0x1498], 0
jmp 0x45dcc4
cmp dword [ebp - 0x1498], 0xf
jae 0x45dde0
cvtsi2sd xmm0, dword [ebp - 0x1498]
movsd xmm1, qword [ebp - 0xa6f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa6f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45dd33
mov ecx, dword [ebp - 0x1498]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa6f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6f0], xmm1
jmp 0x45dc2f
cvtsi2sd xmm0, dword [ebp - 0x1498]
movsd xmm1, qword [ebp - 0xa6f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa700], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa700]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45dd90
mov eax, dword [ebp - 0x1498]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa6f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa6f0], xmm1
jmp 0x45dda9
mov ecx, 1
test ecx, ecx
je 0x45dda5
jmp 0x45de65
jmp 0x45ddcc
cvtsi2sd xmm0, dword [ebp - 0x1498]
movsd xmm1, qword [ebp - 0xa6f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x149c], edx
jmp 0x45de6f
xor eax, eax
je 0x45ddd6
jmp 0x45dde5
jmp 0x45dc2f
jmp 0x45dc2f
mov ecx, 2
test ecx, ecx
je 0x45de65
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x14a0], eax
cvtsi2sd xmm0, dword [ebp - 0x14a0]
mov eax, dword [ebp - 0x14a0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa6f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x149c], ecx
jmp 0x45de6f
mov dword [ebp - 0x149c], 8
mov edx, dword [ebp - 0x147c]
shl edx, 2
add edx, dword [ebp - 0x1478]
mov eax, dword [ebp - 0x149c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x147c]
shl ecx, 2
add ecx, dword [ebp - 0x1478]
mov dword [ecx], eax
mov edx, dword [ebp - 0x147c]
add edx, 0xffffffb4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa708], xmm0
xor eax, eax
je 0x45deb1
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45deed
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa708]
movsd qword [ebp - 0xa710], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45e08d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45e08d
mov dword [ebp - 0x14a4], 0
jmp 0x45df6c
cmp dword [ebp - 0x14a4], 0xf
jae 0x45e088
cvtsi2sd xmm0, dword [ebp - 0x14a4]
movsd xmm1, qword [ebp - 0xa710]
addsd xmm1, xmm0
movsd qword [ebp - 0xa718], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa718]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45dfdb
mov ecx, dword [ebp - 0x14a4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa710]
addsd xmm1, xmm0
movsd qword [ebp - 0xa710], xmm1
jmp 0x45ded7
cvtsi2sd xmm0, dword [ebp - 0x14a4]
movsd xmm1, qword [ebp - 0xa710]
addsd xmm1, xmm0
movsd qword [ebp - 0xa720], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa720]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45e038
mov eax, dword [ebp - 0x14a4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa710]
addsd xmm1, xmm0
movsd qword [ebp - 0xa710], xmm1
jmp 0x45e051
mov ecx, 1
test ecx, ecx
je 0x45e04d
jmp 0x45e10d
jmp 0x45e074
cvtsi2sd xmm0, dword [ebp - 0x14a4]
movsd xmm1, qword [ebp - 0xa710]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x14a8], edx
jmp 0x45e117
xor eax, eax
je 0x45e07e
jmp 0x45e08d
jmp 0x45ded7
jmp 0x45ded7
mov ecx, 2
test ecx, ecx
je 0x45e10d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x14ac], eax
cvtsi2sd xmm0, dword [ebp - 0x14ac]
mov eax, dword [ebp - 0x14ac]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa710]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x14a8], ecx
jmp 0x45e117
mov dword [ebp - 0x14a8], 8
mov edx, dword [ebp - 0x147c]
add edx, 0xffffffb4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa728], xmm0
xor eax, eax
je 0x45e131
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45e16d
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa728]
movsd qword [ebp - 0xa730], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45e30d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45e30d
mov dword [ebp - 0x14b0], 0
jmp 0x45e1ec
cmp dword [ebp - 0x14b0], 0xf
jae 0x45e308
cvtsi2sd xmm0, dword [ebp - 0x14b0]
movsd xmm1, qword [ebp - 0xa730]
addsd xmm1, xmm0
movsd qword [ebp - 0xa738], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa738]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45e25b
mov ecx, dword [ebp - 0x14b0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa730]
addsd xmm1, xmm0
movsd qword [ebp - 0xa730], xmm1
jmp 0x45e157
cvtsi2sd xmm0, dword [ebp - 0x14b0]
movsd xmm1, qword [ebp - 0xa730]
addsd xmm1, xmm0
movsd qword [ebp - 0xa740], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa740]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45e2b8
mov eax, dword [ebp - 0x14b0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa730]
addsd xmm1, xmm0
movsd qword [ebp - 0xa730], xmm1
jmp 0x45e2d1
mov ecx, 1
test ecx, ecx
je 0x45e2cd
jmp 0x45e38d
jmp 0x45e2f4
cvtsi2sd xmm0, dword [ebp - 0x14b0]
movsd xmm1, qword [ebp - 0xa730]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x14b4], edx
jmp 0x45e397
xor eax, eax
je 0x45e2fe
jmp 0x45e30d
jmp 0x45e157
jmp 0x45e157
mov ecx, 2
test ecx, ecx
je 0x45e38d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x14b8], eax
cvtsi2sd xmm0, dword [ebp - 0x14b8]
mov eax, dword [ebp - 0x14b8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa730]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x14b4], ecx
jmp 0x45e397
mov dword [ebp - 0x14b4], 8
mov edx, dword [ebp - 0x147c]
shl edx, 2
add edx, dword [ebp - 0x1478]
mov eax, dword [ebp - 0x14a8]
add eax, dword [edx]
mov ecx, dword [ebp - 0x147c]
shl ecx, 2
add ecx, dword [ebp - 0x1478]
mov edx, dword [ebp - 0x14b4]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x147c]
shl ecx, 2
add ecx, dword [ebp - 0x1478]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45e6a5
xor eax, eax
je 0x45e417
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45e453
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e38]
movsd qword [ebp - 0xa748], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45e5f3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45e5f3
mov dword [ebp - 0x14bc], 0
jmp 0x45e4d2
cmp dword [ebp - 0x14bc], 0xf
jae 0x45e5ee
cvtsi2sd xmm0, dword [ebp - 0x14bc]
movsd xmm1, qword [ebp - 0xa748]
addsd xmm1, xmm0
movsd qword [ebp - 0xa750], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa750]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45e541
mov ecx, dword [ebp - 0x14bc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa748]
addsd xmm1, xmm0
movsd qword [ebp - 0xa748], xmm1
jmp 0x45e43d
cvtsi2sd xmm0, dword [ebp - 0x14bc]
movsd xmm1, qword [ebp - 0xa748]
addsd xmm1, xmm0
movsd qword [ebp - 0xa758], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa758]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45e59e
mov eax, dword [ebp - 0x14bc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa748]
addsd xmm1, xmm0
movsd qword [ebp - 0xa748], xmm1
jmp 0x45e5b7
mov ecx, 1
test ecx, ecx
je 0x45e5b3
jmp 0x45e673
jmp 0x45e5da
cvtsi2sd xmm0, dword [ebp - 0x14bc]
movsd xmm1, qword [ebp - 0xa748]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x14c0], edx
jmp 0x45e67d
xor eax, eax
je 0x45e5e4
jmp 0x45e5f3
jmp 0x45e43d
jmp 0x45e43d
mov ecx, 2
test ecx, ecx
je 0x45e673
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x14c4], eax
cvtsi2sd xmm0, dword [ebp - 0x14c4]
mov eax, dword [ebp - 0x14c4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa748]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x14c0], ecx
jmp 0x45e67d
mov dword [ebp - 0x14c0], 8
mov edx, dword [ebp - 0x147c]
shl edx, 2
add edx, dword [ebp - 0x1478]
mov eax, dword [ebp - 0x14c0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x147c]
shl ecx, 2
add ecx, dword [ebp - 0x1478]
mov dword [ecx], eax
jmp 0x45d5d5
mov edx, dword [ebp - 0x1474]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1474]
mov dword [ebp - 0x14c8], eax
mov ecx, dword [ebp - 0x14c8]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x14cc], ecx
mov edx, dword [ebp - 0x14cc]
mov dword [ebp - 0x14d0], edx
xor eax, eax
mov byte [ebp - 0x36], al
lea ecx, [ebp - 0x36]
call fcn.004257f0
mov dword [ebp - 0x14d4], eax
mov ecx, dword [ebp - 0x14d4]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x45f7f5
mov eax, dword [ebp - 0x14d4]
mov dword [ebp - 0x14d8], eax
mov dword [ebp - 0x14dc], 0
jmp 0x45e72f
mov ecx, dword [ebp - 0x14dc]
add ecx, 1
mov dword [ebp - 0x14dc], ecx
cmp dword [ebp - 0x14dc], 1
jae 0x45f7f5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45ea07
xor eax, eax
je 0x45e779
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45e7b5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e50]
movsd qword [ebp - 0xa760], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45e955
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45e955
mov dword [ebp - 0x14e0], 0
jmp 0x45e834
cmp dword [ebp - 0x14e0], 0xf
jae 0x45e950
cvtsi2sd xmm0, dword [ebp - 0x14e0]
movsd xmm1, qword [ebp - 0xa760]
addsd xmm1, xmm0
movsd qword [ebp - 0xa768], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa768]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45e8a3
mov ecx, dword [ebp - 0x14e0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa760]
addsd xmm1, xmm0
movsd qword [ebp - 0xa760], xmm1
jmp 0x45e79f
cvtsi2sd xmm0, dword [ebp - 0x14e0]
movsd xmm1, qword [ebp - 0xa760]
addsd xmm1, xmm0
movsd qword [ebp - 0xa770], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa770]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45e900
mov eax, dword [ebp - 0x14e0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa760]
addsd xmm1, xmm0
movsd qword [ebp - 0xa760], xmm1
jmp 0x45e919
mov ecx, 1
test ecx, ecx
je 0x45e915
jmp 0x45e9d5
jmp 0x45e93c
cvtsi2sd xmm0, dword [ebp - 0x14e0]
movsd xmm1, qword [ebp - 0xa760]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x14e4], edx
jmp 0x45e9df
xor eax, eax
je 0x45e946
jmp 0x45e955
jmp 0x45e79f
jmp 0x45e79f
mov ecx, 2
test ecx, ecx
je 0x45e9d5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x14e8], eax
cvtsi2sd xmm0, dword [ebp - 0x14e8]
mov eax, dword [ebp - 0x14e8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa760]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x14e4], ecx
jmp 0x45e9df
mov dword [ebp - 0x14e4], 8
mov edx, dword [ebp - 0x14dc]
shl edx, 2
add edx, dword [ebp - 0x14d8]
mov eax, dword [ebp - 0x14e4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x14dc]
shl ecx, 2
add ecx, dword [ebp - 0x14d8]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45f525
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45ed17
xor eax, eax
je 0x45ea89
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45eac5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e48]
movsd qword [ebp - 0xa778], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45ec65
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45ec65
mov dword [ebp - 0x14ec], 0
jmp 0x45eb44
cmp dword [ebp - 0x14ec], 0xf
jae 0x45ec60
cvtsi2sd xmm0, dword [ebp - 0x14ec]
movsd xmm1, qword [ebp - 0xa778]
addsd xmm1, xmm0
movsd qword [ebp - 0xa780], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa780]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45ebb3
mov ecx, dword [ebp - 0x14ec]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa778]
addsd xmm1, xmm0
movsd qword [ebp - 0xa778], xmm1
jmp 0x45eaaf
cvtsi2sd xmm0, dword [ebp - 0x14ec]
movsd xmm1, qword [ebp - 0xa778]
addsd xmm1, xmm0
movsd qword [ebp - 0xa788], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa788]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45ec10
mov eax, dword [ebp - 0x14ec]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa778]
addsd xmm1, xmm0
movsd qword [ebp - 0xa778], xmm1
jmp 0x45ec29
mov ecx, 1
test ecx, ecx
je 0x45ec25
jmp 0x45ece5
jmp 0x45ec4c
cvtsi2sd xmm0, dword [ebp - 0x14ec]
movsd xmm1, qword [ebp - 0xa778]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x14f0], edx
jmp 0x45ecef
xor eax, eax
je 0x45ec56
jmp 0x45ec65
jmp 0x45eaaf
jmp 0x45eaaf
mov ecx, 2
test ecx, ecx
je 0x45ece5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x14f4], eax
cvtsi2sd xmm0, dword [ebp - 0x14f4]
mov eax, dword [ebp - 0x14f4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa778]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x14f0], ecx
jmp 0x45ecef
mov dword [ebp - 0x14f0], 8
mov edx, dword [ebp - 0x14dc]
shl edx, 2
add edx, dword [ebp - 0x14d8]
mov eax, dword [ebp - 0x14f0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x14dc]
shl ecx, 2
add ecx, dword [ebp - 0x14d8]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45efe2
xor eax, eax
je 0x45ed54
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45ed90
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e40]
movsd qword [ebp - 0xa790], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45ef30
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45ef30
mov dword [ebp - 0x14f8], 0
jmp 0x45ee0f
cmp dword [ebp - 0x14f8], 0xf
jae 0x45ef2b
cvtsi2sd xmm0, dword [ebp - 0x14f8]
movsd xmm1, qword [ebp - 0xa790]
addsd xmm1, xmm0
movsd qword [ebp - 0xa798], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa798]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45ee7e
mov ecx, dword [ebp - 0x14f8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa790]
addsd xmm1, xmm0
movsd qword [ebp - 0xa790], xmm1
jmp 0x45ed7a
cvtsi2sd xmm0, dword [ebp - 0x14f8]
movsd xmm1, qword [ebp - 0xa790]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa7a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45eedb
mov eax, dword [ebp - 0x14f8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa790]
addsd xmm1, xmm0
movsd qword [ebp - 0xa790], xmm1
jmp 0x45eef4
mov ecx, 1
test ecx, ecx
je 0x45eef0
jmp 0x45efb0
jmp 0x45ef17
cvtsi2sd xmm0, dword [ebp - 0x14f8]
movsd xmm1, qword [ebp - 0xa790]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x14fc], edx
jmp 0x45efba
xor eax, eax
je 0x45ef21
jmp 0x45ef30
jmp 0x45ed7a
jmp 0x45ed7a
mov ecx, 2
test ecx, ecx
je 0x45efb0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1500], eax
cvtsi2sd xmm0, dword [ebp - 0x1500]
mov eax, dword [ebp - 0x1500]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa790]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x14fc], ecx
jmp 0x45efba
mov dword [ebp - 0x14fc], 8
mov edx, dword [ebp - 0x14dc]
shl edx, 2
add edx, dword [ebp - 0x14d8]
mov eax, dword [ebp - 0x14fc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x14dc]
shl ecx, 2
add ecx, dword [ebp - 0x14d8]
mov dword [ecx], eax
mov edx, dword [ebp - 0x14dc]
add edx, 0xffffffb4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa7a8], xmm0
xor eax, eax
je 0x45effc
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45f038
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa7a8]
movsd qword [ebp - 0xa7b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45f1d8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45f1d8
mov dword [ebp - 0x1504], 0
jmp 0x45f0b7
cmp dword [ebp - 0x1504], 0xf
jae 0x45f1d3
cvtsi2sd xmm0, dword [ebp - 0x1504]
movsd xmm1, qword [ebp - 0xa7b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa7b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45f126
mov ecx, dword [ebp - 0x1504]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa7b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7b0], xmm1
jmp 0x45f022
cvtsi2sd xmm0, dword [ebp - 0x1504]
movsd xmm1, qword [ebp - 0xa7b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa7c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45f183
mov eax, dword [ebp - 0x1504]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa7b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7b0], xmm1
jmp 0x45f19c
mov ecx, 1
test ecx, ecx
je 0x45f198
jmp 0x45f258
jmp 0x45f1bf
cvtsi2sd xmm0, dword [ebp - 0x1504]
movsd xmm1, qword [ebp - 0xa7b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1508], edx
jmp 0x45f262
xor eax, eax
je 0x45f1c9
jmp 0x45f1d8
jmp 0x45f022
jmp 0x45f022
mov ecx, 2
test ecx, ecx
je 0x45f258
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x150c], eax
cvtsi2sd xmm0, dword [ebp - 0x150c]
mov eax, dword [ebp - 0x150c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa7b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1508], ecx
jmp 0x45f262
mov dword [ebp - 0x1508], 8
mov edx, dword [ebp - 0x14dc]
add edx, 0xffffffb4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa7c8], xmm0
xor eax, eax
je 0x45f27c
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x45f2b8
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa7c8]
movsd qword [ebp - 0xa7d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45f458
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45f458
mov dword [ebp - 0x1510], 0
jmp 0x45f337
cmp dword [ebp - 0x1510], 0xf
jae 0x45f453
cvtsi2sd xmm0, dword [ebp - 0x1510]
movsd xmm1, qword [ebp - 0xa7d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa7d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45f3a6
mov ecx, dword [ebp - 0x1510]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa7d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7d0], xmm1
jmp 0x45f2a2
cvtsi2sd xmm0, dword [ebp - 0x1510]
movsd xmm1, qword [ebp - 0xa7d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa7e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45f403
mov eax, dword [ebp - 0x1510]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa7d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7d0], xmm1
jmp 0x45f41c
mov ecx, 1
test ecx, ecx
je 0x45f418
jmp 0x45f4d8
jmp 0x45f43f
cvtsi2sd xmm0, dword [ebp - 0x1510]
movsd xmm1, qword [ebp - 0xa7d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1514], edx
jmp 0x45f4e2
xor eax, eax
je 0x45f449
jmp 0x45f458
jmp 0x45f2a2
jmp 0x45f2a2
mov ecx, 2
test ecx, ecx
je 0x45f4d8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1518], eax
cvtsi2sd xmm0, dword [ebp - 0x1518]
mov eax, dword [ebp - 0x1518]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa7d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1514], ecx
jmp 0x45f4e2
mov dword [ebp - 0x1514], 8
mov edx, dword [ebp - 0x14dc]
shl edx, 2
add edx, dword [ebp - 0x14d8]
mov eax, dword [ebp - 0x1508]
add eax, dword [edx]
mov ecx, dword [ebp - 0x14dc]
shl ecx, 2
add ecx, dword [ebp - 0x14d8]
mov edx, dword [ebp - 0x1514]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x14dc]
shl ecx, 2
add ecx, dword [ebp - 0x14d8]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45f7f0
xor eax, eax
je 0x45f562
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45f59e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e38]
movsd qword [ebp - 0xa7e8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45f73e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45f73e
mov dword [ebp - 0x151c], 0
jmp 0x45f61d
cmp dword [ebp - 0x151c], 0xf
jae 0x45f739
cvtsi2sd xmm0, dword [ebp - 0x151c]
movsd xmm1, qword [ebp - 0xa7e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7f0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa7f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45f68c
mov ecx, dword [ebp - 0x151c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa7e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7e8], xmm1
jmp 0x45f588
cvtsi2sd xmm0, dword [ebp - 0x151c]
movsd xmm1, qword [ebp - 0xa7e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7f8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa7f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45f6e9
mov eax, dword [ebp - 0x151c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa7e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa7e8], xmm1
jmp 0x45f702
mov ecx, 1
test ecx, ecx
je 0x45f6fe
jmp 0x45f7be
jmp 0x45f725
cvtsi2sd xmm0, dword [ebp - 0x151c]
movsd xmm1, qword [ebp - 0xa7e8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1520], edx
jmp 0x45f7c8
xor eax, eax
je 0x45f72f
jmp 0x45f73e
jmp 0x45f588
jmp 0x45f588
mov ecx, 2
test ecx, ecx
je 0x45f7be
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1524], eax
cvtsi2sd xmm0, dword [ebp - 0x1524]
mov eax, dword [ebp - 0x1524]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa7e8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1520], ecx
jmp 0x45f7c8
mov dword [ebp - 0x1520], 8
mov edx, dword [ebp - 0x14dc]
shl edx, 2
add edx, dword [ebp - 0x14d8]
mov eax, dword [ebp - 0x1520]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x14dc]
shl ecx, 2
add ecx, dword [ebp - 0x14d8]
mov dword [ecx], eax
jmp 0x45e720
mov edx, dword [ebp - 0x14d4]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x14d4]
mov dword [ebp - 0x1528], eax
mov ecx, dword [ebp - 0x1528]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x152c], ecx
mov edx, dword [ebp - 0x152c]
mov dword [ebp - 0x1530], edx
xor eax, eax
mov byte [ebp - 0x37], al
lea ecx, [ebp - 0x37]
call fcn.004257c0
mov dword [ebp - 0x1534], eax
mov ecx, dword [ebp - 0x1534]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x460940
mov eax, dword [ebp - 0x1534]
mov dword [ebp - 0x1538], eax
mov dword [ebp - 0x153c], 0
jmp 0x45f87a
mov ecx, dword [ebp - 0x153c]
add ecx, 1
mov dword [ebp - 0x153c], ecx
cmp dword [ebp - 0x153c], 1
jae 0x460940
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45fb52
xor eax, eax
je 0x45f8c4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45f900
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e48]
movsd qword [ebp - 0xa800], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45faa0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45faa0
mov dword [ebp - 0x1540], 0
jmp 0x45f97f
cmp dword [ebp - 0x1540], 0xf
jae 0x45fa9b
cvtsi2sd xmm0, dword [ebp - 0x1540]
movsd xmm1, qword [ebp - 0xa800]
addsd xmm1, xmm0
movsd qword [ebp - 0xa808], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa808]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45f9ee
mov ecx, dword [ebp - 0x1540]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa800]
addsd xmm1, xmm0
movsd qword [ebp - 0xa800], xmm1
jmp 0x45f8ea
cvtsi2sd xmm0, dword [ebp - 0x1540]
movsd xmm1, qword [ebp - 0xa800]
addsd xmm1, xmm0
movsd qword [ebp - 0xa810], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa810]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45fa4b
mov eax, dword [ebp - 0x1540]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa800]
addsd xmm1, xmm0
movsd qword [ebp - 0xa800], xmm1
jmp 0x45fa64
mov ecx, 1
test ecx, ecx
je 0x45fa60
jmp 0x45fb20
jmp 0x45fa87
cvtsi2sd xmm0, dword [ebp - 0x1540]
movsd xmm1, qword [ebp - 0xa800]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1544], edx
jmp 0x45fb2a
xor eax, eax
je 0x45fa91
jmp 0x45faa0
jmp 0x45f8ea
jmp 0x45f8ea
mov ecx, 2
test ecx, ecx
je 0x45fb20
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1548], eax
cvtsi2sd xmm0, dword [ebp - 0x1548]
mov eax, dword [ebp - 0x1548]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa800]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1544], ecx
jmp 0x45fb2a
mov dword [ebp - 0x1544], 8
mov edx, dword [ebp - 0x153c]
shl edx, 2
add edx, dword [ebp - 0x1538]
mov eax, dword [ebp - 0x1544]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x153c]
shl ecx, 2
add ecx, dword [ebp - 0x1538]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x460670
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x45fe62
xor eax, eax
je 0x45fbd4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45fc10
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e40]
movsd qword [ebp - 0xa818], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x45fdb0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x45fdb0
mov dword [ebp - 0x154c], 0
jmp 0x45fc8f
cmp dword [ebp - 0x154c], 0xf
jae 0x45fdab
cvtsi2sd xmm0, dword [ebp - 0x154c]
movsd xmm1, qword [ebp - 0xa818]
addsd xmm1, xmm0
movsd qword [ebp - 0xa820], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa820]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45fcfe
mov ecx, dword [ebp - 0x154c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa818]
addsd xmm1, xmm0
movsd qword [ebp - 0xa818], xmm1
jmp 0x45fbfa
cvtsi2sd xmm0, dword [ebp - 0x154c]
movsd xmm1, qword [ebp - 0xa818]
addsd xmm1, xmm0
movsd qword [ebp - 0xa828], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa828]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45fd5b
mov eax, dword [ebp - 0x154c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa818]
addsd xmm1, xmm0
movsd qword [ebp - 0xa818], xmm1
jmp 0x45fd74
mov ecx, 1
test ecx, ecx
je 0x45fd70
jmp 0x45fe30
jmp 0x45fd97
cvtsi2sd xmm0, dword [ebp - 0x154c]
movsd xmm1, qword [ebp - 0xa818]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1550], edx
jmp 0x45fe3a
xor eax, eax
je 0x45fda1
jmp 0x45fdb0
jmp 0x45fbfa
jmp 0x45fbfa
mov ecx, 2
test ecx, ecx
je 0x45fe30
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1554], eax
cvtsi2sd xmm0, dword [ebp - 0x1554]
mov eax, dword [ebp - 0x1554]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa818]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1550], ecx
jmp 0x45fe3a
mov dword [ebp - 0x1550], 8
mov edx, dword [ebp - 0x153c]
shl edx, 2
add edx, dword [ebp - 0x1538]
mov eax, dword [ebp - 0x1550]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x153c]
shl ecx, 2
add ecx, dword [ebp - 0x1538]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46012d
xor eax, eax
je 0x45fe9f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x45fedb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e38]
movsd qword [ebp - 0xa830], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46007b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46007b
mov dword [ebp - 0x1558], 0
jmp 0x45ff5a
cmp dword [ebp - 0x1558], 0xf
jae 0x460076
cvtsi2sd xmm0, dword [ebp - 0x1558]
movsd xmm1, qword [ebp - 0xa830]
addsd xmm1, xmm0
movsd qword [ebp - 0xa838], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa838]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x45ffc9
mov ecx, dword [ebp - 0x1558]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa830]
addsd xmm1, xmm0
movsd qword [ebp - 0xa830], xmm1
jmp 0x45fec5
cvtsi2sd xmm0, dword [ebp - 0x1558]
movsd xmm1, qword [ebp - 0xa830]
addsd xmm1, xmm0
movsd qword [ebp - 0xa840], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa840]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x460026
mov eax, dword [ebp - 0x1558]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa830]
addsd xmm1, xmm0
movsd qword [ebp - 0xa830], xmm1
jmp 0x46003f
mov ecx, 1
test ecx, ecx
je 0x46003b
jmp 0x4600fb
jmp 0x460062
cvtsi2sd xmm0, dword [ebp - 0x1558]
movsd xmm1, qword [ebp - 0xa830]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x155c], edx
jmp 0x460105
xor eax, eax
je 0x46006c
jmp 0x46007b
jmp 0x45fec5
jmp 0x45fec5
mov ecx, 2
test ecx, ecx
je 0x4600fb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1560], eax
cvtsi2sd xmm0, dword [ebp - 0x1560]
mov eax, dword [ebp - 0x1560]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa830]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x155c], ecx
jmp 0x460105
mov dword [ebp - 0x155c], 8
mov edx, dword [ebp - 0x153c]
shl edx, 2
add edx, dword [ebp - 0x1538]
mov eax, dword [ebp - 0x155c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x153c]
shl ecx, 2
add ecx, dword [ebp - 0x1538]
mov dword [ecx], eax
mov edx, dword [ebp - 0x153c]
add edx, 0xffffffb5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa848], xmm0
xor eax, eax
je 0x460147
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x460183
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa848]
movsd qword [ebp - 0xa850], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x460323
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x460323
mov dword [ebp - 0x1564], 0
jmp 0x460202
cmp dword [ebp - 0x1564], 0xf
jae 0x46031e
cvtsi2sd xmm0, dword [ebp - 0x1564]
movsd xmm1, qword [ebp - 0xa850]
addsd xmm1, xmm0
movsd qword [ebp - 0xa858], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa858]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x460271
mov ecx, dword [ebp - 0x1564]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa850]
addsd xmm1, xmm0
movsd qword [ebp - 0xa850], xmm1
jmp 0x46016d
cvtsi2sd xmm0, dword [ebp - 0x1564]
movsd xmm1, qword [ebp - 0xa850]
addsd xmm1, xmm0
movsd qword [ebp - 0xa860], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa860]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4602ce
mov eax, dword [ebp - 0x1564]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa850]
addsd xmm1, xmm0
movsd qword [ebp - 0xa850], xmm1
jmp 0x4602e7
mov ecx, 1
test ecx, ecx
je 0x4602e3
jmp 0x4603a3
jmp 0x46030a
cvtsi2sd xmm0, dword [ebp - 0x1564]
movsd xmm1, qword [ebp - 0xa850]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1568], edx
jmp 0x4603ad
xor eax, eax
je 0x460314
jmp 0x460323
jmp 0x46016d
jmp 0x46016d
mov ecx, 2
test ecx, ecx
je 0x4603a3
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x156c], eax
cvtsi2sd xmm0, dword [ebp - 0x156c]
mov eax, dword [ebp - 0x156c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa850]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1568], ecx
jmp 0x4603ad
mov dword [ebp - 0x1568], 8
mov edx, dword [ebp - 0x153c]
add edx, 0xffffffb5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa868], xmm0
xor eax, eax
je 0x4603c7
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x460403
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa868]
movsd qword [ebp - 0xa870], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4605a3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4605a3
mov dword [ebp - 0x1570], 0
jmp 0x460482
cmp dword [ebp - 0x1570], 0xf
jae 0x46059e
cvtsi2sd xmm0, dword [ebp - 0x1570]
movsd xmm1, qword [ebp - 0xa870]
addsd xmm1, xmm0
movsd qword [ebp - 0xa878], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa878]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4604f1
mov ecx, dword [ebp - 0x1570]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa870]
addsd xmm1, xmm0
movsd qword [ebp - 0xa870], xmm1
jmp 0x4603ed
cvtsi2sd xmm0, dword [ebp - 0x1570]
movsd xmm1, qword [ebp - 0xa870]
addsd xmm1, xmm0
movsd qword [ebp - 0xa880], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa880]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46054e
mov eax, dword [ebp - 0x1570]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa870]
addsd xmm1, xmm0
movsd qword [ebp - 0xa870], xmm1
jmp 0x460567
mov ecx, 1
test ecx, ecx
je 0x460563
jmp 0x460623
jmp 0x46058a
cvtsi2sd xmm0, dword [ebp - 0x1570]
movsd xmm1, qword [ebp - 0xa870]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1574], edx
jmp 0x46062d
xor eax, eax
je 0x460594
jmp 0x4605a3
jmp 0x4603ed
jmp 0x4603ed
mov ecx, 2
test ecx, ecx
je 0x460623
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1578], eax
cvtsi2sd xmm0, dword [ebp - 0x1578]
mov eax, dword [ebp - 0x1578]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa870]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1574], ecx
jmp 0x46062d
mov dword [ebp - 0x1574], 8
mov edx, dword [ebp - 0x153c]
shl edx, 2
add edx, dword [ebp - 0x1538]
mov eax, dword [ebp - 0x1568]
add eax, dword [edx]
mov ecx, dword [ebp - 0x153c]
shl ecx, 2
add ecx, dword [ebp - 0x1538]
mov edx, dword [ebp - 0x1574]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x153c]
shl ecx, 2
add ecx, dword [ebp - 0x1538]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46093b
xor eax, eax
je 0x4606ad
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4606e9
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e30]
movsd qword [ebp - 0xa888], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x460889
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x460889
mov dword [ebp - 0x157c], 0
jmp 0x460768
cmp dword [ebp - 0x157c], 0xf
jae 0x460884
cvtsi2sd xmm0, dword [ebp - 0x157c]
movsd xmm1, qword [ebp - 0xa888]
addsd xmm1, xmm0
movsd qword [ebp - 0xa890], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa890]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4607d7
mov ecx, dword [ebp - 0x157c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa888]
addsd xmm1, xmm0
movsd qword [ebp - 0xa888], xmm1
jmp 0x4606d3
cvtsi2sd xmm0, dword [ebp - 0x157c]
movsd xmm1, qword [ebp - 0xa888]
addsd xmm1, xmm0
movsd qword [ebp - 0xa898], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa898]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x460834
mov eax, dword [ebp - 0x157c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa888]
addsd xmm1, xmm0
movsd qword [ebp - 0xa888], xmm1
jmp 0x46084d
mov ecx, 1
test ecx, ecx
je 0x460849
jmp 0x460909
jmp 0x460870
cvtsi2sd xmm0, dword [ebp - 0x157c]
movsd xmm1, qword [ebp - 0xa888]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1580], edx
jmp 0x460913
xor eax, eax
je 0x46087a
jmp 0x460889
jmp 0x4606d3
jmp 0x4606d3
mov ecx, 2
test ecx, ecx
je 0x460909
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1584], eax
cvtsi2sd xmm0, dword [ebp - 0x1584]
mov eax, dword [ebp - 0x1584]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa888]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1580], ecx
jmp 0x460913
mov dword [ebp - 0x1580], 8
mov edx, dword [ebp - 0x153c]
shl edx, 2
add edx, dword [ebp - 0x1538]
mov eax, dword [ebp - 0x1580]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x153c]
shl ecx, 2
add ecx, dword [ebp - 0x1538]
mov dword [ecx], eax
jmp 0x45f86b
mov edx, dword [ebp - 0x1534]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1534]
mov dword [ebp - 0x1588], eax
mov ecx, dword [ebp - 0x1588]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x158c], ecx
mov edx, dword [ebp - 0x158c]
mov dword [ebp - 0x1590], edx
mov eax, dword [ebp - 0x1530]
mov dword [ebp - 0x14d0], eax
cmp dword [ebp - 0x14d0], 0
je 0x461add
xor ecx, ecx
mov byte [ebp - 0x38], cl
lea ecx, [ebp - 0x38]
call fcn.00425790
mov dword [ebp - 0x1594], eax
mov edx, dword [ebp - 0x1594]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x461aa4
mov ecx, dword [ebp - 0x1594]
mov dword [ebp - 0x1598], ecx
mov dword [ebp - 0x159c], 0
jmp 0x4609de
mov edx, dword [ebp - 0x159c]
add edx, 1
mov dword [ebp - 0x159c], edx
cmp dword [ebp - 0x159c], 1
jae 0x461aa4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x460cb6
xor eax, eax
je 0x460a28
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x460a64
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e48]
movsd qword [ebp - 0xa8a0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x460c04
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x460c04
mov dword [ebp - 0x15a0], 0
jmp 0x460ae3
cmp dword [ebp - 0x15a0], 0xf
jae 0x460bff
cvtsi2sd xmm0, dword [ebp - 0x15a0]
movsd xmm1, qword [ebp - 0xa8a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8a8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa8a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x460b52
mov ecx, dword [ebp - 0x15a0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa8a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8a0], xmm1
jmp 0x460a4e
cvtsi2sd xmm0, dword [ebp - 0x15a0]
movsd xmm1, qword [ebp - 0xa8a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8b0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa8b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x460baf
mov eax, dword [ebp - 0x15a0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa8a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8a0], xmm1
jmp 0x460bc8
mov ecx, 1
test ecx, ecx
je 0x460bc4
jmp 0x460c84
jmp 0x460beb
cvtsi2sd xmm0, dword [ebp - 0x15a0]
movsd xmm1, qword [ebp - 0xa8a0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x15a4], edx
jmp 0x460c8e
xor eax, eax
je 0x460bf5
jmp 0x460c04
jmp 0x460a4e
jmp 0x460a4e
mov ecx, 2
test ecx, ecx
je 0x460c84
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x15a8], eax
cvtsi2sd xmm0, dword [ebp - 0x15a8]
mov eax, dword [ebp - 0x15a8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa8a0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x15a4], ecx
jmp 0x460c8e
mov dword [ebp - 0x15a4], 8
mov edx, dword [ebp - 0x159c]
shl edx, 2
add edx, dword [ebp - 0x1598]
mov eax, dword [ebp - 0x15a4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x159c]
shl ecx, 2
add ecx, dword [ebp - 0x1598]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4617d4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x460fc6
xor eax, eax
je 0x460d38
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x460d74
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e40]
movsd qword [ebp - 0xa8b8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x460f14
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x460f14
mov dword [ebp - 0x15ac], 0
jmp 0x460df3
cmp dword [ebp - 0x15ac], 0xf
jae 0x460f0f
cvtsi2sd xmm0, dword [ebp - 0x15ac]
movsd xmm1, qword [ebp - 0xa8b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8c0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa8c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x460e62
mov ecx, dword [ebp - 0x15ac]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa8b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8b8], xmm1
jmp 0x460d5e
cvtsi2sd xmm0, dword [ebp - 0x15ac]
movsd xmm1, qword [ebp - 0xa8b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8c8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa8c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x460ebf
mov eax, dword [ebp - 0x15ac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa8b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8b8], xmm1
jmp 0x460ed8
mov ecx, 1
test ecx, ecx
je 0x460ed4
jmp 0x460f94
jmp 0x460efb
cvtsi2sd xmm0, dword [ebp - 0x15ac]
movsd xmm1, qword [ebp - 0xa8b8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x15b0], edx
jmp 0x460f9e
xor eax, eax
je 0x460f05
jmp 0x460f14
jmp 0x460d5e
jmp 0x460d5e
mov ecx, 2
test ecx, ecx
je 0x460f94
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x15b4], eax
cvtsi2sd xmm0, dword [ebp - 0x15b4]
mov eax, dword [ebp - 0x15b4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa8b8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x15b0], ecx
jmp 0x460f9e
mov dword [ebp - 0x15b0], 8
mov edx, dword [ebp - 0x159c]
shl edx, 2
add edx, dword [ebp - 0x1598]
mov eax, dword [ebp - 0x15b0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x159c]
shl ecx, 2
add ecx, dword [ebp - 0x1598]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x461291
xor eax, eax
je 0x461003
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46103f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e38]
movsd qword [ebp - 0xa8d0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4611df
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4611df
mov dword [ebp - 0x15b8], 0
jmp 0x4610be
cmp dword [ebp - 0x15b8], 0xf
jae 0x4611da
cvtsi2sd xmm0, dword [ebp - 0x15b8]
movsd xmm1, qword [ebp - 0xa8d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa8d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46112d
mov ecx, dword [ebp - 0x15b8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa8d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8d0], xmm1
jmp 0x461029
cvtsi2sd xmm0, dword [ebp - 0x15b8]
movsd xmm1, qword [ebp - 0xa8d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa8e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46118a
mov eax, dword [ebp - 0x15b8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa8d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8d0], xmm1
jmp 0x4611a3
mov ecx, 1
test ecx, ecx
je 0x46119f
jmp 0x46125f
jmp 0x4611c6
cvtsi2sd xmm0, dword [ebp - 0x15b8]
movsd xmm1, qword [ebp - 0xa8d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x15bc], edx
jmp 0x461269
xor eax, eax
je 0x4611d0
jmp 0x4611df
jmp 0x461029
jmp 0x461029
mov ecx, 2
test ecx, ecx
je 0x46125f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x15c0], eax
cvtsi2sd xmm0, dword [ebp - 0x15c0]
mov eax, dword [ebp - 0x15c0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa8d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x15bc], ecx
jmp 0x461269
mov dword [ebp - 0x15bc], 8
mov edx, dword [ebp - 0x159c]
shl edx, 2
add edx, dword [ebp - 0x1598]
mov eax, dword [ebp - 0x15bc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x159c]
shl ecx, 2
add ecx, dword [ebp - 0x1598]
mov dword [ecx], eax
mov edx, dword [ebp - 0x159c]
add edx, 0xffffffb5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa8e8], xmm0
xor eax, eax
je 0x4612ab
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4612e7
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa8e8]
movsd qword [ebp - 0xa8f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x461487
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x461487
mov dword [ebp - 0x15c4], 0
jmp 0x461366
cmp dword [ebp - 0x15c4], 0xf
jae 0x461482
cvtsi2sd xmm0, dword [ebp - 0x15c4]
movsd xmm1, qword [ebp - 0xa8f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa8f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4613d5
mov ecx, dword [ebp - 0x15c4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa8f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8f0], xmm1
jmp 0x4612d1
cvtsi2sd xmm0, dword [ebp - 0x15c4]
movsd xmm1, qword [ebp - 0xa8f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa900], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa900]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x461432
mov eax, dword [ebp - 0x15c4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa8f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa8f0], xmm1
jmp 0x46144b
mov ecx, 1
test ecx, ecx
je 0x461447
jmp 0x461507
jmp 0x46146e
cvtsi2sd xmm0, dword [ebp - 0x15c4]
movsd xmm1, qword [ebp - 0xa8f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x15c8], edx
jmp 0x461511
xor eax, eax
je 0x461478
jmp 0x461487
jmp 0x4612d1
jmp 0x4612d1
mov ecx, 2
test ecx, ecx
je 0x461507
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x15cc], eax
cvtsi2sd xmm0, dword [ebp - 0x15cc]
mov eax, dword [ebp - 0x15cc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa8f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x15c8], ecx
jmp 0x461511
mov dword [ebp - 0x15c8], 8
mov edx, dword [ebp - 0x159c]
add edx, 0xffffffb5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa908], xmm0
xor eax, eax
je 0x46152b
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x461567
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa908]
movsd qword [ebp - 0xa910], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x461707
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x461707
mov dword [ebp - 0x15d0], 0
jmp 0x4615e6
cmp dword [ebp - 0x15d0], 0xf
jae 0x461702
cvtsi2sd xmm0, dword [ebp - 0x15d0]
movsd xmm1, qword [ebp - 0xa910]
addsd xmm1, xmm0
movsd qword [ebp - 0xa918], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa918]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x461655
mov ecx, dword [ebp - 0x15d0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa910]
addsd xmm1, xmm0
movsd qword [ebp - 0xa910], xmm1
jmp 0x461551
cvtsi2sd xmm0, dword [ebp - 0x15d0]
movsd xmm1, qword [ebp - 0xa910]
addsd xmm1, xmm0
movsd qword [ebp - 0xa920], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa920]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4616b2
mov eax, dword [ebp - 0x15d0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa910]
addsd xmm1, xmm0
movsd qword [ebp - 0xa910], xmm1
jmp 0x4616cb
mov ecx, 1
test ecx, ecx
je 0x4616c7
jmp 0x461787
jmp 0x4616ee
cvtsi2sd xmm0, dword [ebp - 0x15d0]
movsd xmm1, qword [ebp - 0xa910]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x15d4], edx
jmp 0x461791
xor eax, eax
je 0x4616f8
jmp 0x461707
jmp 0x461551
jmp 0x461551
mov ecx, 2
test ecx, ecx
je 0x461787
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x15d8], eax
cvtsi2sd xmm0, dword [ebp - 0x15d8]
mov eax, dword [ebp - 0x15d8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa910]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x15d4], ecx
jmp 0x461791
mov dword [ebp - 0x15d4], 8
mov edx, dword [ebp - 0x159c]
shl edx, 2
add edx, dword [ebp - 0x1598]
mov eax, dword [ebp - 0x15c8]
add eax, dword [edx]
mov ecx, dword [ebp - 0x159c]
shl ecx, 2
add ecx, dword [ebp - 0x1598]
mov edx, dword [ebp - 0x15d4]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x159c]
shl ecx, 2
add ecx, dword [ebp - 0x1598]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x461a9f
xor eax, eax
je 0x461811
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46184d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e30]
movsd qword [ebp - 0xa928], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4619ed
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4619ed
mov dword [ebp - 0x15dc], 0
jmp 0x4618cc
cmp dword [ebp - 0x15dc], 0xf
jae 0x4619e8
cvtsi2sd xmm0, dword [ebp - 0x15dc]
movsd xmm1, qword [ebp - 0xa928]
addsd xmm1, xmm0
movsd qword [ebp - 0xa930], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa930]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46193b
mov ecx, dword [ebp - 0x15dc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa928]
addsd xmm1, xmm0
movsd qword [ebp - 0xa928], xmm1
jmp 0x461837
cvtsi2sd xmm0, dword [ebp - 0x15dc]
movsd xmm1, qword [ebp - 0xa928]
addsd xmm1, xmm0
movsd qword [ebp - 0xa938], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa938]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x461998
mov eax, dword [ebp - 0x15dc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa928]
addsd xmm1, xmm0
movsd qword [ebp - 0xa928], xmm1
jmp 0x4619b1
mov ecx, 1
test ecx, ecx
je 0x4619ad
jmp 0x461a6d
jmp 0x4619d4
cvtsi2sd xmm0, dword [ebp - 0x15dc]
movsd xmm1, qword [ebp - 0xa928]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x15e0], edx
jmp 0x461a77
xor eax, eax
je 0x4619de
jmp 0x4619ed
jmp 0x461837
jmp 0x461837
mov ecx, 2
test ecx, ecx
je 0x461a6d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x15e4], eax
cvtsi2sd xmm0, dword [ebp - 0x15e4]
mov eax, dword [ebp - 0x15e4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa928]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x15e0], ecx
jmp 0x461a77
mov dword [ebp - 0x15e0], 8
mov edx, dword [ebp - 0x159c]
shl edx, 2
add edx, dword [ebp - 0x1598]
mov eax, dword [ebp - 0x15e0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x159c]
shl ecx, 2
add ecx, dword [ebp - 0x1598]
mov dword [ecx], eax
jmp 0x4609cf
mov edx, dword [ebp - 0x1594]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1594]
mov dword [ebp - 0x15e8], eax
mov ecx, dword [ebp - 0x15e8]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x15ec], ecx
mov edx, dword [ebp - 0x15ec]
mov dword [ebp - 0x1590], edx
push 0x44
push 0
lea eax, [ebp - 0x16780]
push eax
call fcn.005d5470
add esp, 0xc
xor ecx, ecx
mov byte [ebp - 0x39], cl
lea ecx, [ebp - 0x39]
call fcn.00425760
mov dword [ebp - 0x15f0], eax
mov edx, dword [ebp - 0x15f0]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x462c02
mov ecx, dword [ebp - 0x15f0]
mov dword [ebp - 0x15f4], ecx
mov dword [ebp - 0x15f8], 0
jmp 0x461b3c
mov edx, dword [ebp - 0x15f8]
add edx, 1
mov dword [ebp - 0x15f8], edx
cmp dword [ebp - 0x15f8], 1
jae 0x462c02
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x461e14
xor eax, eax
je 0x461b86
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x461bc2
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e48]
movsd qword [ebp - 0xa940], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x461d62
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x461d62
mov dword [ebp - 0x15fc], 0
jmp 0x461c41
cmp dword [ebp - 0x15fc], 0xf
jae 0x461d5d
cvtsi2sd xmm0, dword [ebp - 0x15fc]
movsd xmm1, qword [ebp - 0xa940]
addsd xmm1, xmm0
movsd qword [ebp - 0xa948], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa948]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x461cb0
mov ecx, dword [ebp - 0x15fc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa940]
addsd xmm1, xmm0
movsd qword [ebp - 0xa940], xmm1
jmp 0x461bac
cvtsi2sd xmm0, dword [ebp - 0x15fc]
movsd xmm1, qword [ebp - 0xa940]
addsd xmm1, xmm0
movsd qword [ebp - 0xa950], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa950]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x461d0d
mov eax, dword [ebp - 0x15fc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa940]
addsd xmm1, xmm0
movsd qword [ebp - 0xa940], xmm1
jmp 0x461d26
mov ecx, 1
test ecx, ecx
je 0x461d22
jmp 0x461de2
jmp 0x461d49
cvtsi2sd xmm0, dword [ebp - 0x15fc]
movsd xmm1, qword [ebp - 0xa940]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1600], edx
jmp 0x461dec
xor eax, eax
je 0x461d53
jmp 0x461d62
jmp 0x461bac
jmp 0x461bac
mov ecx, 2
test ecx, ecx
je 0x461de2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1604], eax
cvtsi2sd xmm0, dword [ebp - 0x1604]
mov eax, dword [ebp - 0x1604]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa940]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1600], ecx
jmp 0x461dec
mov dword [ebp - 0x1600], 8
mov edx, dword [ebp - 0x15f8]
shl edx, 2
add edx, dword [ebp - 0x15f4]
mov eax, dword [ebp - 0x1600]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x15f8]
shl ecx, 2
add ecx, dword [ebp - 0x15f4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x462932
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x462124
xor eax, eax
je 0x461e96
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x461ed2
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e40]
movsd qword [ebp - 0xa958], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x462072
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x462072
mov dword [ebp - 0x1608], 0
jmp 0x461f51
cmp dword [ebp - 0x1608], 0xf
jae 0x46206d
cvtsi2sd xmm0, dword [ebp - 0x1608]
movsd xmm1, qword [ebp - 0xa958]
addsd xmm1, xmm0
movsd qword [ebp - 0xa960], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa960]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x461fc0
mov ecx, dword [ebp - 0x1608]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa958]
addsd xmm1, xmm0
movsd qword [ebp - 0xa958], xmm1
jmp 0x461ebc
cvtsi2sd xmm0, dword [ebp - 0x1608]
movsd xmm1, qword [ebp - 0xa958]
addsd xmm1, xmm0
movsd qword [ebp - 0xa968], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa968]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46201d
mov eax, dword [ebp - 0x1608]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa958]
addsd xmm1, xmm0
movsd qword [ebp - 0xa958], xmm1
jmp 0x462036
mov ecx, 1
test ecx, ecx
je 0x462032
jmp 0x4620f2
jmp 0x462059
cvtsi2sd xmm0, dword [ebp - 0x1608]
movsd xmm1, qword [ebp - 0xa958]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x160c], edx
jmp 0x4620fc
xor eax, eax
je 0x462063
jmp 0x462072
jmp 0x461ebc
jmp 0x461ebc
mov ecx, 2
test ecx, ecx
je 0x4620f2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1610], eax
cvtsi2sd xmm0, dword [ebp - 0x1610]
mov eax, dword [ebp - 0x1610]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa958]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x160c], ecx
jmp 0x4620fc
mov dword [ebp - 0x160c], 8
mov edx, dword [ebp - 0x15f8]
shl edx, 2
add edx, dword [ebp - 0x15f4]
mov eax, dword [ebp - 0x160c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x15f8]
shl ecx, 2
add ecx, dword [ebp - 0x15f4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4623ef
xor eax, eax
je 0x462161
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46219d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e38]
movsd qword [ebp - 0xa970], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46233d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46233d
mov dword [ebp - 0x1614], 0
jmp 0x46221c
cmp dword [ebp - 0x1614], 0xf
jae 0x462338
cvtsi2sd xmm0, dword [ebp - 0x1614]
movsd xmm1, qword [ebp - 0xa970]
addsd xmm1, xmm0
movsd qword [ebp - 0xa978], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa978]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46228b
mov ecx, dword [ebp - 0x1614]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa970]
addsd xmm1, xmm0
movsd qword [ebp - 0xa970], xmm1
jmp 0x462187
cvtsi2sd xmm0, dword [ebp - 0x1614]
movsd xmm1, qword [ebp - 0xa970]
addsd xmm1, xmm0
movsd qword [ebp - 0xa980], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa980]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4622e8
mov eax, dword [ebp - 0x1614]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa970]
addsd xmm1, xmm0
movsd qword [ebp - 0xa970], xmm1
jmp 0x462301
mov ecx, 1
test ecx, ecx
je 0x4622fd
jmp 0x4623bd
jmp 0x462324
cvtsi2sd xmm0, dword [ebp - 0x1614]
movsd xmm1, qword [ebp - 0xa970]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1618], edx
jmp 0x4623c7
xor eax, eax
je 0x46232e
jmp 0x46233d
jmp 0x462187
jmp 0x462187
mov ecx, 2
test ecx, ecx
je 0x4623bd
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x161c], eax
cvtsi2sd xmm0, dword [ebp - 0x161c]
mov eax, dword [ebp - 0x161c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa970]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1618], ecx
jmp 0x4623c7
mov dword [ebp - 0x1618], 8
mov edx, dword [ebp - 0x15f8]
shl edx, 2
add edx, dword [ebp - 0x15f4]
mov eax, dword [ebp - 0x1618]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x15f8]
shl ecx, 2
add ecx, dword [ebp - 0x15f4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x15f8]
add edx, 0xffffffb5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa988], xmm0
xor eax, eax
je 0x462409
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x462445
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa988]
movsd qword [ebp - 0xa990], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4625e5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4625e5
mov dword [ebp - 0x1620], 0
jmp 0x4624c4
cmp dword [ebp - 0x1620], 0xf
jae 0x4625e0
cvtsi2sd xmm0, dword [ebp - 0x1620]
movsd xmm1, qword [ebp - 0xa990]
addsd xmm1, xmm0
movsd qword [ebp - 0xa998], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa998]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x462533
mov ecx, dword [ebp - 0x1620]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa990]
addsd xmm1, xmm0
movsd qword [ebp - 0xa990], xmm1
jmp 0x46242f
cvtsi2sd xmm0, dword [ebp - 0x1620]
movsd xmm1, qword [ebp - 0xa990]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa9a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x462590
mov eax, dword [ebp - 0x1620]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa990]
addsd xmm1, xmm0
movsd qword [ebp - 0xa990], xmm1
jmp 0x4625a9
mov ecx, 1
test ecx, ecx
je 0x4625a5
jmp 0x462665
jmp 0x4625cc
cvtsi2sd xmm0, dword [ebp - 0x1620]
movsd xmm1, qword [ebp - 0xa990]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1624], edx
jmp 0x46266f
xor eax, eax
je 0x4625d6
jmp 0x4625e5
jmp 0x46242f
jmp 0x46242f
mov ecx, 2
test ecx, ecx
je 0x462665
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1628], eax
cvtsi2sd xmm0, dword [ebp - 0x1628]
mov eax, dword [ebp - 0x1628]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa990]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1624], ecx
jmp 0x46266f
mov dword [ebp - 0x1624], 8
mov edx, dword [ebp - 0x15f8]
add edx, 0xffffffb5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xa9a8], xmm0
xor eax, eax
je 0x462689
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4626c5
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xa9a8]
movsd qword [ebp - 0xa9b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x462865
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x462865
mov dword [ebp - 0x162c], 0
jmp 0x462744
cmp dword [ebp - 0x162c], 0xf
jae 0x462860
cvtsi2sd xmm0, dword [ebp - 0x162c]
movsd xmm1, qword [ebp - 0xa9b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa9b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4627b3
mov ecx, dword [ebp - 0x162c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa9b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9b0], xmm1
jmp 0x4626af
cvtsi2sd xmm0, dword [ebp - 0x162c]
movsd xmm1, qword [ebp - 0xa9b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa9c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x462810
mov eax, dword [ebp - 0x162c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa9b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9b0], xmm1
jmp 0x462829
mov ecx, 1
test ecx, ecx
je 0x462825
jmp 0x4628e5
jmp 0x46284c
cvtsi2sd xmm0, dword [ebp - 0x162c]
movsd xmm1, qword [ebp - 0xa9b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1630], edx
jmp 0x4628ef
xor eax, eax
je 0x462856
jmp 0x462865
jmp 0x4626af
jmp 0x4626af
mov ecx, 2
test ecx, ecx
je 0x4628e5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1634], eax
cvtsi2sd xmm0, dword [ebp - 0x1634]
mov eax, dword [ebp - 0x1634]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa9b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1630], ecx
jmp 0x4628ef
mov dword [ebp - 0x1630], 8
mov edx, dword [ebp - 0x15f8]
shl edx, 2
add edx, dword [ebp - 0x15f4]
mov eax, dword [ebp - 0x1624]
add eax, dword [edx]
mov ecx, dword [ebp - 0x15f8]
shl ecx, 2
add ecx, dword [ebp - 0x15f4]
mov edx, dword [ebp - 0x1630]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x15f8]
shl ecx, 2
add ecx, dword [ebp - 0x15f4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x462bfd
xor eax, eax
je 0x46296f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4629ab
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e30]
movsd qword [ebp - 0xa9c8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x462b4b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x462b4b
mov dword [ebp - 0x1638], 0
jmp 0x462a2a
cmp dword [ebp - 0x1638], 0xf
jae 0x462b46
cvtsi2sd xmm0, dword [ebp - 0x1638]
movsd xmm1, qword [ebp - 0xa9c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9d0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa9d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x462a99
mov ecx, dword [ebp - 0x1638]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa9c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9c8], xmm1
jmp 0x462995
cvtsi2sd xmm0, dword [ebp - 0x1638]
movsd xmm1, qword [ebp - 0xa9c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9d8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa9d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x462af6
mov eax, dword [ebp - 0x1638]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa9c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9c8], xmm1
jmp 0x462b0f
mov ecx, 1
test ecx, ecx
je 0x462b0b
jmp 0x462bcb
jmp 0x462b32
cvtsi2sd xmm0, dword [ebp - 0x1638]
movsd xmm1, qword [ebp - 0xa9c8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x163c], edx
jmp 0x462bd5
xor eax, eax
je 0x462b3c
jmp 0x462b4b
jmp 0x462995
jmp 0x462995
mov ecx, 2
test ecx, ecx
je 0x462bcb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1640], eax
cvtsi2sd xmm0, dword [ebp - 0x1640]
mov eax, dword [ebp - 0x1640]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa9c8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x163c], ecx
jmp 0x462bd5
mov dword [ebp - 0x163c], 8
mov edx, dword [ebp - 0x15f8]
shl edx, 2
add edx, dword [ebp - 0x15f4]
mov eax, dword [ebp - 0x163c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x15f8]
shl ecx, 2
add ecx, dword [ebp - 0x15f4]
mov dword [ecx], eax
jmp 0x461b2d
mov edx, dword [ebp - 0x15f0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x15f0]
mov dword [ebp - 0x1644], eax
mov ecx, dword [ebp - 0x1644]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1648], ecx
mov edx, dword [ebp - 0x1648]
mov dword [ebp - 0x164c], edx
xor eax, eax
mov byte [ebp - 0x3a], al
lea ecx, [ebp - 0x3a]
call fcn.00425730
mov dword [ebp - 0x1650], eax
mov ecx, dword [ebp - 0x1650]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x463d4d
mov eax, dword [ebp - 0x1650]
mov dword [ebp - 0x1654], eax
mov dword [ebp - 0x1658], 0
jmp 0x462c87
mov ecx, dword [ebp - 0x1658]
add ecx, 1
mov dword [ebp - 0x1658], ecx
cmp dword [ebp - 0x1658], 1
jae 0x463d4d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x462f5f
xor eax, eax
je 0x462cd1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x462d0d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e40]
movsd qword [ebp - 0xa9e0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x462ead
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x462ead
mov dword [ebp - 0x165c], 0
jmp 0x462d8c
cmp dword [ebp - 0x165c], 0xf
jae 0x462ea8
cvtsi2sd xmm0, dword [ebp - 0x165c]
movsd xmm1, qword [ebp - 0xa9e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9e8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa9e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x462dfb
mov ecx, dword [ebp - 0x165c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa9e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9e0], xmm1
jmp 0x462cf7
cvtsi2sd xmm0, dword [ebp - 0x165c]
movsd xmm1, qword [ebp - 0xa9e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9f0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xa9f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x462e58
mov eax, dword [ebp - 0x165c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa9e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9e0], xmm1
jmp 0x462e71
mov ecx, 1
test ecx, ecx
je 0x462e6d
jmp 0x462f2d
jmp 0x462e94
cvtsi2sd xmm0, dword [ebp - 0x165c]
movsd xmm1, qword [ebp - 0xa9e0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1660], edx
jmp 0x462f37
xor eax, eax
je 0x462e9e
jmp 0x462ead
jmp 0x462cf7
jmp 0x462cf7
mov ecx, 2
test ecx, ecx
je 0x462f2d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1664], eax
cvtsi2sd xmm0, dword [ebp - 0x1664]
mov eax, dword [ebp - 0x1664]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa9e0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1660], ecx
jmp 0x462f37
mov dword [ebp - 0x1660], 8
mov edx, dword [ebp - 0x1658]
shl edx, 2
add edx, dword [ebp - 0x1654]
mov eax, dword [ebp - 0x1660]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1658]
shl ecx, 2
add ecx, dword [ebp - 0x1654]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x463a7d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46326f
xor eax, eax
je 0x462fe1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46301d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e38]
movsd qword [ebp - 0xa9f8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4631bd
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4631bd
mov dword [ebp - 0x1668], 0
jmp 0x46309c
cmp dword [ebp - 0x1668], 0xf
jae 0x4631b8
cvtsi2sd xmm0, dword [ebp - 0x1668]
movsd xmm1, qword [ebp - 0xa9f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa00], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaa00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46310b
mov ecx, dword [ebp - 0x1668]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xa9f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9f8], xmm1
jmp 0x463007
cvtsi2sd xmm0, dword [ebp - 0x1668]
movsd xmm1, qword [ebp - 0xa9f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa08], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaa08]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x463168
mov eax, dword [ebp - 0x1668]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xa9f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xa9f8], xmm1
jmp 0x463181
mov ecx, 1
test ecx, ecx
je 0x46317d
jmp 0x46323d
jmp 0x4631a4
cvtsi2sd xmm0, dword [ebp - 0x1668]
movsd xmm1, qword [ebp - 0xa9f8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x166c], edx
jmp 0x463247
xor eax, eax
je 0x4631ae
jmp 0x4631bd
jmp 0x463007
jmp 0x463007
mov ecx, 2
test ecx, ecx
je 0x46323d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1670], eax
cvtsi2sd xmm0, dword [ebp - 0x1670]
mov eax, dword [ebp - 0x1670]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xa9f8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x166c], ecx
jmp 0x463247
mov dword [ebp - 0x166c], 8
mov edx, dword [ebp - 0x1658]
shl edx, 2
add edx, dword [ebp - 0x1654]
mov eax, dword [ebp - 0x166c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1658]
shl ecx, 2
add ecx, dword [ebp - 0x1654]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46353a
xor eax, eax
je 0x4632ac
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4632e8
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e30]
movsd qword [ebp - 0xaa10], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x463488
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x463488
mov dword [ebp - 0x1674], 0
jmp 0x463367
cmp dword [ebp - 0x1674], 0xf
jae 0x463483
cvtsi2sd xmm0, dword [ebp - 0x1674]
movsd xmm1, qword [ebp - 0xaa10]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaa18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4633d6
mov ecx, dword [ebp - 0x1674]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaa10]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa10], xmm1
jmp 0x4632d2
cvtsi2sd xmm0, dword [ebp - 0x1674]
movsd xmm1, qword [ebp - 0xaa10]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaa20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x463433
mov eax, dword [ebp - 0x1674]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaa10]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa10], xmm1
jmp 0x46344c
mov ecx, 1
test ecx, ecx
je 0x463448
jmp 0x463508
jmp 0x46346f
cvtsi2sd xmm0, dword [ebp - 0x1674]
movsd xmm1, qword [ebp - 0xaa10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1678], edx
jmp 0x463512
xor eax, eax
je 0x463479
jmp 0x463488
jmp 0x4632d2
jmp 0x4632d2
mov ecx, 2
test ecx, ecx
je 0x463508
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x167c], eax
cvtsi2sd xmm0, dword [ebp - 0x167c]
mov eax, dword [ebp - 0x167c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaa10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1678], ecx
jmp 0x463512
mov dword [ebp - 0x1678], 8
mov edx, dword [ebp - 0x1658]
shl edx, 2
add edx, dword [ebp - 0x1654]
mov eax, dword [ebp - 0x1678]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1658]
shl ecx, 2
add ecx, dword [ebp - 0x1654]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1658]
add edx, 0xffffffb6
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xaa28], xmm0
xor eax, eax
je 0x463554
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x463590
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xaa28]
movsd qword [ebp - 0xaa30], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x463730
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x463730
mov dword [ebp - 0x1680], 0
jmp 0x46360f
cmp dword [ebp - 0x1680], 0xf
jae 0x46372b
cvtsi2sd xmm0, dword [ebp - 0x1680]
movsd xmm1, qword [ebp - 0xaa30]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaa38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46367e
mov ecx, dword [ebp - 0x1680]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaa30]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa30], xmm1
jmp 0x46357a
cvtsi2sd xmm0, dword [ebp - 0x1680]
movsd xmm1, qword [ebp - 0xaa30]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaa40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4636db
mov eax, dword [ebp - 0x1680]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaa30]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa30], xmm1
jmp 0x4636f4
mov ecx, 1
test ecx, ecx
je 0x4636f0
jmp 0x4637b0
jmp 0x463717
cvtsi2sd xmm0, dword [ebp - 0x1680]
movsd xmm1, qword [ebp - 0xaa30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1684], edx
jmp 0x4637ba
xor eax, eax
je 0x463721
jmp 0x463730
jmp 0x46357a
jmp 0x46357a
mov ecx, 2
test ecx, ecx
je 0x4637b0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1688], eax
cvtsi2sd xmm0, dword [ebp - 0x1688]
mov eax, dword [ebp - 0x1688]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaa30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1684], ecx
jmp 0x4637ba
mov dword [ebp - 0x1684], 8
mov edx, dword [ebp - 0x1658]
add edx, 0xffffffb6
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xaa48], xmm0
xor eax, eax
je 0x4637d4
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x463810
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xaa48]
movsd qword [ebp - 0xaa50], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4639b0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4639b0
mov dword [ebp - 0x168c], 0
jmp 0x46388f
cmp dword [ebp - 0x168c], 0xf
jae 0x4639ab
cvtsi2sd xmm0, dword [ebp - 0x168c]
movsd xmm1, qword [ebp - 0xaa50]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaa58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4638fe
mov ecx, dword [ebp - 0x168c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaa50]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa50], xmm1
jmp 0x4637fa
cvtsi2sd xmm0, dword [ebp - 0x168c]
movsd xmm1, qword [ebp - 0xaa50]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaa60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46395b
mov eax, dword [ebp - 0x168c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaa50]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa50], xmm1
jmp 0x463974
mov ecx, 1
test ecx, ecx
je 0x463970
jmp 0x463a30
jmp 0x463997
cvtsi2sd xmm0, dword [ebp - 0x168c]
movsd xmm1, qword [ebp - 0xaa50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1690], edx
jmp 0x463a3a
xor eax, eax
je 0x4639a1
jmp 0x4639b0
jmp 0x4637fa
jmp 0x4637fa
mov ecx, 2
test ecx, ecx
je 0x463a30
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1694], eax
cvtsi2sd xmm0, dword [ebp - 0x1694]
mov eax, dword [ebp - 0x1694]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaa50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1690], ecx
jmp 0x463a3a
mov dword [ebp - 0x1690], 8
mov edx, dword [ebp - 0x1658]
shl edx, 2
add edx, dword [ebp - 0x1654]
mov eax, dword [ebp - 0x1684]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1658]
shl ecx, 2
add ecx, dword [ebp - 0x1654]
mov edx, dword [ebp - 0x1690]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1658]
shl ecx, 2
add ecx, dword [ebp - 0x1654]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x463d48
xor eax, eax
je 0x463aba
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x463af6
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e28]
movsd qword [ebp - 0xaa68], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x463c96
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x463c96
mov dword [ebp - 0x1698], 0
jmp 0x463b75
cmp dword [ebp - 0x1698], 0xf
jae 0x463c91
cvtsi2sd xmm0, dword [ebp - 0x1698]
movsd xmm1, qword [ebp - 0xaa68]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa70], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaa70]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x463be4
mov ecx, dword [ebp - 0x1698]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaa68]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa68], xmm1
jmp 0x463ae0
cvtsi2sd xmm0, dword [ebp - 0x1698]
movsd xmm1, qword [ebp - 0xaa68]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa78], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaa78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x463c41
mov eax, dword [ebp - 0x1698]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaa68]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa68], xmm1
jmp 0x463c5a
mov ecx, 1
test ecx, ecx
je 0x463c56
jmp 0x463d16
jmp 0x463c7d
cvtsi2sd xmm0, dword [ebp - 0x1698]
movsd xmm1, qword [ebp - 0xaa68]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x169c], edx
jmp 0x463d20
xor eax, eax
je 0x463c87
jmp 0x463c96
jmp 0x463ae0
jmp 0x463ae0
mov ecx, 2
test ecx, ecx
je 0x463d16
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x16a0], eax
cvtsi2sd xmm0, dword [ebp - 0x16a0]
mov eax, dword [ebp - 0x16a0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaa68]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x169c], ecx
jmp 0x463d20
mov dword [ebp - 0x169c], 8
mov edx, dword [ebp - 0x1658]
shl edx, 2
add edx, dword [ebp - 0x1654]
mov eax, dword [ebp - 0x169c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1658]
shl ecx, 2
add ecx, dword [ebp - 0x1654]
mov dword [ecx], eax
jmp 0x462c78
mov edx, dword [ebp - 0x1650]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1650]
mov dword [ebp - 0x16a4], eax
mov ecx, dword [ebp - 0x16a4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x16a8], ecx
mov edx, dword [ebp - 0x16a8]
mov dword [ebp - 0x16ac], edx
xor eax, eax
mov byte [ebp - 0x3b], al
lea ecx, [ebp - 0x3b]
call fcn.00425700
mov dword [ebp - 0x16b0], eax
mov ecx, dword [ebp - 0x16b0]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x464e98
mov eax, dword [ebp - 0x16b0]
mov dword [ebp - 0x16b4], eax
mov dword [ebp - 0x16b8], 0
jmp 0x463dd2
mov ecx, dword [ebp - 0x16b8]
add ecx, 1
mov dword [ebp - 0x16b8], ecx
cmp dword [ebp - 0x16b8], 1
jae 0x464e98
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4640aa
xor eax, eax
je 0x463e1c
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x463e58
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e40]
movsd qword [ebp - 0xaa80], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x463ff8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x463ff8
mov dword [ebp - 0x16bc], 0
jmp 0x463ed7
cmp dword [ebp - 0x16bc], 0xf
jae 0x463ff3
cvtsi2sd xmm0, dword [ebp - 0x16bc]
movsd xmm1, qword [ebp - 0xaa80]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa88], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaa88]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x463f46
mov ecx, dword [ebp - 0x16bc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaa80]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa80], xmm1
jmp 0x463e42
cvtsi2sd xmm0, dword [ebp - 0x16bc]
movsd xmm1, qword [ebp - 0xaa80]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa90], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaa90]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x463fa3
mov eax, dword [ebp - 0x16bc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaa80]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa80], xmm1
jmp 0x463fbc
mov ecx, 1
test ecx, ecx
je 0x463fb8
jmp 0x464078
jmp 0x463fdf
cvtsi2sd xmm0, dword [ebp - 0x16bc]
movsd xmm1, qword [ebp - 0xaa80]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x16c0], edx
jmp 0x464082
xor eax, eax
je 0x463fe9
jmp 0x463ff8
jmp 0x463e42
jmp 0x463e42
mov ecx, 2
test ecx, ecx
je 0x464078
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x16c4], eax
cvtsi2sd xmm0, dword [ebp - 0x16c4]
mov eax, dword [ebp - 0x16c4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaa80]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x16c0], ecx
jmp 0x464082
mov dword [ebp - 0x16c0], 8
mov edx, dword [ebp - 0x16b8]
shl edx, 2
add edx, dword [ebp - 0x16b4]
mov eax, dword [ebp - 0x16c0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x16b8]
shl ecx, 2
add ecx, dword [ebp - 0x16b4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x464bc8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4643ba
xor eax, eax
je 0x46412c
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x464168
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e38]
movsd qword [ebp - 0xaa98], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x464308
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x464308
mov dword [ebp - 0x16c8], 0
jmp 0x4641e7
cmp dword [ebp - 0x16c8], 0xf
jae 0x464303
cvtsi2sd xmm0, dword [ebp - 0x16c8]
movsd xmm1, qword [ebp - 0xaa98]
addsd xmm1, xmm0
movsd qword [ebp - 0xaaa0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaaa0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x464256
mov ecx, dword [ebp - 0x16c8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaa98]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa98], xmm1
jmp 0x464152
cvtsi2sd xmm0, dword [ebp - 0x16c8]
movsd xmm1, qword [ebp - 0xaa98]
addsd xmm1, xmm0
movsd qword [ebp - 0xaaa8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaaa8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4642b3
mov eax, dword [ebp - 0x16c8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaa98]
addsd xmm1, xmm0
movsd qword [ebp - 0xaa98], xmm1
jmp 0x4642cc
mov ecx, 1
test ecx, ecx
je 0x4642c8
jmp 0x464388
jmp 0x4642ef
cvtsi2sd xmm0, dword [ebp - 0x16c8]
movsd xmm1, qword [ebp - 0xaa98]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x16cc], edx
jmp 0x464392
xor eax, eax
je 0x4642f9
jmp 0x464308
jmp 0x464152
jmp 0x464152
mov ecx, 2
test ecx, ecx
je 0x464388
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x16d0], eax
cvtsi2sd xmm0, dword [ebp - 0x16d0]
mov eax, dword [ebp - 0x16d0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaa98]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x16cc], ecx
jmp 0x464392
mov dword [ebp - 0x16cc], 8
mov edx, dword [ebp - 0x16b8]
shl edx, 2
add edx, dword [ebp - 0x16b4]
mov eax, dword [ebp - 0x16cc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x16b8]
shl ecx, 2
add ecx, dword [ebp - 0x16b4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x464685
xor eax, eax
je 0x4643f7
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x464433
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e30]
movsd qword [ebp - 0xaab0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4645d3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4645d3
mov dword [ebp - 0x16d4], 0
jmp 0x4644b2
cmp dword [ebp - 0x16d4], 0xf
jae 0x4645ce
cvtsi2sd xmm0, dword [ebp - 0x16d4]
movsd xmm1, qword [ebp - 0xaab0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaab8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaab8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x464521
mov ecx, dword [ebp - 0x16d4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaab0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaab0], xmm1
jmp 0x46441d
cvtsi2sd xmm0, dword [ebp - 0x16d4]
movsd xmm1, qword [ebp - 0xaab0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaac0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaac0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46457e
mov eax, dword [ebp - 0x16d4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaab0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaab0], xmm1
jmp 0x464597
mov ecx, 1
test ecx, ecx
je 0x464593
jmp 0x464653
jmp 0x4645ba
cvtsi2sd xmm0, dword [ebp - 0x16d4]
movsd xmm1, qword [ebp - 0xaab0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x16d8], edx
jmp 0x46465d
xor eax, eax
je 0x4645c4
jmp 0x4645d3
jmp 0x46441d
jmp 0x46441d
mov ecx, 2
test ecx, ecx
je 0x464653
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x16dc], eax
cvtsi2sd xmm0, dword [ebp - 0x16dc]
mov eax, dword [ebp - 0x16dc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaab0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x16d8], ecx
jmp 0x46465d
mov dword [ebp - 0x16d8], 8
mov edx, dword [ebp - 0x16b8]
shl edx, 2
add edx, dword [ebp - 0x16b4]
mov eax, dword [ebp - 0x16d8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x16b8]
shl ecx, 2
add ecx, dword [ebp - 0x16b4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x16b8]
add edx, 0xffffffb6
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xaac8], xmm0
xor eax, eax
je 0x46469f
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4646db
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xaac8]
movsd qword [ebp - 0xaad0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46487b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46487b
mov dword [ebp - 0x16e0], 0
jmp 0x46475a
cmp dword [ebp - 0x16e0], 0xf
jae 0x464876
cvtsi2sd xmm0, dword [ebp - 0x16e0]
movsd xmm1, qword [ebp - 0xaad0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaad8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaad8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4647c9
mov ecx, dword [ebp - 0x16e0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaad0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaad0], xmm1
jmp 0x4646c5
cvtsi2sd xmm0, dword [ebp - 0x16e0]
movsd xmm1, qword [ebp - 0xaad0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaae0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaae0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x464826
mov eax, dword [ebp - 0x16e0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaad0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaad0], xmm1
jmp 0x46483f
mov ecx, 1
test ecx, ecx
je 0x46483b
jmp 0x4648fb
jmp 0x464862
cvtsi2sd xmm0, dword [ebp - 0x16e0]
movsd xmm1, qword [ebp - 0xaad0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x16e4], edx
jmp 0x464905
xor eax, eax
je 0x46486c
jmp 0x46487b
jmp 0x4646c5
jmp 0x4646c5
mov ecx, 2
test ecx, ecx
je 0x4648fb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x16e8], eax
cvtsi2sd xmm0, dword [ebp - 0x16e8]
mov eax, dword [ebp - 0x16e8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaad0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x16e4], ecx
jmp 0x464905
mov dword [ebp - 0x16e4], 8
mov edx, dword [ebp - 0x16b8]
add edx, 0xffffffb6
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xaae8], xmm0
xor eax, eax
je 0x46491f
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46495b
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xaae8]
movsd qword [ebp - 0xaaf0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x464afb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x464afb
mov dword [ebp - 0x16ec], 0
jmp 0x4649da
cmp dword [ebp - 0x16ec], 0xf
jae 0x464af6
cvtsi2sd xmm0, dword [ebp - 0x16ec]
movsd xmm1, qword [ebp - 0xaaf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaaf8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaaf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x464a49
mov ecx, dword [ebp - 0x16ec]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaaf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaaf0], xmm1
jmp 0x464945
cvtsi2sd xmm0, dword [ebp - 0x16ec]
movsd xmm1, qword [ebp - 0xaaf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xab00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xab00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x464aa6
mov eax, dword [ebp - 0x16ec]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaaf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaaf0], xmm1
jmp 0x464abf
mov ecx, 1
test ecx, ecx
je 0x464abb
jmp 0x464b7b
jmp 0x464ae2
cvtsi2sd xmm0, dword [ebp - 0x16ec]
movsd xmm1, qword [ebp - 0xaaf0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x16f0], edx
jmp 0x464b85
xor eax, eax
je 0x464aec
jmp 0x464afb
jmp 0x464945
jmp 0x464945
mov ecx, 2
test ecx, ecx
je 0x464b7b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x16f4], eax
cvtsi2sd xmm0, dword [ebp - 0x16f4]
mov eax, dword [ebp - 0x16f4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaaf0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x16f0], ecx
jmp 0x464b85
mov dword [ebp - 0x16f0], 8
mov edx, dword [ebp - 0x16b8]
shl edx, 2
add edx, dword [ebp - 0x16b4]
mov eax, dword [ebp - 0x16e4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x16b8]
shl ecx, 2
add ecx, dword [ebp - 0x16b4]
mov edx, dword [ebp - 0x16f0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x16b8]
shl ecx, 2
add ecx, dword [ebp - 0x16b4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x464e93
xor eax, eax
je 0x464c05
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x464c41
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e28]
movsd qword [ebp - 0xab08], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x464de1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x464de1
mov dword [ebp - 0x16f8], 0
jmp 0x464cc0
cmp dword [ebp - 0x16f8], 0xf
jae 0x464ddc
cvtsi2sd xmm0, dword [ebp - 0x16f8]
movsd xmm1, qword [ebp - 0xab08]
addsd xmm1, xmm0
movsd qword [ebp - 0xab10], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xab10]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x464d2f
mov ecx, dword [ebp - 0x16f8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xab08]
addsd xmm1, xmm0
movsd qword [ebp - 0xab08], xmm1
jmp 0x464c2b
cvtsi2sd xmm0, dword [ebp - 0x16f8]
movsd xmm1, qword [ebp - 0xab08]
addsd xmm1, xmm0
movsd qword [ebp - 0xab18], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xab18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x464d8c
mov eax, dword [ebp - 0x16f8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xab08]
addsd xmm1, xmm0
movsd qword [ebp - 0xab08], xmm1
jmp 0x464da5
mov ecx, 1
test ecx, ecx
je 0x464da1
jmp 0x464e61
jmp 0x464dc8
cvtsi2sd xmm0, dword [ebp - 0x16f8]
movsd xmm1, qword [ebp - 0xab08]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x16fc], edx
jmp 0x464e6b
xor eax, eax
je 0x464dd2
jmp 0x464de1
jmp 0x464c2b
jmp 0x464c2b
mov ecx, 2
test ecx, ecx
je 0x464e61
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1700], eax
cvtsi2sd xmm0, dword [ebp - 0x1700]
mov eax, dword [ebp - 0x1700]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xab08]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x16fc], ecx
jmp 0x464e6b
mov dword [ebp - 0x16fc], 8
mov edx, dword [ebp - 0x16b8]
shl edx, 2
add edx, dword [ebp - 0x16b4]
mov eax, dword [ebp - 0x16fc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x16b8]
shl ecx, 2
add ecx, dword [ebp - 0x16b4]
mov dword [ecx], eax
jmp 0x463dc3
mov edx, dword [ebp - 0x16b0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x16b0]
mov dword [ebp - 0x1704], eax
mov ecx, dword [ebp - 0x1704]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1708], ecx
mov edx, dword [ebp - 0x1708]
mov dword [ebp - 0x170c], edx
mov eax, dword [ebp - 0x16ac]
mov dword [ebp - 0x164c], eax
cmp dword [ebp - 0x164c], 0
je 0x466035
xor ecx, ecx
mov byte [ebp - 0x3c], cl
lea ecx, [ebp - 0x3c]
call fcn.004256d0
mov dword [ebp - 0x1710], eax
mov edx, dword [ebp - 0x1710]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x465ffc
mov ecx, dword [ebp - 0x1710]
mov dword [ebp - 0x1714], ecx
mov dword [ebp - 0x1718], 0
jmp 0x464f36
mov edx, dword [ebp - 0x1718]
add edx, 1
mov dword [ebp - 0x1718], edx
cmp dword [ebp - 0x1718], 1
jae 0x465ffc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46520e
xor eax, eax
je 0x464f80
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x464fbc
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e38]
movsd qword [ebp - 0xab20], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46515c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46515c
mov dword [ebp - 0x171c], 0
jmp 0x46503b
cmp dword [ebp - 0x171c], 0xf
jae 0x465157
cvtsi2sd xmm0, dword [ebp - 0x171c]
movsd xmm1, qword [ebp - 0xab20]
addsd xmm1, xmm0
movsd qword [ebp - 0xab28], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xab28]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4650aa
mov ecx, dword [ebp - 0x171c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xab20]
addsd xmm1, xmm0
movsd qword [ebp - 0xab20], xmm1
jmp 0x464fa6
cvtsi2sd xmm0, dword [ebp - 0x171c]
movsd xmm1, qword [ebp - 0xab20]
addsd xmm1, xmm0
movsd qword [ebp - 0xab30], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xab30]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x465107
mov eax, dword [ebp - 0x171c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xab20]
addsd xmm1, xmm0
movsd qword [ebp - 0xab20], xmm1
jmp 0x465120
mov ecx, 1
test ecx, ecx
je 0x46511c
jmp 0x4651dc
jmp 0x465143
cvtsi2sd xmm0, dword [ebp - 0x171c]
movsd xmm1, qword [ebp - 0xab20]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1720], edx
jmp 0x4651e6
xor eax, eax
je 0x46514d
jmp 0x46515c
jmp 0x464fa6
jmp 0x464fa6
mov ecx, 2
test ecx, ecx
je 0x4651dc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1724], eax
cvtsi2sd xmm0, dword [ebp - 0x1724]
mov eax, dword [ebp - 0x1724]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xab20]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1720], ecx
jmp 0x4651e6
mov dword [ebp - 0x1720], 8
mov edx, dword [ebp - 0x1718]
shl edx, 2
add edx, dword [ebp - 0x1714]
mov eax, dword [ebp - 0x1720]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1718]
shl ecx, 2
add ecx, dword [ebp - 0x1714]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x465d2c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46551e
xor eax, eax
je 0x465290
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4652cc
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e30]
movsd qword [ebp - 0xab38], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46546c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46546c
mov dword [ebp - 0x1728], 0
jmp 0x46534b
cmp dword [ebp - 0x1728], 0xf
jae 0x465467
cvtsi2sd xmm0, dword [ebp - 0x1728]
movsd xmm1, qword [ebp - 0xab38]
addsd xmm1, xmm0
movsd qword [ebp - 0xab40], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xab40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4653ba
mov ecx, dword [ebp - 0x1728]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xab38]
addsd xmm1, xmm0
movsd qword [ebp - 0xab38], xmm1
jmp 0x4652b6
cvtsi2sd xmm0, dword [ebp - 0x1728]
movsd xmm1, qword [ebp - 0xab38]
addsd xmm1, xmm0
movsd qword [ebp - 0xab48], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xab48]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x465417
mov eax, dword [ebp - 0x1728]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xab38]
addsd xmm1, xmm0
movsd qword [ebp - 0xab38], xmm1
jmp 0x465430
mov ecx, 1
test ecx, ecx
je 0x46542c
jmp 0x4654ec
jmp 0x465453
cvtsi2sd xmm0, dword [ebp - 0x1728]
movsd xmm1, qword [ebp - 0xab38]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x172c], edx
jmp 0x4654f6
xor eax, eax
je 0x46545d
jmp 0x46546c
jmp 0x4652b6
jmp 0x4652b6
mov ecx, 2
test ecx, ecx
je 0x4654ec
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1730], eax
cvtsi2sd xmm0, dword [ebp - 0x1730]
mov eax, dword [ebp - 0x1730]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xab38]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x172c], ecx
jmp 0x4654f6
mov dword [ebp - 0x172c], 8
mov edx, dword [ebp - 0x1718]
shl edx, 2
add edx, dword [ebp - 0x1714]
mov eax, dword [ebp - 0x172c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1718]
shl ecx, 2
add ecx, dword [ebp - 0x1714]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4657e9
xor eax, eax
je 0x46555b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x465597
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e28]
movsd qword [ebp - 0xab50], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x465737
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x465737
mov dword [ebp - 0x1734], 0
jmp 0x465616
cmp dword [ebp - 0x1734], 0xf
jae 0x465732
cvtsi2sd xmm0, dword [ebp - 0x1734]
movsd xmm1, qword [ebp - 0xab50]
addsd xmm1, xmm0
movsd qword [ebp - 0xab58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xab58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x465685
mov ecx, dword [ebp - 0x1734]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xab50]
addsd xmm1, xmm0
movsd qword [ebp - 0xab50], xmm1
jmp 0x465581
cvtsi2sd xmm0, dword [ebp - 0x1734]
movsd xmm1, qword [ebp - 0xab50]
addsd xmm1, xmm0
movsd qword [ebp - 0xab60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xab60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4656e2
mov eax, dword [ebp - 0x1734]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xab50]
addsd xmm1, xmm0
movsd qword [ebp - 0xab50], xmm1
jmp 0x4656fb
mov ecx, 1
test ecx, ecx
je 0x4656f7
jmp 0x4657b7
jmp 0x46571e
cvtsi2sd xmm0, dword [ebp - 0x1734]
movsd xmm1, qword [ebp - 0xab50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1738], edx
jmp 0x4657c1
xor eax, eax
je 0x465728
jmp 0x465737
jmp 0x465581
jmp 0x465581
mov ecx, 2
test ecx, ecx
je 0x4657b7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x173c], eax
cvtsi2sd xmm0, dword [ebp - 0x173c]
mov eax, dword [ebp - 0x173c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xab50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1738], ecx
jmp 0x4657c1
mov dword [ebp - 0x1738], 8
mov edx, dword [ebp - 0x1718]
shl edx, 2
add edx, dword [ebp - 0x1714]
mov eax, dword [ebp - 0x1738]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1718]
shl ecx, 2
add ecx, dword [ebp - 0x1714]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1718]
add edx, 0xffffffb7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xab68], xmm0
xor eax, eax
je 0x465803
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46583f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xab68]
movsd qword [ebp - 0xab70], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4659df
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4659df
mov dword [ebp - 0x1740], 0
jmp 0x4658be
cmp dword [ebp - 0x1740], 0xf
jae 0x4659da
cvtsi2sd xmm0, dword [ebp - 0x1740]
movsd xmm1, qword [ebp - 0xab70]
addsd xmm1, xmm0
movsd qword [ebp - 0xab78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xab78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46592d
mov ecx, dword [ebp - 0x1740]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xab70]
addsd xmm1, xmm0
movsd qword [ebp - 0xab70], xmm1
jmp 0x465829
cvtsi2sd xmm0, dword [ebp - 0x1740]
movsd xmm1, qword [ebp - 0xab70]
addsd xmm1, xmm0
movsd qword [ebp - 0xab80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xab80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46598a
mov eax, dword [ebp - 0x1740]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xab70]
addsd xmm1, xmm0
movsd qword [ebp - 0xab70], xmm1
jmp 0x4659a3
mov ecx, 1
test ecx, ecx
je 0x46599f
jmp 0x465a5f
jmp 0x4659c6
cvtsi2sd xmm0, dword [ebp - 0x1740]
movsd xmm1, qword [ebp - 0xab70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1744], edx
jmp 0x465a69
xor eax, eax
je 0x4659d0
jmp 0x4659df
jmp 0x465829
jmp 0x465829
mov ecx, 2
test ecx, ecx
je 0x465a5f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1748], eax
cvtsi2sd xmm0, dword [ebp - 0x1748]
mov eax, dword [ebp - 0x1748]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xab70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1744], ecx
jmp 0x465a69
mov dword [ebp - 0x1744], 8
mov edx, dword [ebp - 0x1718]
add edx, 0xffffffb7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xab88], xmm0
xor eax, eax
je 0x465a83
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x465abf
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xab88]
movsd qword [ebp - 0xab90], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x465c5f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x465c5f
mov dword [ebp - 0x174c], 0
jmp 0x465b3e
cmp dword [ebp - 0x174c], 0xf
jae 0x465c5a
cvtsi2sd xmm0, dword [ebp - 0x174c]
movsd xmm1, qword [ebp - 0xab90]
addsd xmm1, xmm0
movsd qword [ebp - 0xab98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xab98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x465bad
mov ecx, dword [ebp - 0x174c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xab90]
addsd xmm1, xmm0
movsd qword [ebp - 0xab90], xmm1
jmp 0x465aa9
cvtsi2sd xmm0, dword [ebp - 0x174c]
movsd xmm1, qword [ebp - 0xab90]
addsd xmm1, xmm0
movsd qword [ebp - 0xaba0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaba0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x465c0a
mov eax, dword [ebp - 0x174c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xab90]
addsd xmm1, xmm0
movsd qword [ebp - 0xab90], xmm1
jmp 0x465c23
mov ecx, 1
test ecx, ecx
je 0x465c1f
jmp 0x465cdf
jmp 0x465c46
cvtsi2sd xmm0, dword [ebp - 0x174c]
movsd xmm1, qword [ebp - 0xab90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1750], edx
jmp 0x465ce9
xor eax, eax
je 0x465c50
jmp 0x465c5f
jmp 0x465aa9
jmp 0x465aa9
mov ecx, 2
test ecx, ecx
je 0x465cdf
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1754], eax
cvtsi2sd xmm0, dword [ebp - 0x1754]
mov eax, dword [ebp - 0x1754]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xab90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1750], ecx
jmp 0x465ce9
mov dword [ebp - 0x1750], 8
mov edx, dword [ebp - 0x1718]
shl edx, 2
add edx, dword [ebp - 0x1714]
mov eax, dword [ebp - 0x1744]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1718]
shl ecx, 2
add ecx, dword [ebp - 0x1714]
mov edx, dword [ebp - 0x1750]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1718]
shl ecx, 2
add ecx, dword [ebp - 0x1714]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x465ff7
xor eax, eax
je 0x465d69
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x465da5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e20]
movsd qword [ebp - 0xaba8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x465f45
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x465f45
mov dword [ebp - 0x1758], 0
jmp 0x465e24
cmp dword [ebp - 0x1758], 0xf
jae 0x465f40
cvtsi2sd xmm0, dword [ebp - 0x1758]
movsd xmm1, qword [ebp - 0xaba8]
addsd xmm1, xmm0
movsd qword [ebp - 0xabb0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xabb0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x465e93
mov ecx, dword [ebp - 0x1758]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaba8]
addsd xmm1, xmm0
movsd qword [ebp - 0xaba8], xmm1
jmp 0x465d8f
cvtsi2sd xmm0, dword [ebp - 0x1758]
movsd xmm1, qword [ebp - 0xaba8]
addsd xmm1, xmm0
movsd qword [ebp - 0xabb8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xabb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x465ef0
mov eax, dword [ebp - 0x1758]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaba8]
addsd xmm1, xmm0
movsd qword [ebp - 0xaba8], xmm1
jmp 0x465f09
mov ecx, 1
test ecx, ecx
je 0x465f05
jmp 0x465fc5
jmp 0x465f2c
cvtsi2sd xmm0, dword [ebp - 0x1758]
movsd xmm1, qword [ebp - 0xaba8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x175c], edx
jmp 0x465fcf
xor eax, eax
je 0x465f36
jmp 0x465f45
jmp 0x465d8f
jmp 0x465d8f
mov ecx, 2
test ecx, ecx
je 0x465fc5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1760], eax
cvtsi2sd xmm0, dword [ebp - 0x1760]
mov eax, dword [ebp - 0x1760]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaba8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x175c], ecx
jmp 0x465fcf
mov dword [ebp - 0x175c], 8
mov edx, dword [ebp - 0x1718]
shl edx, 2
add edx, dword [ebp - 0x1714]
mov eax, dword [ebp - 0x175c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1718]
shl ecx, 2
add ecx, dword [ebp - 0x1714]
mov dword [ecx], eax
jmp 0x464f27
mov edx, dword [ebp - 0x1710]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1710]
mov dword [ebp - 0x1764], eax
mov ecx, dword [ebp - 0x1764]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1768], ecx
mov edx, dword [ebp - 0x1768]
mov dword [ebp - 0x170c], edx
mov dword [ebp - 0x16780], 0x44
xor eax, eax
mov byte [ebp - 0x3d], al
lea ecx, [ebp - 0x3d]
call fcn.004256a0
mov dword [ebp - 0x176c], eax
mov ecx, dword [ebp - 0x176c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x467151
mov eax, dword [ebp - 0x176c]
mov dword [ebp - 0x1770], eax
mov dword [ebp - 0x1774], 0
jmp 0x46608b
mov ecx, dword [ebp - 0x1774]
add ecx, 1
mov dword [ebp - 0x1774], ecx
cmp dword [ebp - 0x1774], 1
jae 0x467151
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x466363
xor eax, eax
je 0x4660d5
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x466111
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e38]
movsd qword [ebp - 0xabc0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4662b1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4662b1
mov dword [ebp - 0x1778], 0
jmp 0x466190
cmp dword [ebp - 0x1778], 0xf
jae 0x4662ac
cvtsi2sd xmm0, dword [ebp - 0x1778]
movsd xmm1, qword [ebp - 0xabc0]
addsd xmm1, xmm0
movsd qword [ebp - 0xabc8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xabc8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4661ff
mov ecx, dword [ebp - 0x1778]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xabc0]
addsd xmm1, xmm0
movsd qword [ebp - 0xabc0], xmm1
jmp 0x4660fb
cvtsi2sd xmm0, dword [ebp - 0x1778]
movsd xmm1, qword [ebp - 0xabc0]
addsd xmm1, xmm0
movsd qword [ebp - 0xabd0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xabd0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46625c
mov eax, dword [ebp - 0x1778]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xabc0]
addsd xmm1, xmm0
movsd qword [ebp - 0xabc0], xmm1
jmp 0x466275
mov ecx, 1
test ecx, ecx
je 0x466271
jmp 0x466331
jmp 0x466298
cvtsi2sd xmm0, dword [ebp - 0x1778]
movsd xmm1, qword [ebp - 0xabc0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x177c], edx
jmp 0x46633b
xor eax, eax
je 0x4662a2
jmp 0x4662b1
jmp 0x4660fb
jmp 0x4660fb
mov ecx, 2
test ecx, ecx
je 0x466331
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1780], eax
cvtsi2sd xmm0, dword [ebp - 0x1780]
mov eax, dword [ebp - 0x1780]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xabc0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x177c], ecx
jmp 0x46633b
mov dword [ebp - 0x177c], 8
mov edx, dword [ebp - 0x1774]
shl edx, 2
add edx, dword [ebp - 0x1770]
mov eax, dword [ebp - 0x177c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1774]
shl ecx, 2
add ecx, dword [ebp - 0x1770]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x466e81
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x466673
xor eax, eax
je 0x4663e5
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x466421
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e30]
movsd qword [ebp - 0xabd8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4665c1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4665c1
mov dword [ebp - 0x1784], 0
jmp 0x4664a0
cmp dword [ebp - 0x1784], 0xf
jae 0x4665bc
cvtsi2sd xmm0, dword [ebp - 0x1784]
movsd xmm1, qword [ebp - 0xabd8]
addsd xmm1, xmm0
movsd qword [ebp - 0xabe0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xabe0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46650f
mov ecx, dword [ebp - 0x1784]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xabd8]
addsd xmm1, xmm0
movsd qword [ebp - 0xabd8], xmm1
jmp 0x46640b
cvtsi2sd xmm0, dword [ebp - 0x1784]
movsd xmm1, qword [ebp - 0xabd8]
addsd xmm1, xmm0
movsd qword [ebp - 0xabe8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xabe8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46656c
mov eax, dword [ebp - 0x1784]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xabd8]
addsd xmm1, xmm0
movsd qword [ebp - 0xabd8], xmm1
jmp 0x466585
mov ecx, 1
test ecx, ecx
je 0x466581
jmp 0x466641
jmp 0x4665a8
cvtsi2sd xmm0, dword [ebp - 0x1784]
movsd xmm1, qword [ebp - 0xabd8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1788], edx
jmp 0x46664b
xor eax, eax
je 0x4665b2
jmp 0x4665c1
jmp 0x46640b
jmp 0x46640b
mov ecx, 2
test ecx, ecx
je 0x466641
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x178c], eax
cvtsi2sd xmm0, dword [ebp - 0x178c]
mov eax, dword [ebp - 0x178c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xabd8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1788], ecx
jmp 0x46664b
mov dword [ebp - 0x1788], 8
mov edx, dword [ebp - 0x1774]
shl edx, 2
add edx, dword [ebp - 0x1770]
mov eax, dword [ebp - 0x1788]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1774]
shl ecx, 2
add ecx, dword [ebp - 0x1770]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46693e
xor eax, eax
je 0x4666b0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4666ec
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e28]
movsd qword [ebp - 0xabf0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46688c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46688c
mov dword [ebp - 0x1790], 0
jmp 0x46676b
cmp dword [ebp - 0x1790], 0xf
jae 0x466887
cvtsi2sd xmm0, dword [ebp - 0x1790]
movsd xmm1, qword [ebp - 0xabf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xabf8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xabf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4667da
mov ecx, dword [ebp - 0x1790]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xabf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xabf0], xmm1
jmp 0x4666d6
cvtsi2sd xmm0, dword [ebp - 0x1790]
movsd xmm1, qword [ebp - 0xabf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xac00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xac00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x466837
mov eax, dword [ebp - 0x1790]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xabf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xabf0], xmm1
jmp 0x466850
mov ecx, 1
test ecx, ecx
je 0x46684c
jmp 0x46690c
jmp 0x466873
cvtsi2sd xmm0, dword [ebp - 0x1790]
movsd xmm1, qword [ebp - 0xabf0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1794], edx
jmp 0x466916
xor eax, eax
je 0x46687d
jmp 0x46688c
jmp 0x4666d6
jmp 0x4666d6
mov ecx, 2
test ecx, ecx
je 0x46690c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1798], eax
cvtsi2sd xmm0, dword [ebp - 0x1798]
mov eax, dword [ebp - 0x1798]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xabf0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1794], ecx
jmp 0x466916
mov dword [ebp - 0x1794], 8
mov edx, dword [ebp - 0x1774]
shl edx, 2
add edx, dword [ebp - 0x1770]
mov eax, dword [ebp - 0x1794]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1774]
shl ecx, 2
add ecx, dword [ebp - 0x1770]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1774]
add edx, 0xffffffb7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xac08], xmm0
xor eax, eax
je 0x466958
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x466994
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xac08]
movsd qword [ebp - 0xac10], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x466b34
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x466b34
mov dword [ebp - 0x179c], 0
jmp 0x466a13
cmp dword [ebp - 0x179c], 0xf
jae 0x466b2f
cvtsi2sd xmm0, dword [ebp - 0x179c]
movsd xmm1, qword [ebp - 0xac10]
addsd xmm1, xmm0
movsd qword [ebp - 0xac18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xac18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x466a82
mov ecx, dword [ebp - 0x179c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xac10]
addsd xmm1, xmm0
movsd qword [ebp - 0xac10], xmm1
jmp 0x46697e
cvtsi2sd xmm0, dword [ebp - 0x179c]
movsd xmm1, qword [ebp - 0xac10]
addsd xmm1, xmm0
movsd qword [ebp - 0xac20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xac20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x466adf
mov eax, dword [ebp - 0x179c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xac10]
addsd xmm1, xmm0
movsd qword [ebp - 0xac10], xmm1
jmp 0x466af8
mov ecx, 1
test ecx, ecx
je 0x466af4
jmp 0x466bb4
jmp 0x466b1b
cvtsi2sd xmm0, dword [ebp - 0x179c]
movsd xmm1, qword [ebp - 0xac10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x17a0], edx
jmp 0x466bbe
xor eax, eax
je 0x466b25
jmp 0x466b34
jmp 0x46697e
jmp 0x46697e
mov ecx, 2
test ecx, ecx
je 0x466bb4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x17a4], eax
cvtsi2sd xmm0, dword [ebp - 0x17a4]
mov eax, dword [ebp - 0x17a4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xac10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x17a0], ecx
jmp 0x466bbe
mov dword [ebp - 0x17a0], 8
mov edx, dword [ebp - 0x1774]
add edx, 0xffffffb7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xac28], xmm0
xor eax, eax
je 0x466bd8
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x466c14
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xac28]
movsd qword [ebp - 0xac30], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x466db4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x466db4
mov dword [ebp - 0x17a8], 0
jmp 0x466c93
cmp dword [ebp - 0x17a8], 0xf
jae 0x466daf
cvtsi2sd xmm0, dword [ebp - 0x17a8]
movsd xmm1, qword [ebp - 0xac30]
addsd xmm1, xmm0
movsd qword [ebp - 0xac38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xac38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x466d02
mov ecx, dword [ebp - 0x17a8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xac30]
addsd xmm1, xmm0
movsd qword [ebp - 0xac30], xmm1
jmp 0x466bfe
cvtsi2sd xmm0, dword [ebp - 0x17a8]
movsd xmm1, qword [ebp - 0xac30]
addsd xmm1, xmm0
movsd qword [ebp - 0xac40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xac40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x466d5f
mov eax, dword [ebp - 0x17a8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xac30]
addsd xmm1, xmm0
movsd qword [ebp - 0xac30], xmm1
jmp 0x466d78
mov ecx, 1
test ecx, ecx
je 0x466d74
jmp 0x466e34
jmp 0x466d9b
cvtsi2sd xmm0, dword [ebp - 0x17a8]
movsd xmm1, qword [ebp - 0xac30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x17ac], edx
jmp 0x466e3e
xor eax, eax
je 0x466da5
jmp 0x466db4
jmp 0x466bfe
jmp 0x466bfe
mov ecx, 2
test ecx, ecx
je 0x466e34
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x17b0], eax
cvtsi2sd xmm0, dword [ebp - 0x17b0]
mov eax, dword [ebp - 0x17b0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xac30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x17ac], ecx
jmp 0x466e3e
mov dword [ebp - 0x17ac], 8
mov edx, dword [ebp - 0x1774]
shl edx, 2
add edx, dword [ebp - 0x1770]
mov eax, dword [ebp - 0x17a0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1774]
shl ecx, 2
add ecx, dword [ebp - 0x1770]
mov edx, dword [ebp - 0x17ac]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1774]
shl ecx, 2
add ecx, dword [ebp - 0x1770]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46714c
xor eax, eax
je 0x466ebe
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x466efa
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e20]
movsd qword [ebp - 0xac48], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46709a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46709a
mov dword [ebp - 0x17b4], 0
jmp 0x466f79
cmp dword [ebp - 0x17b4], 0xf
jae 0x467095
cvtsi2sd xmm0, dword [ebp - 0x17b4]
movsd xmm1, qword [ebp - 0xac48]
addsd xmm1, xmm0
movsd qword [ebp - 0xac50], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xac50]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x466fe8
mov ecx, dword [ebp - 0x17b4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xac48]
addsd xmm1, xmm0
movsd qword [ebp - 0xac48], xmm1
jmp 0x466ee4
cvtsi2sd xmm0, dword [ebp - 0x17b4]
movsd xmm1, qword [ebp - 0xac48]
addsd xmm1, xmm0
movsd qword [ebp - 0xac58], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xac58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x467045
mov eax, dword [ebp - 0x17b4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xac48]
addsd xmm1, xmm0
movsd qword [ebp - 0xac48], xmm1
jmp 0x46705e
mov ecx, 1
test ecx, ecx
je 0x46705a
jmp 0x46711a
jmp 0x467081
cvtsi2sd xmm0, dword [ebp - 0x17b4]
movsd xmm1, qword [ebp - 0xac48]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x17b8], edx
jmp 0x467124
xor eax, eax
je 0x46708b
jmp 0x46709a
jmp 0x466ee4
jmp 0x466ee4
mov ecx, 2
test ecx, ecx
je 0x46711a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x17bc], eax
cvtsi2sd xmm0, dword [ebp - 0x17bc]
mov eax, dword [ebp - 0x17bc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xac48]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x17b8], ecx
jmp 0x467124
mov dword [ebp - 0x17b8], 8
mov edx, dword [ebp - 0x1774]
shl edx, 2
add edx, dword [ebp - 0x1770]
mov eax, dword [ebp - 0x17b8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1774]
shl ecx, 2
add ecx, dword [ebp - 0x1770]
mov dword [ecx], eax
jmp 0x46607c
mov edx, dword [ebp - 0x176c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x176c]
mov dword [ebp - 0x17c0], eax
mov ecx, dword [ebp - 0x17c0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x17c4], ecx
mov edx, dword [ebp - 0x17c4]
mov dword [ebp - 0x17c8], edx
xor eax, eax
mov byte [ebp - 0x3e], al
lea ecx, [ebp - 0x3e]
call fcn.00425670
mov dword [ebp - 0x17cc], eax
mov ecx, dword [ebp - 0x17cc]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x46829c
mov eax, dword [ebp - 0x17cc]
mov dword [ebp - 0x17d0], eax
mov dword [ebp - 0x17d4], 0
jmp 0x4671d6
mov ecx, dword [ebp - 0x17d4]
add ecx, 1
mov dword [ebp - 0x17d4], ecx
cmp dword [ebp - 0x17d4], 1
jae 0x46829c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4674ae
xor eax, eax
je 0x467220
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46725c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e38]
movsd qword [ebp - 0xac60], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4673fc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4673fc
mov dword [ebp - 0x17d8], 0
jmp 0x4672db
cmp dword [ebp - 0x17d8], 0xf
jae 0x4673f7
cvtsi2sd xmm0, dword [ebp - 0x17d8]
movsd xmm1, qword [ebp - 0xac60]
addsd xmm1, xmm0
movsd qword [ebp - 0xac68], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xac68]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46734a
mov ecx, dword [ebp - 0x17d8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xac60]
addsd xmm1, xmm0
movsd qword [ebp - 0xac60], xmm1
jmp 0x467246
cvtsi2sd xmm0, dword [ebp - 0x17d8]
movsd xmm1, qword [ebp - 0xac60]
addsd xmm1, xmm0
movsd qword [ebp - 0xac70], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xac70]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4673a7
mov eax, dword [ebp - 0x17d8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xac60]
addsd xmm1, xmm0
movsd qword [ebp - 0xac60], xmm1
jmp 0x4673c0
mov ecx, 1
test ecx, ecx
je 0x4673bc
jmp 0x46747c
jmp 0x4673e3
cvtsi2sd xmm0, dword [ebp - 0x17d8]
movsd xmm1, qword [ebp - 0xac60]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x17dc], edx
jmp 0x467486
xor eax, eax
je 0x4673ed
jmp 0x4673fc
jmp 0x467246
jmp 0x467246
mov ecx, 2
test ecx, ecx
je 0x46747c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x17e0], eax
cvtsi2sd xmm0, dword [ebp - 0x17e0]
mov eax, dword [ebp - 0x17e0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xac60]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x17dc], ecx
jmp 0x467486
mov dword [ebp - 0x17dc], 8
mov edx, dword [ebp - 0x17d4]
shl edx, 2
add edx, dword [ebp - 0x17d0]
mov eax, dword [ebp - 0x17dc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x17d4]
shl ecx, 2
add ecx, dword [ebp - 0x17d0]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x467fcc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4677be
xor eax, eax
je 0x467530
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46756c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e30]
movsd qword [ebp - 0xac78], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46770c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46770c
mov dword [ebp - 0x17e4], 0
jmp 0x4675eb
cmp dword [ebp - 0x17e4], 0xf
jae 0x467707
cvtsi2sd xmm0, dword [ebp - 0x17e4]
movsd xmm1, qword [ebp - 0xac78]
addsd xmm1, xmm0
movsd qword [ebp - 0xac80], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xac80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46765a
mov ecx, dword [ebp - 0x17e4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xac78]
addsd xmm1, xmm0
movsd qword [ebp - 0xac78], xmm1
jmp 0x467556
cvtsi2sd xmm0, dword [ebp - 0x17e4]
movsd xmm1, qword [ebp - 0xac78]
addsd xmm1, xmm0
movsd qword [ebp - 0xac88], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xac88]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4676b7
mov eax, dword [ebp - 0x17e4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xac78]
addsd xmm1, xmm0
movsd qword [ebp - 0xac78], xmm1
jmp 0x4676d0
mov ecx, 1
test ecx, ecx
je 0x4676cc
jmp 0x46778c
jmp 0x4676f3
cvtsi2sd xmm0, dword [ebp - 0x17e4]
movsd xmm1, qword [ebp - 0xac78]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x17e8], edx
jmp 0x467796
xor eax, eax
je 0x4676fd
jmp 0x46770c
jmp 0x467556
jmp 0x467556
mov ecx, 2
test ecx, ecx
je 0x46778c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x17ec], eax
cvtsi2sd xmm0, dword [ebp - 0x17ec]
mov eax, dword [ebp - 0x17ec]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xac78]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x17e8], ecx
jmp 0x467796
mov dword [ebp - 0x17e8], 8
mov edx, dword [ebp - 0x17d4]
shl edx, 2
add edx, dword [ebp - 0x17d0]
mov eax, dword [ebp - 0x17e8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x17d4]
shl ecx, 2
add ecx, dword [ebp - 0x17d0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x467a89
xor eax, eax
je 0x4677fb
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x467837
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e28]
movsd qword [ebp - 0xac90], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4679d7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4679d7
mov dword [ebp - 0x17f0], 0
jmp 0x4678b6
cmp dword [ebp - 0x17f0], 0xf
jae 0x4679d2
cvtsi2sd xmm0, dword [ebp - 0x17f0]
movsd xmm1, qword [ebp - 0xac90]
addsd xmm1, xmm0
movsd qword [ebp - 0xac98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xac98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x467925
mov ecx, dword [ebp - 0x17f0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xac90]
addsd xmm1, xmm0
movsd qword [ebp - 0xac90], xmm1
jmp 0x467821
cvtsi2sd xmm0, dword [ebp - 0x17f0]
movsd xmm1, qword [ebp - 0xac90]
addsd xmm1, xmm0
movsd qword [ebp - 0xaca0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaca0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x467982
mov eax, dword [ebp - 0x17f0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xac90]
addsd xmm1, xmm0
movsd qword [ebp - 0xac90], xmm1
jmp 0x46799b
mov ecx, 1
test ecx, ecx
je 0x467997
jmp 0x467a57
jmp 0x4679be
cvtsi2sd xmm0, dword [ebp - 0x17f0]
movsd xmm1, qword [ebp - 0xac90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x17f4], edx
jmp 0x467a61
xor eax, eax
je 0x4679c8
jmp 0x4679d7
jmp 0x467821
jmp 0x467821
mov ecx, 2
test ecx, ecx
je 0x467a57
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x17f8], eax
cvtsi2sd xmm0, dword [ebp - 0x17f8]
mov eax, dword [ebp - 0x17f8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xac90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x17f4], ecx
jmp 0x467a61
mov dword [ebp - 0x17f4], 8
mov edx, dword [ebp - 0x17d4]
shl edx, 2
add edx, dword [ebp - 0x17d0]
mov eax, dword [ebp - 0x17f4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x17d4]
shl ecx, 2
add ecx, dword [ebp - 0x17d0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x17d4]
add edx, 0xffffffb7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xaca8], xmm0
xor eax, eax
je 0x467aa3
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x467adf
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xaca8]
movsd qword [ebp - 0xacb0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x467c7f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x467c7f
mov dword [ebp - 0x17fc], 0
jmp 0x467b5e
cmp dword [ebp - 0x17fc], 0xf
jae 0x467c7a
cvtsi2sd xmm0, dword [ebp - 0x17fc]
movsd xmm1, qword [ebp - 0xacb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xacb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xacb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x467bcd
mov ecx, dword [ebp - 0x17fc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xacb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xacb0], xmm1
jmp 0x467ac9
cvtsi2sd xmm0, dword [ebp - 0x17fc]
movsd xmm1, qword [ebp - 0xacb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xacc0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xacc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x467c2a
mov eax, dword [ebp - 0x17fc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xacb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xacb0], xmm1
jmp 0x467c43
mov ecx, 1
test ecx, ecx
je 0x467c3f
jmp 0x467cff
jmp 0x467c66
cvtsi2sd xmm0, dword [ebp - 0x17fc]
movsd xmm1, qword [ebp - 0xacb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1800], edx
jmp 0x467d09
xor eax, eax
je 0x467c70
jmp 0x467c7f
jmp 0x467ac9
jmp 0x467ac9
mov ecx, 2
test ecx, ecx
je 0x467cff
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1804], eax
cvtsi2sd xmm0, dword [ebp - 0x1804]
mov eax, dword [ebp - 0x1804]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xacb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1800], ecx
jmp 0x467d09
mov dword [ebp - 0x1800], 8
mov edx, dword [ebp - 0x17d4]
add edx, 0xffffffb7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xacc8], xmm0
xor eax, eax
je 0x467d23
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x467d5f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xacc8]
movsd qword [ebp - 0xacd0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x467eff
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x467eff
mov dword [ebp - 0x1808], 0
jmp 0x467dde
cmp dword [ebp - 0x1808], 0xf
jae 0x467efa
cvtsi2sd xmm0, dword [ebp - 0x1808]
movsd xmm1, qword [ebp - 0xacd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xacd8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xacd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x467e4d
mov ecx, dword [ebp - 0x1808]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xacd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xacd0], xmm1
jmp 0x467d49
cvtsi2sd xmm0, dword [ebp - 0x1808]
movsd xmm1, qword [ebp - 0xacd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xace0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xace0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x467eaa
mov eax, dword [ebp - 0x1808]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xacd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xacd0], xmm1
jmp 0x467ec3
mov ecx, 1
test ecx, ecx
je 0x467ebf
jmp 0x467f7f
jmp 0x467ee6
cvtsi2sd xmm0, dword [ebp - 0x1808]
movsd xmm1, qword [ebp - 0xacd0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x180c], edx
jmp 0x467f89
xor eax, eax
je 0x467ef0
jmp 0x467eff
jmp 0x467d49
jmp 0x467d49
mov ecx, 2
test ecx, ecx
je 0x467f7f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1810], eax
cvtsi2sd xmm0, dword [ebp - 0x1810]
mov eax, dword [ebp - 0x1810]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xacd0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x180c], ecx
jmp 0x467f89
mov dword [ebp - 0x180c], 8
mov edx, dword [ebp - 0x17d4]
shl edx, 2
add edx, dword [ebp - 0x17d0]
mov eax, dword [ebp - 0x1800]
add eax, dword [edx]
mov ecx, dword [ebp - 0x17d4]
shl ecx, 2
add ecx, dword [ebp - 0x17d0]
mov edx, dword [ebp - 0x180c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x17d4]
shl ecx, 2
add ecx, dword [ebp - 0x17d0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x468297
xor eax, eax
je 0x468009
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x468045
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e20]
movsd qword [ebp - 0xace8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4681e5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4681e5
mov dword [ebp - 0x1814], 0
jmp 0x4680c4
cmp dword [ebp - 0x1814], 0xf
jae 0x4681e0
cvtsi2sd xmm0, dword [ebp - 0x1814]
movsd xmm1, qword [ebp - 0xace8]
addsd xmm1, xmm0
movsd qword [ebp - 0xacf0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xacf0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x468133
mov ecx, dword [ebp - 0x1814]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xace8]
addsd xmm1, xmm0
movsd qword [ebp - 0xace8], xmm1
jmp 0x46802f
cvtsi2sd xmm0, dword [ebp - 0x1814]
movsd xmm1, qword [ebp - 0xace8]
addsd xmm1, xmm0
movsd qword [ebp - 0xacf8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xacf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x468190
mov eax, dword [ebp - 0x1814]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xace8]
addsd xmm1, xmm0
movsd qword [ebp - 0xace8], xmm1
jmp 0x4681a9
mov ecx, 1
test ecx, ecx
je 0x4681a5
jmp 0x468265
jmp 0x4681cc
cvtsi2sd xmm0, dword [ebp - 0x1814]
movsd xmm1, qword [ebp - 0xace8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1818], edx
jmp 0x46826f
xor eax, eax
je 0x4681d6
jmp 0x4681e5
jmp 0x46802f
jmp 0x46802f
mov ecx, 2
test ecx, ecx
je 0x468265
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x181c], eax
cvtsi2sd xmm0, dword [ebp - 0x181c]
mov eax, dword [ebp - 0x181c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xace8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1818], ecx
jmp 0x46826f
mov dword [ebp - 0x1818], 8
mov edx, dword [ebp - 0x17d4]
shl edx, 2
add edx, dword [ebp - 0x17d0]
mov eax, dword [ebp - 0x1818]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x17d4]
shl ecx, 2
add ecx, dword [ebp - 0x17d0]
mov dword [ecx], eax
jmp 0x4671c7
mov edx, dword [ebp - 0x17cc]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x17cc]
mov dword [ebp - 0x1820], eax
mov ecx, dword [ebp - 0x1820]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1824], ecx
mov edx, dword [ebp - 0x1824]
mov dword [ebp - 0x1828], edx
xor eax, eax
mov byte [ebp - 0x3f], al
lea ecx, [ebp - 0x3f]
call fcn.00425640
mov dword [ebp - 0x182c], eax
mov ecx, dword [ebp - 0x182c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4693e7
mov eax, dword [ebp - 0x182c]
mov dword [ebp - 0x1830], eax
mov dword [ebp - 0x1834], 0
jmp 0x468321
mov ecx, dword [ebp - 0x1834]
add ecx, 1
mov dword [ebp - 0x1834], ecx
cmp dword [ebp - 0x1834], 1
jae 0x4693e7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4685f9
xor eax, eax
je 0x46836b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4683a7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e30]
movsd qword [ebp - 0xad00], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x468547
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x468547
mov dword [ebp - 0x1838], 0
jmp 0x468426
cmp dword [ebp - 0x1838], 0xf
jae 0x468542
cvtsi2sd xmm0, dword [ebp - 0x1838]
movsd xmm1, qword [ebp - 0xad00]
addsd xmm1, xmm0
movsd qword [ebp - 0xad08], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xad08]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x468495
mov ecx, dword [ebp - 0x1838]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xad00]
addsd xmm1, xmm0
movsd qword [ebp - 0xad00], xmm1
jmp 0x468391
cvtsi2sd xmm0, dword [ebp - 0x1838]
movsd xmm1, qword [ebp - 0xad00]
addsd xmm1, xmm0
movsd qword [ebp - 0xad10], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xad10]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4684f2
mov eax, dword [ebp - 0x1838]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xad00]
addsd xmm1, xmm0
movsd qword [ebp - 0xad00], xmm1
jmp 0x46850b
mov ecx, 1
test ecx, ecx
je 0x468507
jmp 0x4685c7
jmp 0x46852e
cvtsi2sd xmm0, dword [ebp - 0x1838]
movsd xmm1, qword [ebp - 0xad00]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x183c], edx
jmp 0x4685d1
xor eax, eax
je 0x468538
jmp 0x468547
jmp 0x468391
jmp 0x468391
mov ecx, 2
test ecx, ecx
je 0x4685c7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1840], eax
cvtsi2sd xmm0, dword [ebp - 0x1840]
mov eax, dword [ebp - 0x1840]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xad00]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x183c], ecx
jmp 0x4685d1
mov dword [ebp - 0x183c], 8
mov edx, dword [ebp - 0x1834]
shl edx, 2
add edx, dword [ebp - 0x1830]
mov eax, dword [ebp - 0x183c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1834]
shl ecx, 2
add ecx, dword [ebp - 0x1830]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x469117
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x468909
xor eax, eax
je 0x46867b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4686b7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e28]
movsd qword [ebp - 0xad18], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x468857
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x468857
mov dword [ebp - 0x1844], 0
jmp 0x468736
cmp dword [ebp - 0x1844], 0xf
jae 0x468852
cvtsi2sd xmm0, dword [ebp - 0x1844]
movsd xmm1, qword [ebp - 0xad18]
addsd xmm1, xmm0
movsd qword [ebp - 0xad20], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xad20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4687a5
mov ecx, dword [ebp - 0x1844]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xad18]
addsd xmm1, xmm0
movsd qword [ebp - 0xad18], xmm1
jmp 0x4686a1
cvtsi2sd xmm0, dword [ebp - 0x1844]
movsd xmm1, qword [ebp - 0xad18]
addsd xmm1, xmm0
movsd qword [ebp - 0xad28], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xad28]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x468802
mov eax, dword [ebp - 0x1844]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xad18]
addsd xmm1, xmm0
movsd qword [ebp - 0xad18], xmm1
jmp 0x46881b
mov ecx, 1
test ecx, ecx
je 0x468817
jmp 0x4688d7
jmp 0x46883e
cvtsi2sd xmm0, dword [ebp - 0x1844]
movsd xmm1, qword [ebp - 0xad18]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1848], edx
jmp 0x4688e1
xor eax, eax
je 0x468848
jmp 0x468857
jmp 0x4686a1
jmp 0x4686a1
mov ecx, 2
test ecx, ecx
je 0x4688d7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x184c], eax
cvtsi2sd xmm0, dword [ebp - 0x184c]
mov eax, dword [ebp - 0x184c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xad18]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1848], ecx
jmp 0x4688e1
mov dword [ebp - 0x1848], 8
mov edx, dword [ebp - 0x1834]
shl edx, 2
add edx, dword [ebp - 0x1830]
mov eax, dword [ebp - 0x1848]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1834]
shl ecx, 2
add ecx, dword [ebp - 0x1830]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x468bd4
xor eax, eax
je 0x468946
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x468982
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e20]
movsd qword [ebp - 0xad30], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x468b22
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x468b22
mov dword [ebp - 0x1850], 0
jmp 0x468a01
cmp dword [ebp - 0x1850], 0xf
jae 0x468b1d
cvtsi2sd xmm0, dword [ebp - 0x1850]
movsd xmm1, qword [ebp - 0xad30]
addsd xmm1, xmm0
movsd qword [ebp - 0xad38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xad38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x468a70
mov ecx, dword [ebp - 0x1850]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xad30]
addsd xmm1, xmm0
movsd qword [ebp - 0xad30], xmm1
jmp 0x46896c
cvtsi2sd xmm0, dword [ebp - 0x1850]
movsd xmm1, qword [ebp - 0xad30]
addsd xmm1, xmm0
movsd qword [ebp - 0xad40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xad40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x468acd
mov eax, dword [ebp - 0x1850]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xad30]
addsd xmm1, xmm0
movsd qword [ebp - 0xad30], xmm1
jmp 0x468ae6
mov ecx, 1
test ecx, ecx
je 0x468ae2
jmp 0x468ba2
jmp 0x468b09
cvtsi2sd xmm0, dword [ebp - 0x1850]
movsd xmm1, qword [ebp - 0xad30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1854], edx
jmp 0x468bac
xor eax, eax
je 0x468b13
jmp 0x468b22
jmp 0x46896c
jmp 0x46896c
mov ecx, 2
test ecx, ecx
je 0x468ba2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1858], eax
cvtsi2sd xmm0, dword [ebp - 0x1858]
mov eax, dword [ebp - 0x1858]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xad30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1854], ecx
jmp 0x468bac
mov dword [ebp - 0x1854], 8
mov edx, dword [ebp - 0x1834]
shl edx, 2
add edx, dword [ebp - 0x1830]
mov eax, dword [ebp - 0x1854]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1834]
shl ecx, 2
add ecx, dword [ebp - 0x1830]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1834]
add edx, 0xffffffb8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xad48], xmm0
xor eax, eax
je 0x468bee
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x468c2a
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xad48]
movsd qword [ebp - 0xad50], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x468dca
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x468dca
mov dword [ebp - 0x185c], 0
jmp 0x468ca9
cmp dword [ebp - 0x185c], 0xf
jae 0x468dc5
cvtsi2sd xmm0, dword [ebp - 0x185c]
movsd xmm1, qword [ebp - 0xad50]
addsd xmm1, xmm0
movsd qword [ebp - 0xad58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xad58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x468d18
mov ecx, dword [ebp - 0x185c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xad50]
addsd xmm1, xmm0
movsd qword [ebp - 0xad50], xmm1
jmp 0x468c14
cvtsi2sd xmm0, dword [ebp - 0x185c]
movsd xmm1, qword [ebp - 0xad50]
addsd xmm1, xmm0
movsd qword [ebp - 0xad60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xad60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x468d75
mov eax, dword [ebp - 0x185c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xad50]
addsd xmm1, xmm0
movsd qword [ebp - 0xad50], xmm1
jmp 0x468d8e
mov ecx, 1
test ecx, ecx
je 0x468d8a
jmp 0x468e4a
jmp 0x468db1
cvtsi2sd xmm0, dword [ebp - 0x185c]
movsd xmm1, qword [ebp - 0xad50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1860], edx
jmp 0x468e54
xor eax, eax
je 0x468dbb
jmp 0x468dca
jmp 0x468c14
jmp 0x468c14
mov ecx, 2
test ecx, ecx
je 0x468e4a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1864], eax
cvtsi2sd xmm0, dword [ebp - 0x1864]
mov eax, dword [ebp - 0x1864]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xad50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1860], ecx
jmp 0x468e54
mov dword [ebp - 0x1860], 8
mov edx, dword [ebp - 0x1834]
add edx, 0xffffffb8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xad68], xmm0
xor eax, eax
je 0x468e6e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x468eaa
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xad68]
movsd qword [ebp - 0xad70], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46904a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46904a
mov dword [ebp - 0x1868], 0
jmp 0x468f29
cmp dword [ebp - 0x1868], 0xf
jae 0x469045
cvtsi2sd xmm0, dword [ebp - 0x1868]
movsd xmm1, qword [ebp - 0xad70]
addsd xmm1, xmm0
movsd qword [ebp - 0xad78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xad78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x468f98
mov ecx, dword [ebp - 0x1868]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xad70]
addsd xmm1, xmm0
movsd qword [ebp - 0xad70], xmm1
jmp 0x468e94
cvtsi2sd xmm0, dword [ebp - 0x1868]
movsd xmm1, qword [ebp - 0xad70]
addsd xmm1, xmm0
movsd qword [ebp - 0xad80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xad80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x468ff5
mov eax, dword [ebp - 0x1868]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xad70]
addsd xmm1, xmm0
movsd qword [ebp - 0xad70], xmm1
jmp 0x46900e
mov ecx, 1
test ecx, ecx
je 0x46900a
jmp 0x4690ca
jmp 0x469031
cvtsi2sd xmm0, dword [ebp - 0x1868]
movsd xmm1, qword [ebp - 0xad70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x186c], edx
jmp 0x4690d4
xor eax, eax
je 0x46903b
jmp 0x46904a
jmp 0x468e94
jmp 0x468e94
mov ecx, 2
test ecx, ecx
je 0x4690ca
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1870], eax
cvtsi2sd xmm0, dword [ebp - 0x1870]
mov eax, dword [ebp - 0x1870]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xad70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x186c], ecx
jmp 0x4690d4
mov dword [ebp - 0x186c], 8
mov edx, dword [ebp - 0x1834]
shl edx, 2
add edx, dword [ebp - 0x1830]
mov eax, dword [ebp - 0x1860]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1834]
shl ecx, 2
add ecx, dword [ebp - 0x1830]
mov edx, dword [ebp - 0x186c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1834]
shl ecx, 2
add ecx, dword [ebp - 0x1830]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4693e2
xor eax, eax
je 0x469154
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x469190
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e18]
movsd qword [ebp - 0xad88], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x469330
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x469330
mov dword [ebp - 0x1874], 0
jmp 0x46920f
cmp dword [ebp - 0x1874], 0xf
jae 0x46932b
cvtsi2sd xmm0, dword [ebp - 0x1874]
movsd xmm1, qword [ebp - 0xad88]
addsd xmm1, xmm0
movsd qword [ebp - 0xad90], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xad90]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46927e
mov ecx, dword [ebp - 0x1874]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xad88]
addsd xmm1, xmm0
movsd qword [ebp - 0xad88], xmm1
jmp 0x46917a
cvtsi2sd xmm0, dword [ebp - 0x1874]
movsd xmm1, qword [ebp - 0xad88]
addsd xmm1, xmm0
movsd qword [ebp - 0xad98], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xad98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4692db
mov eax, dword [ebp - 0x1874]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xad88]
addsd xmm1, xmm0
movsd qword [ebp - 0xad88], xmm1
jmp 0x4692f4
mov ecx, 1
test ecx, ecx
je 0x4692f0
jmp 0x4693b0
jmp 0x469317
cvtsi2sd xmm0, dword [ebp - 0x1874]
movsd xmm1, qword [ebp - 0xad88]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1878], edx
jmp 0x4693ba
xor eax, eax
je 0x469321
jmp 0x469330
jmp 0x46917a
jmp 0x46917a
mov ecx, 2
test ecx, ecx
je 0x4693b0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x187c], eax
cvtsi2sd xmm0, dword [ebp - 0x187c]
mov eax, dword [ebp - 0x187c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xad88]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1878], ecx
jmp 0x4693ba
mov dword [ebp - 0x1878], 8
mov edx, dword [ebp - 0x1834]
shl edx, 2
add edx, dword [ebp - 0x1830]
mov eax, dword [ebp - 0x1878]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1834]
shl ecx, 2
add ecx, dword [ebp - 0x1830]
mov dword [ecx], eax
jmp 0x468312
mov edx, dword [ebp - 0x182c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x182c]
mov dword [ebp - 0x1880], eax
mov ecx, dword [ebp - 0x1880]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1884], ecx
mov edx, dword [ebp - 0x1884]
mov dword [ebp - 0x1888], edx
mov eax, dword [ebp - 0x1828]
mov dword [ebp - 0x17c8], eax
cmp dword [ebp - 0x17c8], 0
je 0x46a584
xor ecx, ecx
mov byte [ebp - 0x40], cl
lea ecx, [ebp - 0x40]
call fcn.00425610
mov dword [ebp - 0x188c], eax
mov edx, dword [ebp - 0x188c]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x46a54b
mov ecx, dword [ebp - 0x188c]
mov dword [ebp - 0x1890], ecx
mov dword [ebp - 0x1894], 0
jmp 0x469485
mov edx, dword [ebp - 0x1894]
add edx, 1
mov dword [ebp - 0x1894], edx
cmp dword [ebp - 0x1894], 1
jae 0x46a54b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46975d
xor eax, eax
je 0x4694cf
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x46950b
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e30]
movsd qword [ebp - 0xada0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4696ab
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4696ab
mov dword [ebp - 0x1898], 0
jmp 0x46958a
cmp dword [ebp - 0x1898], 0xf
jae 0x4696a6
cvtsi2sd xmm0, dword [ebp - 0x1898]
movsd xmm1, qword [ebp - 0xada0]
addsd xmm1, xmm0
movsd qword [ebp - 0xada8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xada8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4695f9
mov ecx, dword [ebp - 0x1898]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xada0]
addsd xmm1, xmm0
movsd qword [ebp - 0xada0], xmm1
jmp 0x4694f5
cvtsi2sd xmm0, dword [ebp - 0x1898]
movsd xmm1, qword [ebp - 0xada0]
addsd xmm1, xmm0
movsd qword [ebp - 0xadb0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xadb0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x469656
mov eax, dword [ebp - 0x1898]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xada0]
addsd xmm1, xmm0
movsd qword [ebp - 0xada0], xmm1
jmp 0x46966f
mov ecx, 1
test ecx, ecx
je 0x46966b
jmp 0x46972b
jmp 0x469692
cvtsi2sd xmm0, dword [ebp - 0x1898]
movsd xmm1, qword [ebp - 0xada0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x189c], edx
jmp 0x469735
xor eax, eax
je 0x46969c
jmp 0x4696ab
jmp 0x4694f5
jmp 0x4694f5
mov ecx, 2
test ecx, ecx
je 0x46972b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x18a0], eax
cvtsi2sd xmm0, dword [ebp - 0x18a0]
mov eax, dword [ebp - 0x18a0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xada0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x189c], ecx
jmp 0x469735
mov dword [ebp - 0x189c], 8
mov edx, dword [ebp - 0x1894]
shl edx, 2
add edx, dword [ebp - 0x1890]
mov eax, dword [ebp - 0x189c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1894]
shl ecx, 2
add ecx, dword [ebp - 0x1890]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46a27b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x469a6d
xor eax, eax
je 0x4697df
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46981b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e28]
movsd qword [ebp - 0xadb8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4699bb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4699bb
mov dword [ebp - 0x18a4], 0
jmp 0x46989a
cmp dword [ebp - 0x18a4], 0xf
jae 0x4699b6
cvtsi2sd xmm0, dword [ebp - 0x18a4]
movsd xmm1, qword [ebp - 0xadb8]
addsd xmm1, xmm0
movsd qword [ebp - 0xadc0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xadc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x469909
mov ecx, dword [ebp - 0x18a4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xadb8]
addsd xmm1, xmm0
movsd qword [ebp - 0xadb8], xmm1
jmp 0x469805
cvtsi2sd xmm0, dword [ebp - 0x18a4]
movsd xmm1, qword [ebp - 0xadb8]
addsd xmm1, xmm0
movsd qword [ebp - 0xadc8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xadc8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x469966
mov eax, dword [ebp - 0x18a4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xadb8]
addsd xmm1, xmm0
movsd qword [ebp - 0xadb8], xmm1
jmp 0x46997f
mov ecx, 1
test ecx, ecx
je 0x46997b
jmp 0x469a3b
jmp 0x4699a2
cvtsi2sd xmm0, dword [ebp - 0x18a4]
movsd xmm1, qword [ebp - 0xadb8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x18a8], edx
jmp 0x469a45
xor eax, eax
je 0x4699ac
jmp 0x4699bb
jmp 0x469805
jmp 0x469805
mov ecx, 2
test ecx, ecx
je 0x469a3b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x18ac], eax
cvtsi2sd xmm0, dword [ebp - 0x18ac]
mov eax, dword [ebp - 0x18ac]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xadb8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x18a8], ecx
jmp 0x469a45
mov dword [ebp - 0x18a8], 8
mov edx, dword [ebp - 0x1894]
shl edx, 2
add edx, dword [ebp - 0x1890]
mov eax, dword [ebp - 0x18a8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1894]
shl ecx, 2
add ecx, dword [ebp - 0x1890]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x469d38
xor eax, eax
je 0x469aaa
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x469ae6
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e20]
movsd qword [ebp - 0xadd0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x469c86
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x469c86
mov dword [ebp - 0x18b0], 0
jmp 0x469b65
cmp dword [ebp - 0x18b0], 0xf
jae 0x469c81
cvtsi2sd xmm0, dword [ebp - 0x18b0]
movsd xmm1, qword [ebp - 0xadd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xadd8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xadd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x469bd4
mov ecx, dword [ebp - 0x18b0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xadd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xadd0], xmm1
jmp 0x469ad0
cvtsi2sd xmm0, dword [ebp - 0x18b0]
movsd xmm1, qword [ebp - 0xadd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xade0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xade0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x469c31
mov eax, dword [ebp - 0x18b0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xadd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xadd0], xmm1
jmp 0x469c4a
mov ecx, 1
test ecx, ecx
je 0x469c46
jmp 0x469d06
jmp 0x469c6d
cvtsi2sd xmm0, dword [ebp - 0x18b0]
movsd xmm1, qword [ebp - 0xadd0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x18b4], edx
jmp 0x469d10
xor eax, eax
je 0x469c77
jmp 0x469c86
jmp 0x469ad0
jmp 0x469ad0
mov ecx, 2
test ecx, ecx
je 0x469d06
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x18b8], eax
cvtsi2sd xmm0, dword [ebp - 0x18b8]
mov eax, dword [ebp - 0x18b8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xadd0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x18b4], ecx
jmp 0x469d10
mov dword [ebp - 0x18b4], 8
mov edx, dword [ebp - 0x1894]
shl edx, 2
add edx, dword [ebp - 0x1890]
mov eax, dword [ebp - 0x18b4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1894]
shl ecx, 2
add ecx, dword [ebp - 0x1890]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1894]
add edx, 0xffffffb8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xade8], xmm0
xor eax, eax
je 0x469d52
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x469d8e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xade8]
movsd qword [ebp - 0xadf0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x469f2e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x469f2e
mov dword [ebp - 0x18bc], 0
jmp 0x469e0d
cmp dword [ebp - 0x18bc], 0xf
jae 0x469f29
cvtsi2sd xmm0, dword [ebp - 0x18bc]
movsd xmm1, qword [ebp - 0xadf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xadf8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xadf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x469e7c
mov ecx, dword [ebp - 0x18bc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xadf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xadf0], xmm1
jmp 0x469d78
cvtsi2sd xmm0, dword [ebp - 0x18bc]
movsd xmm1, qword [ebp - 0xadf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xae00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xae00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x469ed9
mov eax, dword [ebp - 0x18bc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xadf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xadf0], xmm1
jmp 0x469ef2
mov ecx, 1
test ecx, ecx
je 0x469eee
jmp 0x469fae
jmp 0x469f15
cvtsi2sd xmm0, dword [ebp - 0x18bc]
movsd xmm1, qword [ebp - 0xadf0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x18c0], edx
jmp 0x469fb8
xor eax, eax
je 0x469f1f
jmp 0x469f2e
jmp 0x469d78
jmp 0x469d78
mov ecx, 2
test ecx, ecx
je 0x469fae
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x18c4], eax
cvtsi2sd xmm0, dword [ebp - 0x18c4]
mov eax, dword [ebp - 0x18c4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xadf0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x18c0], ecx
jmp 0x469fb8
mov dword [ebp - 0x18c0], 8
mov edx, dword [ebp - 0x1894]
add edx, 0xffffffb8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xae08], xmm0
xor eax, eax
je 0x469fd2
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46a00e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xae08]
movsd qword [ebp - 0xae10], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46a1ae
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46a1ae
mov dword [ebp - 0x18c8], 0
jmp 0x46a08d
cmp dword [ebp - 0x18c8], 0xf
jae 0x46a1a9
cvtsi2sd xmm0, dword [ebp - 0x18c8]
movsd xmm1, qword [ebp - 0xae10]
addsd xmm1, xmm0
movsd qword [ebp - 0xae18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xae18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46a0fc
mov ecx, dword [ebp - 0x18c8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xae10]
addsd xmm1, xmm0
movsd qword [ebp - 0xae10], xmm1
jmp 0x469ff8
cvtsi2sd xmm0, dword [ebp - 0x18c8]
movsd xmm1, qword [ebp - 0xae10]
addsd xmm1, xmm0
movsd qword [ebp - 0xae20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xae20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46a159
mov eax, dword [ebp - 0x18c8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xae10]
addsd xmm1, xmm0
movsd qword [ebp - 0xae10], xmm1
jmp 0x46a172
mov ecx, 1
test ecx, ecx
je 0x46a16e
jmp 0x46a22e
jmp 0x46a195
cvtsi2sd xmm0, dword [ebp - 0x18c8]
movsd xmm1, qword [ebp - 0xae10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x18cc], edx
jmp 0x46a238
xor eax, eax
je 0x46a19f
jmp 0x46a1ae
jmp 0x469ff8
jmp 0x469ff8
mov ecx, 2
test ecx, ecx
je 0x46a22e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x18d0], eax
cvtsi2sd xmm0, dword [ebp - 0x18d0]
mov eax, dword [ebp - 0x18d0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xae10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x18cc], ecx
jmp 0x46a238
mov dword [ebp - 0x18cc], 8
mov edx, dword [ebp - 0x1894]
shl edx, 2
add edx, dword [ebp - 0x1890]
mov eax, dword [ebp - 0x18c0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1894]
shl ecx, 2
add ecx, dword [ebp - 0x1890]
mov edx, dword [ebp - 0x18cc]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1894]
shl ecx, 2
add ecx, dword [ebp - 0x1890]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46a546
xor eax, eax
je 0x46a2b8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46a2f4
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e18]
movsd qword [ebp - 0xae28], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46a494
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46a494
mov dword [ebp - 0x18d4], 0
jmp 0x46a373
cmp dword [ebp - 0x18d4], 0xf
jae 0x46a48f
cvtsi2sd xmm0, dword [ebp - 0x18d4]
movsd xmm1, qword [ebp - 0xae28]
addsd xmm1, xmm0
movsd qword [ebp - 0xae30], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xae30]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46a3e2
mov ecx, dword [ebp - 0x18d4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xae28]
addsd xmm1, xmm0
movsd qword [ebp - 0xae28], xmm1
jmp 0x46a2de
cvtsi2sd xmm0, dword [ebp - 0x18d4]
movsd xmm1, qword [ebp - 0xae28]
addsd xmm1, xmm0
movsd qword [ebp - 0xae38], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xae38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46a43f
mov eax, dword [ebp - 0x18d4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xae28]
addsd xmm1, xmm0
movsd qword [ebp - 0xae28], xmm1
jmp 0x46a458
mov ecx, 1
test ecx, ecx
je 0x46a454
jmp 0x46a514
jmp 0x46a47b
cvtsi2sd xmm0, dword [ebp - 0x18d4]
movsd xmm1, qword [ebp - 0xae28]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x18d8], edx
jmp 0x46a51e
xor eax, eax
je 0x46a485
jmp 0x46a494
jmp 0x46a2de
jmp 0x46a2de
mov ecx, 2
test ecx, ecx
je 0x46a514
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x18dc], eax
cvtsi2sd xmm0, dword [ebp - 0x18dc]
mov eax, dword [ebp - 0x18dc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xae28]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x18d8], ecx
jmp 0x46a51e
mov dword [ebp - 0x18d8], 8
mov edx, dword [ebp - 0x1894]
shl edx, 2
add edx, dword [ebp - 0x1890]
mov eax, dword [ebp - 0x18d8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1894]
shl ecx, 2
add ecx, dword [ebp - 0x1890]
mov dword [ecx], eax
jmp 0x469476
mov edx, dword [ebp - 0x188c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x188c]
mov dword [ebp - 0x18e0], eax
mov ecx, dword [ebp - 0x18e0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x18e4], ecx
mov edx, dword [ebp - 0x18e4]
mov dword [ebp - 0x1888], edx
xor eax, eax
mov byte [ebp - 0x41], al
xor ecx, ecx
mov byte [ebp - 0x42], cl
lea ecx, [ebp - 0x41]
call fcn.004255b0
mov dword [ebp - 0x18e8], eax
mov edx, dword [ebp - 0x18e8]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x46b69b
mov ecx, dword [ebp - 0x18e8]
mov dword [ebp - 0x18ec], ecx
mov dword [ebp - 0x18f0], 0
jmp 0x46a5d5
mov edx, dword [ebp - 0x18f0]
add edx, 1
mov dword [ebp - 0x18f0], edx
cmp dword [ebp - 0x18f0], 1
jae 0x46b69b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46a8ad
xor eax, eax
je 0x46a61f
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x46a65b
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e30]
movsd qword [ebp - 0xae40], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46a7fb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46a7fb
mov dword [ebp - 0x18f4], 0
jmp 0x46a6da
cmp dword [ebp - 0x18f4], 0xf
jae 0x46a7f6
cvtsi2sd xmm0, dword [ebp - 0x18f4]
movsd xmm1, qword [ebp - 0xae40]
addsd xmm1, xmm0
movsd qword [ebp - 0xae48], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xae48]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46a749
mov ecx, dword [ebp - 0x18f4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xae40]
addsd xmm1, xmm0
movsd qword [ebp - 0xae40], xmm1
jmp 0x46a645
cvtsi2sd xmm0, dword [ebp - 0x18f4]
movsd xmm1, qword [ebp - 0xae40]
addsd xmm1, xmm0
movsd qword [ebp - 0xae50], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xae50]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46a7a6
mov eax, dword [ebp - 0x18f4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xae40]
addsd xmm1, xmm0
movsd qword [ebp - 0xae40], xmm1
jmp 0x46a7bf
mov ecx, 1
test ecx, ecx
je 0x46a7bb
jmp 0x46a87b
jmp 0x46a7e2
cvtsi2sd xmm0, dword [ebp - 0x18f4]
movsd xmm1, qword [ebp - 0xae40]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x18f8], edx
jmp 0x46a885
xor eax, eax
je 0x46a7ec
jmp 0x46a7fb
jmp 0x46a645
jmp 0x46a645
mov ecx, 2
test ecx, ecx
je 0x46a87b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x18fc], eax
cvtsi2sd xmm0, dword [ebp - 0x18fc]
mov eax, dword [ebp - 0x18fc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xae40]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x18f8], ecx
jmp 0x46a885
mov dword [ebp - 0x18f8], 8
mov edx, dword [ebp - 0x18f0]
shl edx, 2
add edx, dword [ebp - 0x18ec]
mov eax, dword [ebp - 0x18f8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x18f0]
shl ecx, 2
add ecx, dword [ebp - 0x18ec]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46b3cb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46abbd
xor eax, eax
je 0x46a92f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46a96b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e28]
movsd qword [ebp - 0xae58], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46ab0b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46ab0b
mov dword [ebp - 0x1900], 0
jmp 0x46a9ea
cmp dword [ebp - 0x1900], 0xf
jae 0x46ab06
cvtsi2sd xmm0, dword [ebp - 0x1900]
movsd xmm1, qword [ebp - 0xae58]
addsd xmm1, xmm0
movsd qword [ebp - 0xae60], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xae60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46aa59
mov ecx, dword [ebp - 0x1900]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xae58]
addsd xmm1, xmm0
movsd qword [ebp - 0xae58], xmm1
jmp 0x46a955
cvtsi2sd xmm0, dword [ebp - 0x1900]
movsd xmm1, qword [ebp - 0xae58]
addsd xmm1, xmm0
movsd qword [ebp - 0xae68], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xae68]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46aab6
mov eax, dword [ebp - 0x1900]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xae58]
addsd xmm1, xmm0
movsd qword [ebp - 0xae58], xmm1
jmp 0x46aacf
mov ecx, 1
test ecx, ecx
je 0x46aacb
jmp 0x46ab8b
jmp 0x46aaf2
cvtsi2sd xmm0, dword [ebp - 0x1900]
movsd xmm1, qword [ebp - 0xae58]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1904], edx
jmp 0x46ab95
xor eax, eax
je 0x46aafc
jmp 0x46ab0b
jmp 0x46a955
jmp 0x46a955
mov ecx, 2
test ecx, ecx
je 0x46ab8b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1908], eax
cvtsi2sd xmm0, dword [ebp - 0x1908]
mov eax, dword [ebp - 0x1908]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xae58]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1904], ecx
jmp 0x46ab95
mov dword [ebp - 0x1904], 8
mov edx, dword [ebp - 0x18f0]
shl edx, 2
add edx, dword [ebp - 0x18ec]
mov eax, dword [ebp - 0x1904]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x18f0]
shl ecx, 2
add ecx, dword [ebp - 0x18ec]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46ae88
xor eax, eax
je 0x46abfa
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46ac36
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e20]
movsd qword [ebp - 0xae70], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46add6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46add6
mov dword [ebp - 0x190c], 0
jmp 0x46acb5
cmp dword [ebp - 0x190c], 0xf
jae 0x46add1
cvtsi2sd xmm0, dword [ebp - 0x190c]
movsd xmm1, qword [ebp - 0xae70]
addsd xmm1, xmm0
movsd qword [ebp - 0xae78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xae78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46ad24
mov ecx, dword [ebp - 0x190c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xae70]
addsd xmm1, xmm0
movsd qword [ebp - 0xae70], xmm1
jmp 0x46ac20
cvtsi2sd xmm0, dword [ebp - 0x190c]
movsd xmm1, qword [ebp - 0xae70]
addsd xmm1, xmm0
movsd qword [ebp - 0xae80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xae80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46ad81
mov eax, dword [ebp - 0x190c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xae70]
addsd xmm1, xmm0
movsd qword [ebp - 0xae70], xmm1
jmp 0x46ad9a
mov ecx, 1
test ecx, ecx
je 0x46ad96
jmp 0x46ae56
jmp 0x46adbd
cvtsi2sd xmm0, dword [ebp - 0x190c]
movsd xmm1, qword [ebp - 0xae70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1910], edx
jmp 0x46ae60
xor eax, eax
je 0x46adc7
jmp 0x46add6
jmp 0x46ac20
jmp 0x46ac20
mov ecx, 2
test ecx, ecx
je 0x46ae56
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1914], eax
cvtsi2sd xmm0, dword [ebp - 0x1914]
mov eax, dword [ebp - 0x1914]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xae70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1910], ecx
jmp 0x46ae60
mov dword [ebp - 0x1910], 8
mov edx, dword [ebp - 0x18f0]
shl edx, 2
add edx, dword [ebp - 0x18ec]
mov eax, dword [ebp - 0x1910]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x18f0]
shl ecx, 2
add ecx, dword [ebp - 0x18ec]
mov dword [ecx], eax
mov edx, dword [ebp - 0x18f0]
add edx, 0xffffffb8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xae88], xmm0
xor eax, eax
je 0x46aea2
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46aede
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xae88]
movsd qword [ebp - 0xae90], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46b07e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46b07e
mov dword [ebp - 0x1918], 0
jmp 0x46af5d
cmp dword [ebp - 0x1918], 0xf
jae 0x46b079
cvtsi2sd xmm0, dword [ebp - 0x1918]
movsd xmm1, qword [ebp - 0xae90]
addsd xmm1, xmm0
movsd qword [ebp - 0xae98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xae98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46afcc
mov ecx, dword [ebp - 0x1918]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xae90]
addsd xmm1, xmm0
movsd qword [ebp - 0xae90], xmm1
jmp 0x46aec8
cvtsi2sd xmm0, dword [ebp - 0x1918]
movsd xmm1, qword [ebp - 0xae90]
addsd xmm1, xmm0
movsd qword [ebp - 0xaea0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaea0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46b029
mov eax, dword [ebp - 0x1918]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xae90]
addsd xmm1, xmm0
movsd qword [ebp - 0xae90], xmm1
jmp 0x46b042
mov ecx, 1
test ecx, ecx
je 0x46b03e
jmp 0x46b0fe
jmp 0x46b065
cvtsi2sd xmm0, dword [ebp - 0x1918]
movsd xmm1, qword [ebp - 0xae90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x191c], edx
jmp 0x46b108
xor eax, eax
je 0x46b06f
jmp 0x46b07e
jmp 0x46aec8
jmp 0x46aec8
mov ecx, 2
test ecx, ecx
je 0x46b0fe
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1920], eax
cvtsi2sd xmm0, dword [ebp - 0x1920]
mov eax, dword [ebp - 0x1920]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xae90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x191c], ecx
jmp 0x46b108
mov dword [ebp - 0x191c], 8
mov edx, dword [ebp - 0x18f0]
add edx, 0xffffffb8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xaea8], xmm0
xor eax, eax
je 0x46b122
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46b15e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xaea8]
movsd qword [ebp - 0xaeb0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46b2fe
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46b2fe
mov dword [ebp - 0x1924], 0
jmp 0x46b1dd
cmp dword [ebp - 0x1924], 0xf
jae 0x46b2f9
cvtsi2sd xmm0, dword [ebp - 0x1924]
movsd xmm1, qword [ebp - 0xaeb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaeb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaeb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46b24c
mov ecx, dword [ebp - 0x1924]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaeb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaeb0], xmm1
jmp 0x46b148
cvtsi2sd xmm0, dword [ebp - 0x1924]
movsd xmm1, qword [ebp - 0xaeb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaec0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaec0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46b2a9
mov eax, dword [ebp - 0x1924]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaeb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaeb0], xmm1
jmp 0x46b2c2
mov ecx, 1
test ecx, ecx
je 0x46b2be
jmp 0x46b37e
jmp 0x46b2e5
cvtsi2sd xmm0, dword [ebp - 0x1924]
movsd xmm1, qword [ebp - 0xaeb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1928], edx
jmp 0x46b388
xor eax, eax
je 0x46b2ef
jmp 0x46b2fe
jmp 0x46b148
jmp 0x46b148
mov ecx, 2
test ecx, ecx
je 0x46b37e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x192c], eax
cvtsi2sd xmm0, dword [ebp - 0x192c]
mov eax, dword [ebp - 0x192c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaeb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1928], ecx
jmp 0x46b388
mov dword [ebp - 0x1928], 8
mov edx, dword [ebp - 0x18f0]
shl edx, 2
add edx, dword [ebp - 0x18ec]
mov eax, dword [ebp - 0x191c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x18f0]
shl ecx, 2
add ecx, dword [ebp - 0x18ec]
mov edx, dword [ebp - 0x1928]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x18f0]
shl ecx, 2
add ecx, dword [ebp - 0x18ec]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46b696
xor eax, eax
je 0x46b408
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46b444
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e18]
movsd qword [ebp - 0xaec8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46b5e4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46b5e4
mov dword [ebp - 0x1930], 0
jmp 0x46b4c3
cmp dword [ebp - 0x1930], 0xf
jae 0x46b5df
cvtsi2sd xmm0, dword [ebp - 0x1930]
movsd xmm1, qword [ebp - 0xaec8]
addsd xmm1, xmm0
movsd qword [ebp - 0xaed0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaed0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46b532
mov ecx, dword [ebp - 0x1930]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaec8]
addsd xmm1, xmm0
movsd qword [ebp - 0xaec8], xmm1
jmp 0x46b42e
cvtsi2sd xmm0, dword [ebp - 0x1930]
movsd xmm1, qword [ebp - 0xaec8]
addsd xmm1, xmm0
movsd qword [ebp - 0xaed8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaed8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46b58f
mov eax, dword [ebp - 0x1930]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaec8]
addsd xmm1, xmm0
movsd qword [ebp - 0xaec8], xmm1
jmp 0x46b5a8
mov ecx, 1
test ecx, ecx
je 0x46b5a4
jmp 0x46b664
jmp 0x46b5cb
cvtsi2sd xmm0, dword [ebp - 0x1930]
movsd xmm1, qword [ebp - 0xaec8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1934], edx
jmp 0x46b66e
xor eax, eax
je 0x46b5d5
jmp 0x46b5e4
jmp 0x46b42e
jmp 0x46b42e
mov ecx, 2
test ecx, ecx
je 0x46b664
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1938], eax
cvtsi2sd xmm0, dword [ebp - 0x1938]
mov eax, dword [ebp - 0x1938]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaec8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1934], ecx
jmp 0x46b66e
mov dword [ebp - 0x1934], 8
mov edx, dword [ebp - 0x18f0]
shl edx, 2
add edx, dword [ebp - 0x18ec]
mov eax, dword [ebp - 0x1934]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x18f0]
shl ecx, 2
add ecx, dword [ebp - 0x18ec]
mov dword [ecx], eax
jmp 0x46a5c6
mov edx, dword [ebp - 0x18e8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x18e8]
mov dword [ebp - 0x193c], eax
mov ecx, dword [ebp - 0x193c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1940], ecx
lea ecx, [ebp - 0x42]
call fcn.004255e0
mov dword [ebp - 0x1944], eax
mov edx, dword [ebp - 0x1944]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x46c7d5
mov ecx, dword [ebp - 0x1944]
mov dword [ebp - 0x1948], ecx
mov dword [ebp - 0x194c], 0
jmp 0x46b70f
mov edx, dword [ebp - 0x194c]
add edx, 1
mov dword [ebp - 0x194c], edx
cmp dword [ebp - 0x194c], 1
jae 0x46c7d5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46b9e7
xor eax, eax
je 0x46b759
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x46b795
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e28]
movsd qword [ebp - 0xaee0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46b935
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46b935
mov dword [ebp - 0x1950], 0
jmp 0x46b814
cmp dword [ebp - 0x1950], 0xf
jae 0x46b930
cvtsi2sd xmm0, dword [ebp - 0x1950]
movsd xmm1, qword [ebp - 0xaee0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaee8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaee8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46b883
mov ecx, dword [ebp - 0x1950]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaee0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaee0], xmm1
jmp 0x46b77f
cvtsi2sd xmm0, dword [ebp - 0x1950]
movsd xmm1, qword [ebp - 0xaee0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaef0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaef0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46b8e0
mov eax, dword [ebp - 0x1950]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaee0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaee0], xmm1
jmp 0x46b8f9
mov ecx, 1
test ecx, ecx
je 0x46b8f5
jmp 0x46b9b5
jmp 0x46b91c
cvtsi2sd xmm0, dword [ebp - 0x1950]
movsd xmm1, qword [ebp - 0xaee0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1954], edx
jmp 0x46b9bf
xor eax, eax
je 0x46b926
jmp 0x46b935
jmp 0x46b77f
jmp 0x46b77f
mov ecx, 2
test ecx, ecx
je 0x46b9b5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1958], eax
cvtsi2sd xmm0, dword [ebp - 0x1958]
mov eax, dword [ebp - 0x1958]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaee0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1954], ecx
jmp 0x46b9bf
mov dword [ebp - 0x1954], 8
mov edx, dword [ebp - 0x194c]
shl edx, 2
add edx, dword [ebp - 0x1948]
mov eax, dword [ebp - 0x1954]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x194c]
shl ecx, 2
add ecx, dword [ebp - 0x1948]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46c505
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46bcf7
xor eax, eax
je 0x46ba69
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46baa5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e20]
movsd qword [ebp - 0xaef8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46bc45
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46bc45
mov dword [ebp - 0x195c], 0
jmp 0x46bb24
cmp dword [ebp - 0x195c], 0xf
jae 0x46bc40
cvtsi2sd xmm0, dword [ebp - 0x195c]
movsd xmm1, qword [ebp - 0xaef8]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf00], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaf00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46bb93
mov ecx, dword [ebp - 0x195c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaef8]
addsd xmm1, xmm0
movsd qword [ebp - 0xaef8], xmm1
jmp 0x46ba8f
cvtsi2sd xmm0, dword [ebp - 0x195c]
movsd xmm1, qword [ebp - 0xaef8]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf08], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaf08]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46bbf0
mov eax, dword [ebp - 0x195c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaef8]
addsd xmm1, xmm0
movsd qword [ebp - 0xaef8], xmm1
jmp 0x46bc09
mov ecx, 1
test ecx, ecx
je 0x46bc05
jmp 0x46bcc5
jmp 0x46bc2c
cvtsi2sd xmm0, dword [ebp - 0x195c]
movsd xmm1, qword [ebp - 0xaef8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1960], edx
jmp 0x46bccf
xor eax, eax
je 0x46bc36
jmp 0x46bc45
jmp 0x46ba8f
jmp 0x46ba8f
mov ecx, 2
test ecx, ecx
je 0x46bcc5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1964], eax
cvtsi2sd xmm0, dword [ebp - 0x1964]
mov eax, dword [ebp - 0x1964]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaef8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1960], ecx
jmp 0x46bccf
mov dword [ebp - 0x1960], 8
mov edx, dword [ebp - 0x194c]
shl edx, 2
add edx, dword [ebp - 0x1948]
mov eax, dword [ebp - 0x1960]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x194c]
shl ecx, 2
add ecx, dword [ebp - 0x1948]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46bfc2
xor eax, eax
je 0x46bd34
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46bd70
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e18]
movsd qword [ebp - 0xaf10], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46bf10
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46bf10
mov dword [ebp - 0x1968], 0
jmp 0x46bdef
cmp dword [ebp - 0x1968], 0xf
jae 0x46bf0b
cvtsi2sd xmm0, dword [ebp - 0x1968]
movsd xmm1, qword [ebp - 0xaf10]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaf18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46be5e
mov ecx, dword [ebp - 0x1968]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaf10]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf10], xmm1
jmp 0x46bd5a
cvtsi2sd xmm0, dword [ebp - 0x1968]
movsd xmm1, qword [ebp - 0xaf10]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaf20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46bebb
mov eax, dword [ebp - 0x1968]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaf10]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf10], xmm1
jmp 0x46bed4
mov ecx, 1
test ecx, ecx
je 0x46bed0
jmp 0x46bf90
jmp 0x46bef7
cvtsi2sd xmm0, dword [ebp - 0x1968]
movsd xmm1, qword [ebp - 0xaf10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x196c], edx
jmp 0x46bf9a
xor eax, eax
je 0x46bf01
jmp 0x46bf10
jmp 0x46bd5a
jmp 0x46bd5a
mov ecx, 2
test ecx, ecx
je 0x46bf90
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1970], eax
cvtsi2sd xmm0, dword [ebp - 0x1970]
mov eax, dword [ebp - 0x1970]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaf10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x196c], ecx
jmp 0x46bf9a
mov dword [ebp - 0x196c], 8
mov edx, dword [ebp - 0x194c]
shl edx, 2
add edx, dword [ebp - 0x1948]
mov eax, dword [ebp - 0x196c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x194c]
shl ecx, 2
add ecx, dword [ebp - 0x1948]
mov dword [ecx], eax
mov edx, dword [ebp - 0x194c]
add edx, 0xffffffb9
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xaf28], xmm0
xor eax, eax
je 0x46bfdc
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46c018
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xaf28]
movsd qword [ebp - 0xaf30], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46c1b8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46c1b8
mov dword [ebp - 0x1974], 0
jmp 0x46c097
cmp dword [ebp - 0x1974], 0xf
jae 0x46c1b3
cvtsi2sd xmm0, dword [ebp - 0x1974]
movsd xmm1, qword [ebp - 0xaf30]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaf38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46c106
mov ecx, dword [ebp - 0x1974]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaf30]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf30], xmm1
jmp 0x46c002
cvtsi2sd xmm0, dword [ebp - 0x1974]
movsd xmm1, qword [ebp - 0xaf30]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaf40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46c163
mov eax, dword [ebp - 0x1974]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaf30]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf30], xmm1
jmp 0x46c17c
mov ecx, 1
test ecx, ecx
je 0x46c178
jmp 0x46c238
jmp 0x46c19f
cvtsi2sd xmm0, dword [ebp - 0x1974]
movsd xmm1, qword [ebp - 0xaf30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1978], edx
jmp 0x46c242
xor eax, eax
je 0x46c1a9
jmp 0x46c1b8
jmp 0x46c002
jmp 0x46c002
mov ecx, 2
test ecx, ecx
je 0x46c238
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x197c], eax
cvtsi2sd xmm0, dword [ebp - 0x197c]
mov eax, dword [ebp - 0x197c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaf30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1978], ecx
jmp 0x46c242
mov dword [ebp - 0x1978], 8
mov edx, dword [ebp - 0x194c]
add edx, 0xffffffb9
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xaf48], xmm0
xor eax, eax
je 0x46c25c
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46c298
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xaf48]
movsd qword [ebp - 0xaf50], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46c438
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46c438
mov dword [ebp - 0x1980], 0
jmp 0x46c317
cmp dword [ebp - 0x1980], 0xf
jae 0x46c433
cvtsi2sd xmm0, dword [ebp - 0x1980]
movsd xmm1, qword [ebp - 0xaf50]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaf58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46c386
mov ecx, dword [ebp - 0x1980]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaf50]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf50], xmm1
jmp 0x46c282
cvtsi2sd xmm0, dword [ebp - 0x1980]
movsd xmm1, qword [ebp - 0xaf50]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaf60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46c3e3
mov eax, dword [ebp - 0x1980]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaf50]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf50], xmm1
jmp 0x46c3fc
mov ecx, 1
test ecx, ecx
je 0x46c3f8
jmp 0x46c4b8
jmp 0x46c41f
cvtsi2sd xmm0, dword [ebp - 0x1980]
movsd xmm1, qword [ebp - 0xaf50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1984], edx
jmp 0x46c4c2
xor eax, eax
je 0x46c429
jmp 0x46c438
jmp 0x46c282
jmp 0x46c282
mov ecx, 2
test ecx, ecx
je 0x46c4b8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1988], eax
cvtsi2sd xmm0, dword [ebp - 0x1988]
mov eax, dword [ebp - 0x1988]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaf50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1984], ecx
jmp 0x46c4c2
mov dword [ebp - 0x1984], 8
mov edx, dword [ebp - 0x194c]
shl edx, 2
add edx, dword [ebp - 0x1948]
mov eax, dword [ebp - 0x1978]
add eax, dword [edx]
mov ecx, dword [ebp - 0x194c]
shl ecx, 2
add ecx, dword [ebp - 0x1948]
mov edx, dword [ebp - 0x1984]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x194c]
shl ecx, 2
add ecx, dword [ebp - 0x1948]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46c7d0
xor eax, eax
je 0x46c542
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46c57e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e10]
movsd qword [ebp - 0xaf68], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46c71e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46c71e
mov dword [ebp - 0x198c], 0
jmp 0x46c5fd
cmp dword [ebp - 0x198c], 0xf
jae 0x46c719
cvtsi2sd xmm0, dword [ebp - 0x198c]
movsd xmm1, qword [ebp - 0xaf68]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf70], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaf70]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46c66c
mov ecx, dword [ebp - 0x198c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaf68]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf68], xmm1
jmp 0x46c568
cvtsi2sd xmm0, dword [ebp - 0x198c]
movsd xmm1, qword [ebp - 0xaf68]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf78], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaf78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46c6c9
mov eax, dword [ebp - 0x198c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaf68]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf68], xmm1
jmp 0x46c6e2
mov ecx, 1
test ecx, ecx
je 0x46c6de
jmp 0x46c79e
jmp 0x46c705
cvtsi2sd xmm0, dword [ebp - 0x198c]
movsd xmm1, qword [ebp - 0xaf68]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1990], edx
jmp 0x46c7a8
xor eax, eax
je 0x46c70f
jmp 0x46c71e
jmp 0x46c568
jmp 0x46c568
mov ecx, 2
test ecx, ecx
je 0x46c79e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1994], eax
cvtsi2sd xmm0, dword [ebp - 0x1994]
mov eax, dword [ebp - 0x1994]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaf68]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1990], ecx
jmp 0x46c7a8
mov dword [ebp - 0x1990], 8
mov edx, dword [ebp - 0x194c]
shl edx, 2
add edx, dword [ebp - 0x1948]
mov eax, dword [ebp - 0x1990]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x194c]
shl ecx, 2
add ecx, dword [ebp - 0x1948]
mov dword [ecx], eax
jmp 0x46b700
mov edx, dword [ebp - 0x1944]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1944]
mov dword [ebp - 0x1998], eax
mov ecx, dword [ebp - 0x1998]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x199c], ecx
push 0x10
mov edx, dword [ebp - 0x1940]
push edx
lea eax, [ebp - 0x16620]
push eax
mov ecx, dword [ebp - 0x199c]
shl ecx, 2
add ecx, 0x784f44
mov edx, dword [ecx]
call edx
add esp, 0xc
xor eax, eax
mov byte [ebp - 0x43], al
lea ecx, [ebp - 0x43]
call fcn.00425580
mov dword [ebp - 0x19a0], eax
mov ecx, dword [ebp - 0x19a0]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x46d93a
mov eax, dword [ebp - 0x19a0]
mov dword [ebp - 0x19a4], eax
mov dword [ebp - 0x19a8], 0
jmp 0x46c874
mov ecx, dword [ebp - 0x19a8]
add ecx, 1
mov dword [ebp - 0x19a8], ecx
cmp dword [ebp - 0x19a8], 1
jae 0x46d93a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46cb4c
xor eax, eax
je 0x46c8be
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46c8fa
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e20]
movsd qword [ebp - 0xaf80], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46ca9a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46ca9a
mov dword [ebp - 0x19ac], 0
jmp 0x46c979
cmp dword [ebp - 0x19ac], 0xf
jae 0x46ca95
cvtsi2sd xmm0, dword [ebp - 0x19ac]
movsd xmm1, qword [ebp - 0xaf80]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf88], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaf88]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46c9e8
mov ecx, dword [ebp - 0x19ac]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaf80]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf80], xmm1
jmp 0x46c8e4
cvtsi2sd xmm0, dword [ebp - 0x19ac]
movsd xmm1, qword [ebp - 0xaf80]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf90], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xaf90]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46ca45
mov eax, dword [ebp - 0x19ac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaf80]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf80], xmm1
jmp 0x46ca5e
mov ecx, 1
test ecx, ecx
je 0x46ca5a
jmp 0x46cb1a
jmp 0x46ca81
cvtsi2sd xmm0, dword [ebp - 0x19ac]
movsd xmm1, qword [ebp - 0xaf80]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x19b0], edx
jmp 0x46cb24
xor eax, eax
je 0x46ca8b
jmp 0x46ca9a
jmp 0x46c8e4
jmp 0x46c8e4
mov ecx, 2
test ecx, ecx
je 0x46cb1a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x19b4], eax
cvtsi2sd xmm0, dword [ebp - 0x19b4]
mov eax, dword [ebp - 0x19b4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaf80]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x19b0], ecx
jmp 0x46cb24
mov dword [ebp - 0x19b0], 8
mov edx, dword [ebp - 0x19a8]
shl edx, 2
add edx, dword [ebp - 0x19a4]
mov eax, dword [ebp - 0x19b0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x19a8]
shl ecx, 2
add ecx, dword [ebp - 0x19a4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46d66a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46ce5c
xor eax, eax
je 0x46cbce
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46cc0a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e18]
movsd qword [ebp - 0xaf98], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46cdaa
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46cdaa
mov dword [ebp - 0x19b8], 0
jmp 0x46cc89
cmp dword [ebp - 0x19b8], 0xf
jae 0x46cda5
cvtsi2sd xmm0, dword [ebp - 0x19b8]
movsd xmm1, qword [ebp - 0xaf98]
addsd xmm1, xmm0
movsd qword [ebp - 0xafa0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xafa0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46ccf8
mov ecx, dword [ebp - 0x19b8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaf98]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf98], xmm1
jmp 0x46cbf4
cvtsi2sd xmm0, dword [ebp - 0x19b8]
movsd xmm1, qword [ebp - 0xaf98]
addsd xmm1, xmm0
movsd qword [ebp - 0xafa8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xafa8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46cd55
mov eax, dword [ebp - 0x19b8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaf98]
addsd xmm1, xmm0
movsd qword [ebp - 0xaf98], xmm1
jmp 0x46cd6e
mov ecx, 1
test ecx, ecx
je 0x46cd6a
jmp 0x46ce2a
jmp 0x46cd91
cvtsi2sd xmm0, dword [ebp - 0x19b8]
movsd xmm1, qword [ebp - 0xaf98]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x19bc], edx
jmp 0x46ce34
xor eax, eax
je 0x46cd9b
jmp 0x46cdaa
jmp 0x46cbf4
jmp 0x46cbf4
mov ecx, 2
test ecx, ecx
je 0x46ce2a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x19c0], eax
cvtsi2sd xmm0, dword [ebp - 0x19c0]
mov eax, dword [ebp - 0x19c0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaf98]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x19bc], ecx
jmp 0x46ce34
mov dword [ebp - 0x19bc], 8
mov edx, dword [ebp - 0x19a8]
shl edx, 2
add edx, dword [ebp - 0x19a4]
mov eax, dword [ebp - 0x19bc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x19a8]
shl ecx, 2
add ecx, dword [ebp - 0x19a4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46d127
xor eax, eax
je 0x46ce99
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46ced5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e10]
movsd qword [ebp - 0xafb0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46d075
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46d075
mov dword [ebp - 0x19c4], 0
jmp 0x46cf54
cmp dword [ebp - 0x19c4], 0xf
jae 0x46d070
cvtsi2sd xmm0, dword [ebp - 0x19c4]
movsd xmm1, qword [ebp - 0xafb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xafb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xafb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46cfc3
mov ecx, dword [ebp - 0x19c4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xafb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xafb0], xmm1
jmp 0x46cebf
cvtsi2sd xmm0, dword [ebp - 0x19c4]
movsd xmm1, qword [ebp - 0xafb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xafc0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xafc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46d020
mov eax, dword [ebp - 0x19c4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xafb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xafb0], xmm1
jmp 0x46d039
mov ecx, 1
test ecx, ecx
je 0x46d035
jmp 0x46d0f5
jmp 0x46d05c
cvtsi2sd xmm0, dword [ebp - 0x19c4]
movsd xmm1, qword [ebp - 0xafb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x19c8], edx
jmp 0x46d0ff
xor eax, eax
je 0x46d066
jmp 0x46d075
jmp 0x46cebf
jmp 0x46cebf
mov ecx, 2
test ecx, ecx
je 0x46d0f5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x19cc], eax
cvtsi2sd xmm0, dword [ebp - 0x19cc]
mov eax, dword [ebp - 0x19cc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xafb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x19c8], ecx
jmp 0x46d0ff
mov dword [ebp - 0x19c8], 8
mov edx, dword [ebp - 0x19a8]
shl edx, 2
add edx, dword [ebp - 0x19a4]
mov eax, dword [ebp - 0x19c8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x19a8]
shl ecx, 2
add ecx, dword [ebp - 0x19a4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x19a8]
add edx, 0xffffffba
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xafc8], xmm0
xor eax, eax
je 0x46d141
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46d17d
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xafc8]
movsd qword [ebp - 0xafd0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46d31d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46d31d
mov dword [ebp - 0x19d0], 0
jmp 0x46d1fc
cmp dword [ebp - 0x19d0], 0xf
jae 0x46d318
cvtsi2sd xmm0, dword [ebp - 0x19d0]
movsd xmm1, qword [ebp - 0xafd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xafd8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xafd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46d26b
mov ecx, dword [ebp - 0x19d0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xafd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xafd0], xmm1
jmp 0x46d167
cvtsi2sd xmm0, dword [ebp - 0x19d0]
movsd xmm1, qword [ebp - 0xafd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xafe0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xafe0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46d2c8
mov eax, dword [ebp - 0x19d0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xafd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xafd0], xmm1
jmp 0x46d2e1
mov ecx, 1
test ecx, ecx
je 0x46d2dd
jmp 0x46d39d
jmp 0x46d304
cvtsi2sd xmm0, dword [ebp - 0x19d0]
movsd xmm1, qword [ebp - 0xafd0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x19d4], edx
jmp 0x46d3a7
xor eax, eax
je 0x46d30e
jmp 0x46d31d
jmp 0x46d167
jmp 0x46d167
mov ecx, 2
test ecx, ecx
je 0x46d39d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x19d8], eax
cvtsi2sd xmm0, dword [ebp - 0x19d8]
mov eax, dword [ebp - 0x19d8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xafd0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x19d4], ecx
jmp 0x46d3a7
mov dword [ebp - 0x19d4], 8
mov edx, dword [ebp - 0x19a8]
add edx, 0xffffffba
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xafe8], xmm0
xor eax, eax
je 0x46d3c1
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46d3fd
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xafe8]
movsd qword [ebp - 0xaff0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46d59d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46d59d
mov dword [ebp - 0x19dc], 0
jmp 0x46d47c
cmp dword [ebp - 0x19dc], 0xf
jae 0x46d598
cvtsi2sd xmm0, dword [ebp - 0x19dc]
movsd xmm1, qword [ebp - 0xaff0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaff8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaff8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46d4eb
mov ecx, dword [ebp - 0x19dc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xaff0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaff0], xmm1
jmp 0x46d3e7
cvtsi2sd xmm0, dword [ebp - 0x19dc]
movsd xmm1, qword [ebp - 0xaff0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb000], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb000]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46d548
mov eax, dword [ebp - 0x19dc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xaff0]
addsd xmm1, xmm0
movsd qword [ebp - 0xaff0], xmm1
jmp 0x46d561
mov ecx, 1
test ecx, ecx
je 0x46d55d
jmp 0x46d61d
jmp 0x46d584
cvtsi2sd xmm0, dword [ebp - 0x19dc]
movsd xmm1, qword [ebp - 0xaff0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x19e0], edx
jmp 0x46d627
xor eax, eax
je 0x46d58e
jmp 0x46d59d
jmp 0x46d3e7
jmp 0x46d3e7
mov ecx, 2
test ecx, ecx
je 0x46d61d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x19e4], eax
cvtsi2sd xmm0, dword [ebp - 0x19e4]
mov eax, dword [ebp - 0x19e4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xaff0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x19e0], ecx
jmp 0x46d627
mov dword [ebp - 0x19e0], 8
mov edx, dword [ebp - 0x19a8]
shl edx, 2
add edx, dword [ebp - 0x19a4]
mov eax, dword [ebp - 0x19d4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x19a8]
shl ecx, 2
add ecx, dword [ebp - 0x19a4]
mov edx, dword [ebp - 0x19e0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x19a8]
shl ecx, 2
add ecx, dword [ebp - 0x19a4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46d935
xor eax, eax
je 0x46d6a7
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46d6e3
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e08]
movsd qword [ebp - 0xb008], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46d883
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46d883
mov dword [ebp - 0x19e8], 0
jmp 0x46d762
cmp dword [ebp - 0x19e8], 0xf
jae 0x46d87e
cvtsi2sd xmm0, dword [ebp - 0x19e8]
movsd xmm1, qword [ebp - 0xb008]
addsd xmm1, xmm0
movsd qword [ebp - 0xb010], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb010]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46d7d1
mov ecx, dword [ebp - 0x19e8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb008]
addsd xmm1, xmm0
movsd qword [ebp - 0xb008], xmm1
jmp 0x46d6cd
cvtsi2sd xmm0, dword [ebp - 0x19e8]
movsd xmm1, qword [ebp - 0xb008]
addsd xmm1, xmm0
movsd qword [ebp - 0xb018], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb018]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46d82e
mov eax, dword [ebp - 0x19e8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb008]
addsd xmm1, xmm0
movsd qword [ebp - 0xb008], xmm1
jmp 0x46d847
mov ecx, 1
test ecx, ecx
je 0x46d843
jmp 0x46d903
jmp 0x46d86a
cvtsi2sd xmm0, dword [ebp - 0x19e8]
movsd xmm1, qword [ebp - 0xb008]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x19ec], edx
jmp 0x46d90d
xor eax, eax
je 0x46d874
jmp 0x46d883
jmp 0x46d6cd
jmp 0x46d6cd
mov ecx, 2
test ecx, ecx
je 0x46d903
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x19f0], eax
cvtsi2sd xmm0, dword [ebp - 0x19f0]
mov eax, dword [ebp - 0x19f0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb008]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x19ec], ecx
jmp 0x46d90d
mov dword [ebp - 0x19ec], 8
mov edx, dword [ebp - 0x19a8]
shl edx, 2
add edx, dword [ebp - 0x19a4]
mov eax, dword [ebp - 0x19ec]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x19a8]
shl ecx, 2
add ecx, dword [ebp - 0x19a4]
mov dword [ecx], eax
jmp 0x46c865
mov edx, dword [ebp - 0x19a0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x19a0]
mov dword [ebp - 0x19f4], eax
mov ecx, dword [ebp - 0x19f4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x19f8], ecx
mov edx, dword [ebp - 0x19f8]
mov dword [ebp - 0x19fc], edx
xor eax, eax
mov byte [ebp - 0x44], al
lea ecx, [ebp - 0x44]
call fcn.00425550
mov dword [ebp - 0x1a00], eax
mov ecx, dword [ebp - 0x1a00]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x46ea85
mov eax, dword [ebp - 0x1a00]
mov dword [ebp - 0x1a04], eax
mov dword [ebp - 0x1a08], 0
jmp 0x46d9bf
mov ecx, dword [ebp - 0x1a08]
add ecx, 1
mov dword [ebp - 0x1a08], ecx
cmp dword [ebp - 0x1a08], 1
jae 0x46ea85
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46dc97
xor eax, eax
je 0x46da09
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46da45
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e20]
movsd qword [ebp - 0xb020], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46dbe5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46dbe5
mov dword [ebp - 0x1a0c], 0
jmp 0x46dac4
cmp dword [ebp - 0x1a0c], 0xf
jae 0x46dbe0
cvtsi2sd xmm0, dword [ebp - 0x1a0c]
movsd xmm1, qword [ebp - 0xb020]
addsd xmm1, xmm0
movsd qword [ebp - 0xb028], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb028]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46db33
mov ecx, dword [ebp - 0x1a0c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb020]
addsd xmm1, xmm0
movsd qword [ebp - 0xb020], xmm1
jmp 0x46da2f
cvtsi2sd xmm0, dword [ebp - 0x1a0c]
movsd xmm1, qword [ebp - 0xb020]
addsd xmm1, xmm0
movsd qword [ebp - 0xb030], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb030]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46db90
mov eax, dword [ebp - 0x1a0c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb020]
addsd xmm1, xmm0
movsd qword [ebp - 0xb020], xmm1
jmp 0x46dba9
mov ecx, 1
test ecx, ecx
je 0x46dba5
jmp 0x46dc65
jmp 0x46dbcc
cvtsi2sd xmm0, dword [ebp - 0x1a0c]
movsd xmm1, qword [ebp - 0xb020]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1a10], edx
jmp 0x46dc6f
xor eax, eax
je 0x46dbd6
jmp 0x46dbe5
jmp 0x46da2f
jmp 0x46da2f
mov ecx, 2
test ecx, ecx
je 0x46dc65
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1a14], eax
cvtsi2sd xmm0, dword [ebp - 0x1a14]
mov eax, dword [ebp - 0x1a14]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb020]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1a10], ecx
jmp 0x46dc6f
mov dword [ebp - 0x1a10], 8
mov edx, dword [ebp - 0x1a08]
shl edx, 2
add edx, dword [ebp - 0x1a04]
mov eax, dword [ebp - 0x1a10]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1a08]
shl ecx, 2
add ecx, dword [ebp - 0x1a04]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46e7b5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46dfa7
xor eax, eax
je 0x46dd19
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46dd55
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e18]
movsd qword [ebp - 0xb038], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46def5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46def5
mov dword [ebp - 0x1a18], 0
jmp 0x46ddd4
cmp dword [ebp - 0x1a18], 0xf
jae 0x46def0
cvtsi2sd xmm0, dword [ebp - 0x1a18]
movsd xmm1, qword [ebp - 0xb038]
addsd xmm1, xmm0
movsd qword [ebp - 0xb040], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb040]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46de43
mov ecx, dword [ebp - 0x1a18]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb038]
addsd xmm1, xmm0
movsd qword [ebp - 0xb038], xmm1
jmp 0x46dd3f
cvtsi2sd xmm0, dword [ebp - 0x1a18]
movsd xmm1, qword [ebp - 0xb038]
addsd xmm1, xmm0
movsd qword [ebp - 0xb048], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb048]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46dea0
mov eax, dword [ebp - 0x1a18]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb038]
addsd xmm1, xmm0
movsd qword [ebp - 0xb038], xmm1
jmp 0x46deb9
mov ecx, 1
test ecx, ecx
je 0x46deb5
jmp 0x46df75
jmp 0x46dedc
cvtsi2sd xmm0, dword [ebp - 0x1a18]
movsd xmm1, qword [ebp - 0xb038]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1a1c], edx
jmp 0x46df7f
xor eax, eax
je 0x46dee6
jmp 0x46def5
jmp 0x46dd3f
jmp 0x46dd3f
mov ecx, 2
test ecx, ecx
je 0x46df75
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1a20], eax
cvtsi2sd xmm0, dword [ebp - 0x1a20]
mov eax, dword [ebp - 0x1a20]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb038]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1a1c], ecx
jmp 0x46df7f
mov dword [ebp - 0x1a1c], 8
mov edx, dword [ebp - 0x1a08]
shl edx, 2
add edx, dword [ebp - 0x1a04]
mov eax, dword [ebp - 0x1a1c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1a08]
shl ecx, 2
add ecx, dword [ebp - 0x1a04]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46e272
xor eax, eax
je 0x46dfe4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46e020
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e10]
movsd qword [ebp - 0xb050], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46e1c0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46e1c0
mov dword [ebp - 0x1a24], 0
jmp 0x46e09f
cmp dword [ebp - 0x1a24], 0xf
jae 0x46e1bb
cvtsi2sd xmm0, dword [ebp - 0x1a24]
movsd xmm1, qword [ebp - 0xb050]
addsd xmm1, xmm0
movsd qword [ebp - 0xb058], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb058]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46e10e
mov ecx, dword [ebp - 0x1a24]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb050]
addsd xmm1, xmm0
movsd qword [ebp - 0xb050], xmm1
jmp 0x46e00a
cvtsi2sd xmm0, dword [ebp - 0x1a24]
movsd xmm1, qword [ebp - 0xb050]
addsd xmm1, xmm0
movsd qword [ebp - 0xb060], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb060]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46e16b
mov eax, dword [ebp - 0x1a24]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb050]
addsd xmm1, xmm0
movsd qword [ebp - 0xb050], xmm1
jmp 0x46e184
mov ecx, 1
test ecx, ecx
je 0x46e180
jmp 0x46e240
jmp 0x46e1a7
cvtsi2sd xmm0, dword [ebp - 0x1a24]
movsd xmm1, qword [ebp - 0xb050]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1a28], edx
jmp 0x46e24a
xor eax, eax
je 0x46e1b1
jmp 0x46e1c0
jmp 0x46e00a
jmp 0x46e00a
mov ecx, 2
test ecx, ecx
je 0x46e240
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1a2c], eax
cvtsi2sd xmm0, dword [ebp - 0x1a2c]
mov eax, dword [ebp - 0x1a2c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb050]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1a28], ecx
jmp 0x46e24a
mov dword [ebp - 0x1a28], 8
mov edx, dword [ebp - 0x1a08]
shl edx, 2
add edx, dword [ebp - 0x1a04]
mov eax, dword [ebp - 0x1a28]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1a08]
shl ecx, 2
add ecx, dword [ebp - 0x1a04]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1a08]
add edx, 0xffffffba
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb068], xmm0
xor eax, eax
je 0x46e28c
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46e2c8
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb068]
movsd qword [ebp - 0xb070], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46e468
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46e468
mov dword [ebp - 0x1a30], 0
jmp 0x46e347
cmp dword [ebp - 0x1a30], 0xf
jae 0x46e463
cvtsi2sd xmm0, dword [ebp - 0x1a30]
movsd xmm1, qword [ebp - 0xb070]
addsd xmm1, xmm0
movsd qword [ebp - 0xb078], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb078]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46e3b6
mov ecx, dword [ebp - 0x1a30]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb070]
addsd xmm1, xmm0
movsd qword [ebp - 0xb070], xmm1
jmp 0x46e2b2
cvtsi2sd xmm0, dword [ebp - 0x1a30]
movsd xmm1, qword [ebp - 0xb070]
addsd xmm1, xmm0
movsd qword [ebp - 0xb080], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb080]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46e413
mov eax, dword [ebp - 0x1a30]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb070]
addsd xmm1, xmm0
movsd qword [ebp - 0xb070], xmm1
jmp 0x46e42c
mov ecx, 1
test ecx, ecx
je 0x46e428
jmp 0x46e4e8
jmp 0x46e44f
cvtsi2sd xmm0, dword [ebp - 0x1a30]
movsd xmm1, qword [ebp - 0xb070]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1a34], edx
jmp 0x46e4f2
xor eax, eax
je 0x46e459
jmp 0x46e468
jmp 0x46e2b2
jmp 0x46e2b2
mov ecx, 2
test ecx, ecx
je 0x46e4e8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1a38], eax
cvtsi2sd xmm0, dword [ebp - 0x1a38]
mov eax, dword [ebp - 0x1a38]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb070]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1a34], ecx
jmp 0x46e4f2
mov dword [ebp - 0x1a34], 8
mov edx, dword [ebp - 0x1a08]
add edx, 0xffffffba
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb088], xmm0
xor eax, eax
je 0x46e50c
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46e548
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb088]
movsd qword [ebp - 0xb090], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46e6e8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46e6e8
mov dword [ebp - 0x1a3c], 0
jmp 0x46e5c7
cmp dword [ebp - 0x1a3c], 0xf
jae 0x46e6e3
cvtsi2sd xmm0, dword [ebp - 0x1a3c]
movsd xmm1, qword [ebp - 0xb090]
addsd xmm1, xmm0
movsd qword [ebp - 0xb098], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb098]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46e636
mov ecx, dword [ebp - 0x1a3c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb090]
addsd xmm1, xmm0
movsd qword [ebp - 0xb090], xmm1
jmp 0x46e532
cvtsi2sd xmm0, dword [ebp - 0x1a3c]
movsd xmm1, qword [ebp - 0xb090]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb0a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46e693
mov eax, dword [ebp - 0x1a3c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb090]
addsd xmm1, xmm0
movsd qword [ebp - 0xb090], xmm1
jmp 0x46e6ac
mov ecx, 1
test ecx, ecx
je 0x46e6a8
jmp 0x46e768
jmp 0x46e6cf
cvtsi2sd xmm0, dword [ebp - 0x1a3c]
movsd xmm1, qword [ebp - 0xb090]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1a40], edx
jmp 0x46e772
xor eax, eax
je 0x46e6d9
jmp 0x46e6e8
jmp 0x46e532
jmp 0x46e532
mov ecx, 2
test ecx, ecx
je 0x46e768
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1a44], eax
cvtsi2sd xmm0, dword [ebp - 0x1a44]
mov eax, dword [ebp - 0x1a44]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb090]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1a40], ecx
jmp 0x46e772
mov dword [ebp - 0x1a40], 8
mov edx, dword [ebp - 0x1a08]
shl edx, 2
add edx, dword [ebp - 0x1a04]
mov eax, dword [ebp - 0x1a34]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1a08]
shl ecx, 2
add ecx, dword [ebp - 0x1a04]
mov edx, dword [ebp - 0x1a40]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1a08]
shl ecx, 2
add ecx, dword [ebp - 0x1a04]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46ea80
xor eax, eax
je 0x46e7f2
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46e82e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e08]
movsd qword [ebp - 0xb0a8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46e9ce
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46e9ce
mov dword [ebp - 0x1a48], 0
jmp 0x46e8ad
cmp dword [ebp - 0x1a48], 0xf
jae 0x46e9c9
cvtsi2sd xmm0, dword [ebp - 0x1a48]
movsd xmm1, qword [ebp - 0xb0a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0b0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb0b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46e91c
mov ecx, dword [ebp - 0x1a48]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb0a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0a8], xmm1
jmp 0x46e818
cvtsi2sd xmm0, dword [ebp - 0x1a48]
movsd xmm1, qword [ebp - 0xb0a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0b8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb0b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46e979
mov eax, dword [ebp - 0x1a48]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb0a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0a8], xmm1
jmp 0x46e992
mov ecx, 1
test ecx, ecx
je 0x46e98e
jmp 0x46ea4e
jmp 0x46e9b5
cvtsi2sd xmm0, dword [ebp - 0x1a48]
movsd xmm1, qword [ebp - 0xb0a8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1a4c], edx
jmp 0x46ea58
xor eax, eax
je 0x46e9bf
jmp 0x46e9ce
jmp 0x46e818
jmp 0x46e818
mov ecx, 2
test ecx, ecx
je 0x46ea4e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1a50], eax
cvtsi2sd xmm0, dword [ebp - 0x1a50]
mov eax, dword [ebp - 0x1a50]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb0a8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1a4c], ecx
jmp 0x46ea58
mov dword [ebp - 0x1a4c], 8
mov edx, dword [ebp - 0x1a08]
shl edx, 2
add edx, dword [ebp - 0x1a04]
mov eax, dword [ebp - 0x1a4c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1a08]
shl ecx, 2
add ecx, dword [ebp - 0x1a04]
mov dword [ecx], eax
jmp 0x46d9b0
mov edx, dword [ebp - 0x1a00]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1a00]
mov dword [ebp - 0x1a54], eax
mov ecx, dword [ebp - 0x1a54]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1a58], ecx
mov edx, dword [ebp - 0x1a58]
mov dword [ebp - 0x1a5c], edx
xor eax, eax
mov byte [ebp - 0x45], al
lea ecx, [ebp - 0x45]
call fcn.00425520
mov dword [ebp - 0x1a60], eax
mov ecx, dword [ebp - 0x1a60]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x46fbd0
mov eax, dword [ebp - 0x1a60]
mov dword [ebp - 0x1a64], eax
mov dword [ebp - 0x1a68], 0
jmp 0x46eb0a
mov ecx, dword [ebp - 0x1a68]
add ecx, 1
mov dword [ebp - 0x1a68], ecx
cmp dword [ebp - 0x1a68], 1
jae 0x46fbd0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46ede2
xor eax, eax
je 0x46eb54
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46eb90
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e20]
movsd qword [ebp - 0xb0c0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46ed30
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46ed30
mov dword [ebp - 0x1a6c], 0
jmp 0x46ec0f
cmp dword [ebp - 0x1a6c], 0xf
jae 0x46ed2b
cvtsi2sd xmm0, dword [ebp - 0x1a6c]
movsd xmm1, qword [ebp - 0xb0c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0c8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb0c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46ec7e
mov ecx, dword [ebp - 0x1a6c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb0c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0c0], xmm1
jmp 0x46eb7a
cvtsi2sd xmm0, dword [ebp - 0x1a6c]
movsd xmm1, qword [ebp - 0xb0c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0d0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb0d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46ecdb
mov eax, dword [ebp - 0x1a6c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb0c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0c0], xmm1
jmp 0x46ecf4
mov ecx, 1
test ecx, ecx
je 0x46ecf0
jmp 0x46edb0
jmp 0x46ed17
cvtsi2sd xmm0, dword [ebp - 0x1a6c]
movsd xmm1, qword [ebp - 0xb0c0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1a70], edx
jmp 0x46edba
xor eax, eax
je 0x46ed21
jmp 0x46ed30
jmp 0x46eb7a
jmp 0x46eb7a
mov ecx, 2
test ecx, ecx
je 0x46edb0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1a74], eax
cvtsi2sd xmm0, dword [ebp - 0x1a74]
mov eax, dword [ebp - 0x1a74]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb0c0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1a70], ecx
jmp 0x46edba
mov dword [ebp - 0x1a70], 8
mov edx, dword [ebp - 0x1a68]
shl edx, 2
add edx, dword [ebp - 0x1a64]
mov eax, dword [ebp - 0x1a70]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1a68]
shl ecx, 2
add ecx, dword [ebp - 0x1a64]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46f900
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46f0f2
xor eax, eax
je 0x46ee64
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46eea0
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e18]
movsd qword [ebp - 0xb0d8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46f040
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46f040
mov dword [ebp - 0x1a78], 0
jmp 0x46ef1f
cmp dword [ebp - 0x1a78], 0xf
jae 0x46f03b
cvtsi2sd xmm0, dword [ebp - 0x1a78]
movsd xmm1, qword [ebp - 0xb0d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0e0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb0e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46ef8e
mov ecx, dword [ebp - 0x1a78]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb0d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0d8], xmm1
jmp 0x46ee8a
cvtsi2sd xmm0, dword [ebp - 0x1a78]
movsd xmm1, qword [ebp - 0xb0d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0e8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb0e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46efeb
mov eax, dword [ebp - 0x1a78]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb0d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0d8], xmm1
jmp 0x46f004
mov ecx, 1
test ecx, ecx
je 0x46f000
jmp 0x46f0c0
jmp 0x46f027
cvtsi2sd xmm0, dword [ebp - 0x1a78]
movsd xmm1, qword [ebp - 0xb0d8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1a7c], edx
jmp 0x46f0ca
xor eax, eax
je 0x46f031
jmp 0x46f040
jmp 0x46ee8a
jmp 0x46ee8a
mov ecx, 2
test ecx, ecx
je 0x46f0c0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1a80], eax
cvtsi2sd xmm0, dword [ebp - 0x1a80]
mov eax, dword [ebp - 0x1a80]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb0d8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1a7c], ecx
jmp 0x46f0ca
mov dword [ebp - 0x1a7c], 8
mov edx, dword [ebp - 0x1a68]
shl edx, 2
add edx, dword [ebp - 0x1a64]
mov eax, dword [ebp - 0x1a7c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1a68]
shl ecx, 2
add ecx, dword [ebp - 0x1a64]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46f3bd
xor eax, eax
je 0x46f12f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46f16b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e10]
movsd qword [ebp - 0xb0f0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46f30b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46f30b
mov dword [ebp - 0x1a84], 0
jmp 0x46f1ea
cmp dword [ebp - 0x1a84], 0xf
jae 0x46f306
cvtsi2sd xmm0, dword [ebp - 0x1a84]
movsd xmm1, qword [ebp - 0xb0f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb0f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46f259
mov ecx, dword [ebp - 0x1a84]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb0f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0f0], xmm1
jmp 0x46f155
cvtsi2sd xmm0, dword [ebp - 0x1a84]
movsd xmm1, qword [ebp - 0xb0f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb100], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb100]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46f2b6
mov eax, dword [ebp - 0x1a84]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb0f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb0f0], xmm1
jmp 0x46f2cf
mov ecx, 1
test ecx, ecx
je 0x46f2cb
jmp 0x46f38b
jmp 0x46f2f2
cvtsi2sd xmm0, dword [ebp - 0x1a84]
movsd xmm1, qword [ebp - 0xb0f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1a88], edx
jmp 0x46f395
xor eax, eax
je 0x46f2fc
jmp 0x46f30b
jmp 0x46f155
jmp 0x46f155
mov ecx, 2
test ecx, ecx
je 0x46f38b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1a8c], eax
cvtsi2sd xmm0, dword [ebp - 0x1a8c]
mov eax, dword [ebp - 0x1a8c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb0f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1a88], ecx
jmp 0x46f395
mov dword [ebp - 0x1a88], 8
mov edx, dword [ebp - 0x1a68]
shl edx, 2
add edx, dword [ebp - 0x1a64]
mov eax, dword [ebp - 0x1a88]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1a68]
shl ecx, 2
add ecx, dword [ebp - 0x1a64]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1a68]
add edx, 0xffffffba
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb108], xmm0
xor eax, eax
je 0x46f3d7
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46f413
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb108]
movsd qword [ebp - 0xb110], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46f5b3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46f5b3
mov dword [ebp - 0x1a90], 0
jmp 0x46f492
cmp dword [ebp - 0x1a90], 0xf
jae 0x46f5ae
cvtsi2sd xmm0, dword [ebp - 0x1a90]
movsd xmm1, qword [ebp - 0xb110]
addsd xmm1, xmm0
movsd qword [ebp - 0xb118], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb118]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46f501
mov ecx, dword [ebp - 0x1a90]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb110]
addsd xmm1, xmm0
movsd qword [ebp - 0xb110], xmm1
jmp 0x46f3fd
cvtsi2sd xmm0, dword [ebp - 0x1a90]
movsd xmm1, qword [ebp - 0xb110]
addsd xmm1, xmm0
movsd qword [ebp - 0xb120], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb120]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46f55e
mov eax, dword [ebp - 0x1a90]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb110]
addsd xmm1, xmm0
movsd qword [ebp - 0xb110], xmm1
jmp 0x46f577
mov ecx, 1
test ecx, ecx
je 0x46f573
jmp 0x46f633
jmp 0x46f59a
cvtsi2sd xmm0, dword [ebp - 0x1a90]
movsd xmm1, qword [ebp - 0xb110]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1a94], edx
jmp 0x46f63d
xor eax, eax
je 0x46f5a4
jmp 0x46f5b3
jmp 0x46f3fd
jmp 0x46f3fd
mov ecx, 2
test ecx, ecx
je 0x46f633
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1a98], eax
cvtsi2sd xmm0, dword [ebp - 0x1a98]
mov eax, dword [ebp - 0x1a98]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb110]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1a94], ecx
jmp 0x46f63d
mov dword [ebp - 0x1a94], 8
mov edx, dword [ebp - 0x1a68]
add edx, 0xffffffba
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb128], xmm0
xor eax, eax
je 0x46f657
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x46f693
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb128]
movsd qword [ebp - 0xb130], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46f833
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46f833
mov dword [ebp - 0x1a9c], 0
jmp 0x46f712
cmp dword [ebp - 0x1a9c], 0xf
jae 0x46f82e
cvtsi2sd xmm0, dword [ebp - 0x1a9c]
movsd xmm1, qword [ebp - 0xb130]
addsd xmm1, xmm0
movsd qword [ebp - 0xb138], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb138]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46f781
mov ecx, dword [ebp - 0x1a9c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb130]
addsd xmm1, xmm0
movsd qword [ebp - 0xb130], xmm1
jmp 0x46f67d
cvtsi2sd xmm0, dword [ebp - 0x1a9c]
movsd xmm1, qword [ebp - 0xb130]
addsd xmm1, xmm0
movsd qword [ebp - 0xb140], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb140]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46f7de
mov eax, dword [ebp - 0x1a9c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb130]
addsd xmm1, xmm0
movsd qword [ebp - 0xb130], xmm1
jmp 0x46f7f7
mov ecx, 1
test ecx, ecx
je 0x46f7f3
jmp 0x46f8b3
jmp 0x46f81a
cvtsi2sd xmm0, dword [ebp - 0x1a9c]
movsd xmm1, qword [ebp - 0xb130]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1aa0], edx
jmp 0x46f8bd
xor eax, eax
je 0x46f824
jmp 0x46f833
jmp 0x46f67d
jmp 0x46f67d
mov ecx, 2
test ecx, ecx
je 0x46f8b3
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1aa4], eax
cvtsi2sd xmm0, dword [ebp - 0x1aa4]
mov eax, dword [ebp - 0x1aa4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb130]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1aa0], ecx
jmp 0x46f8bd
mov dword [ebp - 0x1aa0], 8
mov edx, dword [ebp - 0x1a68]
shl edx, 2
add edx, dword [ebp - 0x1a64]
mov eax, dword [ebp - 0x1a94]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1a68]
shl ecx, 2
add ecx, dword [ebp - 0x1a64]
mov edx, dword [ebp - 0x1aa0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1a68]
shl ecx, 2
add ecx, dword [ebp - 0x1a64]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x46fbcb
xor eax, eax
je 0x46f93d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x46f979
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e08]
movsd qword [ebp - 0xb148], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46fb19
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46fb19
mov dword [ebp - 0x1aa8], 0
jmp 0x46f9f8
cmp dword [ebp - 0x1aa8], 0xf
jae 0x46fb14
cvtsi2sd xmm0, dword [ebp - 0x1aa8]
movsd xmm1, qword [ebp - 0xb148]
addsd xmm1, xmm0
movsd qword [ebp - 0xb150], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb150]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46fa67
mov ecx, dword [ebp - 0x1aa8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb148]
addsd xmm1, xmm0
movsd qword [ebp - 0xb148], xmm1
jmp 0x46f963
cvtsi2sd xmm0, dword [ebp - 0x1aa8]
movsd xmm1, qword [ebp - 0xb148]
addsd xmm1, xmm0
movsd qword [ebp - 0xb158], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb158]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46fac4
mov eax, dword [ebp - 0x1aa8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb148]
addsd xmm1, xmm0
movsd qword [ebp - 0xb148], xmm1
jmp 0x46fadd
mov ecx, 1
test ecx, ecx
je 0x46fad9
jmp 0x46fb99
jmp 0x46fb00
cvtsi2sd xmm0, dword [ebp - 0x1aa8]
movsd xmm1, qword [ebp - 0xb148]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1aac], edx
jmp 0x46fba3
xor eax, eax
je 0x46fb0a
jmp 0x46fb19
jmp 0x46f963
jmp 0x46f963
mov ecx, 2
test ecx, ecx
je 0x46fb99
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ab0], eax
cvtsi2sd xmm0, dword [ebp - 0x1ab0]
mov eax, dword [ebp - 0x1ab0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb148]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1aac], ecx
jmp 0x46fba3
mov dword [ebp - 0x1aac], 8
mov edx, dword [ebp - 0x1a68]
shl edx, 2
add edx, dword [ebp - 0x1a64]
mov eax, dword [ebp - 0x1aac]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1a68]
shl ecx, 2
add ecx, dword [ebp - 0x1a64]
mov dword [ecx], eax
jmp 0x46eafb
mov edx, dword [ebp - 0x1a60]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1a60]
mov dword [ebp - 0x1ab4], eax
mov ecx, dword [ebp - 0x1ab4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1ab8], ecx
mov edx, dword [ebp - 0x1ab8]
mov dword [ebp - 0x1abc], edx
mov eax, dword [ebp - 0x1a5c]
mov dword [ebp - 0x19fc], eax
cmp dword [ebp - 0x19fc], 0
je 0x470d6d
xor ecx, ecx
mov byte [ebp - 0x46], cl
lea ecx, [ebp - 0x46]
call fcn.004254f0
mov dword [ebp - 0x1ac0], eax
mov edx, dword [ebp - 0x1ac0]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x470d34
mov ecx, dword [ebp - 0x1ac0]
mov dword [ebp - 0x1ac4], ecx
mov dword [ebp - 0x1ac8], 0
jmp 0x46fc6e
mov edx, dword [ebp - 0x1ac8]
add edx, 1
mov dword [ebp - 0x1ac8], edx
cmp dword [ebp - 0x1ac8], 1
jae 0x470d34
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46ff46
xor eax, eax
je 0x46fcb8
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x46fcf4
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e18]
movsd qword [ebp - 0xb160], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x46fe94
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x46fe94
mov dword [ebp - 0x1acc], 0
jmp 0x46fd73
cmp dword [ebp - 0x1acc], 0xf
jae 0x46fe8f
cvtsi2sd xmm0, dword [ebp - 0x1acc]
movsd xmm1, qword [ebp - 0xb160]
addsd xmm1, xmm0
movsd qword [ebp - 0xb168], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb168]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46fde2
mov ecx, dword [ebp - 0x1acc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb160]
addsd xmm1, xmm0
movsd qword [ebp - 0xb160], xmm1
jmp 0x46fcde
cvtsi2sd xmm0, dword [ebp - 0x1acc]
movsd xmm1, qword [ebp - 0xb160]
addsd xmm1, xmm0
movsd qword [ebp - 0xb170], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb170]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x46fe3f
mov eax, dword [ebp - 0x1acc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb160]
addsd xmm1, xmm0
movsd qword [ebp - 0xb160], xmm1
jmp 0x46fe58
mov ecx, 1
test ecx, ecx
je 0x46fe54
jmp 0x46ff14
jmp 0x46fe7b
cvtsi2sd xmm0, dword [ebp - 0x1acc]
movsd xmm1, qword [ebp - 0xb160]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1ad0], edx
jmp 0x46ff1e
xor eax, eax
je 0x46fe85
jmp 0x46fe94
jmp 0x46fcde
jmp 0x46fcde
mov ecx, 2
test ecx, ecx
je 0x46ff14
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ad4], eax
cvtsi2sd xmm0, dword [ebp - 0x1ad4]
mov eax, dword [ebp - 0x1ad4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb160]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1ad0], ecx
jmp 0x46ff1e
mov dword [ebp - 0x1ad0], 8
mov edx, dword [ebp - 0x1ac8]
shl edx, 2
add edx, dword [ebp - 0x1ac4]
mov eax, dword [ebp - 0x1ad0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1ac8]
shl ecx, 2
add ecx, dword [ebp - 0x1ac4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x470a64
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x470256
xor eax, eax
je 0x46ffc8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x470004
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e10]
movsd qword [ebp - 0xb178], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4701a4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4701a4
mov dword [ebp - 0x1ad8], 0
jmp 0x470083
cmp dword [ebp - 0x1ad8], 0xf
jae 0x47019f
cvtsi2sd xmm0, dword [ebp - 0x1ad8]
movsd xmm1, qword [ebp - 0xb178]
addsd xmm1, xmm0
movsd qword [ebp - 0xb180], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb180]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4700f2
mov ecx, dword [ebp - 0x1ad8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb178]
addsd xmm1, xmm0
movsd qword [ebp - 0xb178], xmm1
jmp 0x46ffee
cvtsi2sd xmm0, dword [ebp - 0x1ad8]
movsd xmm1, qword [ebp - 0xb178]
addsd xmm1, xmm0
movsd qword [ebp - 0xb188], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb188]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47014f
mov eax, dword [ebp - 0x1ad8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb178]
addsd xmm1, xmm0
movsd qword [ebp - 0xb178], xmm1
jmp 0x470168
mov ecx, 1
test ecx, ecx
je 0x470164
jmp 0x470224
jmp 0x47018b
cvtsi2sd xmm0, dword [ebp - 0x1ad8]
movsd xmm1, qword [ebp - 0xb178]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1adc], edx
jmp 0x47022e
xor eax, eax
je 0x470195
jmp 0x4701a4
jmp 0x46ffee
jmp 0x46ffee
mov ecx, 2
test ecx, ecx
je 0x470224
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ae0], eax
cvtsi2sd xmm0, dword [ebp - 0x1ae0]
mov eax, dword [ebp - 0x1ae0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb178]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1adc], ecx
jmp 0x47022e
mov dword [ebp - 0x1adc], 8
mov edx, dword [ebp - 0x1ac8]
shl edx, 2
add edx, dword [ebp - 0x1ac4]
mov eax, dword [ebp - 0x1adc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1ac8]
shl ecx, 2
add ecx, dword [ebp - 0x1ac4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x470521
xor eax, eax
je 0x470293
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4702cf
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e08]
movsd qword [ebp - 0xb190], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47046f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47046f
mov dword [ebp - 0x1ae4], 0
jmp 0x47034e
cmp dword [ebp - 0x1ae4], 0xf
jae 0x47046a
cvtsi2sd xmm0, dword [ebp - 0x1ae4]
movsd xmm1, qword [ebp - 0xb190]
addsd xmm1, xmm0
movsd qword [ebp - 0xb198], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb198]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4703bd
mov ecx, dword [ebp - 0x1ae4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb190]
addsd xmm1, xmm0
movsd qword [ebp - 0xb190], xmm1
jmp 0x4702b9
cvtsi2sd xmm0, dword [ebp - 0x1ae4]
movsd xmm1, qword [ebp - 0xb190]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb1a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47041a
mov eax, dword [ebp - 0x1ae4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb190]
addsd xmm1, xmm0
movsd qword [ebp - 0xb190], xmm1
jmp 0x470433
mov ecx, 1
test ecx, ecx
je 0x47042f
jmp 0x4704ef
jmp 0x470456
cvtsi2sd xmm0, dword [ebp - 0x1ae4]
movsd xmm1, qword [ebp - 0xb190]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1ae8], edx
jmp 0x4704f9
xor eax, eax
je 0x470460
jmp 0x47046f
jmp 0x4702b9
jmp 0x4702b9
mov ecx, 2
test ecx, ecx
je 0x4704ef
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1aec], eax
cvtsi2sd xmm0, dword [ebp - 0x1aec]
mov eax, dword [ebp - 0x1aec]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb190]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1ae8], ecx
jmp 0x4704f9
mov dword [ebp - 0x1ae8], 8
mov edx, dword [ebp - 0x1ac8]
shl edx, 2
add edx, dword [ebp - 0x1ac4]
mov eax, dword [ebp - 0x1ae8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1ac8]
shl ecx, 2
add ecx, dword [ebp - 0x1ac4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1ac8]
add edx, 0xffffffbb
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb1a8], xmm0
xor eax, eax
je 0x47053b
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x470577
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb1a8]
movsd qword [ebp - 0xb1b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x470717
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x470717
mov dword [ebp - 0x1af0], 0
jmp 0x4705f6
cmp dword [ebp - 0x1af0], 0xf
jae 0x470712
cvtsi2sd xmm0, dword [ebp - 0x1af0]
movsd xmm1, qword [ebp - 0xb1b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb1b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x470665
mov ecx, dword [ebp - 0x1af0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb1b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1b0], xmm1
jmp 0x470561
cvtsi2sd xmm0, dword [ebp - 0x1af0]
movsd xmm1, qword [ebp - 0xb1b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb1c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4706c2
mov eax, dword [ebp - 0x1af0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb1b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1b0], xmm1
jmp 0x4706db
mov ecx, 1
test ecx, ecx
je 0x4706d7
jmp 0x470797
jmp 0x4706fe
cvtsi2sd xmm0, dword [ebp - 0x1af0]
movsd xmm1, qword [ebp - 0xb1b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1af4], edx
jmp 0x4707a1
xor eax, eax
je 0x470708
jmp 0x470717
jmp 0x470561
jmp 0x470561
mov ecx, 2
test ecx, ecx
je 0x470797
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1af8], eax
cvtsi2sd xmm0, dword [ebp - 0x1af8]
mov eax, dword [ebp - 0x1af8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb1b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1af4], ecx
jmp 0x4707a1
mov dword [ebp - 0x1af4], 8
mov edx, dword [ebp - 0x1ac8]
add edx, 0xffffffbb
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb1c8], xmm0
xor eax, eax
je 0x4707bb
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4707f7
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb1c8]
movsd qword [ebp - 0xb1d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x470997
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x470997
mov dword [ebp - 0x1afc], 0
jmp 0x470876
cmp dword [ebp - 0x1afc], 0xf
jae 0x470992
cvtsi2sd xmm0, dword [ebp - 0x1afc]
movsd xmm1, qword [ebp - 0xb1d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb1d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4708e5
mov ecx, dword [ebp - 0x1afc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb1d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1d0], xmm1
jmp 0x4707e1
cvtsi2sd xmm0, dword [ebp - 0x1afc]
movsd xmm1, qword [ebp - 0xb1d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb1e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x470942
mov eax, dword [ebp - 0x1afc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb1d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1d0], xmm1
jmp 0x47095b
mov ecx, 1
test ecx, ecx
je 0x470957
jmp 0x470a17
jmp 0x47097e
cvtsi2sd xmm0, dword [ebp - 0x1afc]
movsd xmm1, qword [ebp - 0xb1d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1b00], edx
jmp 0x470a21
xor eax, eax
je 0x470988
jmp 0x470997
jmp 0x4707e1
jmp 0x4707e1
mov ecx, 2
test ecx, ecx
je 0x470a17
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1b04], eax
cvtsi2sd xmm0, dword [ebp - 0x1b04]
mov eax, dword [ebp - 0x1b04]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb1d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1b00], ecx
jmp 0x470a21
mov dword [ebp - 0x1b00], 8
mov edx, dword [ebp - 0x1ac8]
shl edx, 2
add edx, dword [ebp - 0x1ac4]
mov eax, dword [ebp - 0x1af4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1ac8]
shl ecx, 2
add ecx, dword [ebp - 0x1ac4]
mov edx, dword [ebp - 0x1b00]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1ac8]
shl ecx, 2
add ecx, dword [ebp - 0x1ac4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x470d2f
xor eax, eax
je 0x470aa1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x470add
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e00]
movsd qword [ebp - 0xb1e8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x470c7d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x470c7d
mov dword [ebp - 0x1b08], 0
jmp 0x470b5c
cmp dword [ebp - 0x1b08], 0xf
jae 0x470c78
cvtsi2sd xmm0, dword [ebp - 0x1b08]
movsd xmm1, qword [ebp - 0xb1e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1f0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb1f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x470bcb
mov ecx, dword [ebp - 0x1b08]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb1e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1e8], xmm1
jmp 0x470ac7
cvtsi2sd xmm0, dword [ebp - 0x1b08]
movsd xmm1, qword [ebp - 0xb1e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1f8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb1f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x470c28
mov eax, dword [ebp - 0x1b08]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb1e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb1e8], xmm1
jmp 0x470c41
mov ecx, 1
test ecx, ecx
je 0x470c3d
jmp 0x470cfd
jmp 0x470c64
cvtsi2sd xmm0, dword [ebp - 0x1b08]
movsd xmm1, qword [ebp - 0xb1e8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1b0c], edx
jmp 0x470d07
xor eax, eax
je 0x470c6e
jmp 0x470c7d
jmp 0x470ac7
jmp 0x470ac7
mov ecx, 2
test ecx, ecx
je 0x470cfd
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1b10], eax
cvtsi2sd xmm0, dword [ebp - 0x1b10]
mov eax, dword [ebp - 0x1b10]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb1e8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1b0c], ecx
jmp 0x470d07
mov dword [ebp - 0x1b0c], 8
mov edx, dword [ebp - 0x1ac8]
shl edx, 2
add edx, dword [ebp - 0x1ac4]
mov eax, dword [ebp - 0x1b0c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1ac8]
shl ecx, 2
add ecx, dword [ebp - 0x1ac4]
mov dword [ecx], eax
jmp 0x46fc5f
mov edx, dword [ebp - 0x1ac0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1ac0]
mov dword [ebp - 0x1b14], eax
mov ecx, dword [ebp - 0x1b14]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1b18], ecx
mov edx, dword [ebp - 0x1b18]
mov dword [ebp - 0x1abc], edx
xor eax, eax
mov byte [ebp - 0x47], al
lea ecx, [ebp - 0x47]
call fcn.004254c0
mov dword [ebp - 0x1b1c], eax
mov ecx, dword [ebp - 0x1b1c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x471e7f
mov eax, dword [ebp - 0x1b1c]
mov dword [ebp - 0x1b20], eax
mov dword [ebp - 0x1b24], 0
jmp 0x470db9
mov ecx, dword [ebp - 0x1b24]
add ecx, 1
mov dword [ebp - 0x1b24], ecx
cmp dword [ebp - 0x1b24], 1
jae 0x471e7f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x471091
xor eax, eax
je 0x470e03
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x470e3f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e18]
movsd qword [ebp - 0xb200], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x470fdf
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x470fdf
mov dword [ebp - 0x1b28], 0
jmp 0x470ebe
cmp dword [ebp - 0x1b28], 0xf
jae 0x470fda
cvtsi2sd xmm0, dword [ebp - 0x1b28]
movsd xmm1, qword [ebp - 0xb200]
addsd xmm1, xmm0
movsd qword [ebp - 0xb208], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb208]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x470f2d
mov ecx, dword [ebp - 0x1b28]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb200]
addsd xmm1, xmm0
movsd qword [ebp - 0xb200], xmm1
jmp 0x470e29
cvtsi2sd xmm0, dword [ebp - 0x1b28]
movsd xmm1, qword [ebp - 0xb200]
addsd xmm1, xmm0
movsd qword [ebp - 0xb210], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb210]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x470f8a
mov eax, dword [ebp - 0x1b28]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb200]
addsd xmm1, xmm0
movsd qword [ebp - 0xb200], xmm1
jmp 0x470fa3
mov ecx, 1
test ecx, ecx
je 0x470f9f
jmp 0x47105f
jmp 0x470fc6
cvtsi2sd xmm0, dword [ebp - 0x1b28]
movsd xmm1, qword [ebp - 0xb200]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1b2c], edx
jmp 0x471069
xor eax, eax
je 0x470fd0
jmp 0x470fdf
jmp 0x470e29
jmp 0x470e29
mov ecx, 2
test ecx, ecx
je 0x47105f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1b30], eax
cvtsi2sd xmm0, dword [ebp - 0x1b30]
mov eax, dword [ebp - 0x1b30]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb200]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1b2c], ecx
jmp 0x471069
mov dword [ebp - 0x1b2c], 8
mov edx, dword [ebp - 0x1b24]
shl edx, 2
add edx, dword [ebp - 0x1b20]
mov eax, dword [ebp - 0x1b2c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1b24]
shl ecx, 2
add ecx, dword [ebp - 0x1b20]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x471baf
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4713a1
xor eax, eax
je 0x471113
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47114f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e10]
movsd qword [ebp - 0xb218], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4712ef
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4712ef
mov dword [ebp - 0x1b34], 0
jmp 0x4711ce
cmp dword [ebp - 0x1b34], 0xf
jae 0x4712ea
cvtsi2sd xmm0, dword [ebp - 0x1b34]
movsd xmm1, qword [ebp - 0xb218]
addsd xmm1, xmm0
movsd qword [ebp - 0xb220], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb220]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47123d
mov ecx, dword [ebp - 0x1b34]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb218]
addsd xmm1, xmm0
movsd qword [ebp - 0xb218], xmm1
jmp 0x471139
cvtsi2sd xmm0, dword [ebp - 0x1b34]
movsd xmm1, qword [ebp - 0xb218]
addsd xmm1, xmm0
movsd qword [ebp - 0xb228], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb228]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47129a
mov eax, dword [ebp - 0x1b34]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb218]
addsd xmm1, xmm0
movsd qword [ebp - 0xb218], xmm1
jmp 0x4712b3
mov ecx, 1
test ecx, ecx
je 0x4712af
jmp 0x47136f
jmp 0x4712d6
cvtsi2sd xmm0, dword [ebp - 0x1b34]
movsd xmm1, qword [ebp - 0xb218]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1b38], edx
jmp 0x471379
xor eax, eax
je 0x4712e0
jmp 0x4712ef
jmp 0x471139
jmp 0x471139
mov ecx, 2
test ecx, ecx
je 0x47136f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1b3c], eax
cvtsi2sd xmm0, dword [ebp - 0x1b3c]
mov eax, dword [ebp - 0x1b3c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb218]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1b38], ecx
jmp 0x471379
mov dword [ebp - 0x1b38], 8
mov edx, dword [ebp - 0x1b24]
shl edx, 2
add edx, dword [ebp - 0x1b20]
mov eax, dword [ebp - 0x1b38]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1b24]
shl ecx, 2
add ecx, dword [ebp - 0x1b20]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47166c
xor eax, eax
je 0x4713de
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47141a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e08]
movsd qword [ebp - 0xb230], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4715ba
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4715ba
mov dword [ebp - 0x1b40], 0
jmp 0x471499
cmp dword [ebp - 0x1b40], 0xf
jae 0x4715b5
cvtsi2sd xmm0, dword [ebp - 0x1b40]
movsd xmm1, qword [ebp - 0xb230]
addsd xmm1, xmm0
movsd qword [ebp - 0xb238], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb238]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x471508
mov ecx, dword [ebp - 0x1b40]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb230]
addsd xmm1, xmm0
movsd qword [ebp - 0xb230], xmm1
jmp 0x471404
cvtsi2sd xmm0, dword [ebp - 0x1b40]
movsd xmm1, qword [ebp - 0xb230]
addsd xmm1, xmm0
movsd qword [ebp - 0xb240], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb240]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x471565
mov eax, dword [ebp - 0x1b40]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb230]
addsd xmm1, xmm0
movsd qword [ebp - 0xb230], xmm1
jmp 0x47157e
mov ecx, 1
test ecx, ecx
je 0x47157a
jmp 0x47163a
jmp 0x4715a1
cvtsi2sd xmm0, dword [ebp - 0x1b40]
movsd xmm1, qword [ebp - 0xb230]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1b44], edx
jmp 0x471644
xor eax, eax
je 0x4715ab
jmp 0x4715ba
jmp 0x471404
jmp 0x471404
mov ecx, 2
test ecx, ecx
je 0x47163a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1b48], eax
cvtsi2sd xmm0, dword [ebp - 0x1b48]
mov eax, dword [ebp - 0x1b48]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb230]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1b44], ecx
jmp 0x471644
mov dword [ebp - 0x1b44], 8
mov edx, dword [ebp - 0x1b24]
shl edx, 2
add edx, dword [ebp - 0x1b20]
mov eax, dword [ebp - 0x1b44]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1b24]
shl ecx, 2
add ecx, dword [ebp - 0x1b20]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1b24]
add edx, 0xffffffbb
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb248], xmm0
xor eax, eax
je 0x471686
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4716c2
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb248]
movsd qword [ebp - 0xb250], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x471862
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x471862
mov dword [ebp - 0x1b4c], 0
jmp 0x471741
cmp dword [ebp - 0x1b4c], 0xf
jae 0x47185d
cvtsi2sd xmm0, dword [ebp - 0x1b4c]
movsd xmm1, qword [ebp - 0xb250]
addsd xmm1, xmm0
movsd qword [ebp - 0xb258], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb258]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4717b0
mov ecx, dword [ebp - 0x1b4c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb250]
addsd xmm1, xmm0
movsd qword [ebp - 0xb250], xmm1
jmp 0x4716ac
cvtsi2sd xmm0, dword [ebp - 0x1b4c]
movsd xmm1, qword [ebp - 0xb250]
addsd xmm1, xmm0
movsd qword [ebp - 0xb260], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb260]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47180d
mov eax, dword [ebp - 0x1b4c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb250]
addsd xmm1, xmm0
movsd qword [ebp - 0xb250], xmm1
jmp 0x471826
mov ecx, 1
test ecx, ecx
je 0x471822
jmp 0x4718e2
jmp 0x471849
cvtsi2sd xmm0, dword [ebp - 0x1b4c]
movsd xmm1, qword [ebp - 0xb250]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1b50], edx
jmp 0x4718ec
xor eax, eax
je 0x471853
jmp 0x471862
jmp 0x4716ac
jmp 0x4716ac
mov ecx, 2
test ecx, ecx
je 0x4718e2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1b54], eax
cvtsi2sd xmm0, dword [ebp - 0x1b54]
mov eax, dword [ebp - 0x1b54]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb250]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1b50], ecx
jmp 0x4718ec
mov dword [ebp - 0x1b50], 8
mov edx, dword [ebp - 0x1b24]
add edx, 0xffffffbb
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb268], xmm0
xor eax, eax
je 0x471906
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x471942
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb268]
movsd qword [ebp - 0xb270], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x471ae2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x471ae2
mov dword [ebp - 0x1b58], 0
jmp 0x4719c1
cmp dword [ebp - 0x1b58], 0xf
jae 0x471add
cvtsi2sd xmm0, dword [ebp - 0x1b58]
movsd xmm1, qword [ebp - 0xb270]
addsd xmm1, xmm0
movsd qword [ebp - 0xb278], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb278]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x471a30
mov ecx, dword [ebp - 0x1b58]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb270]
addsd xmm1, xmm0
movsd qword [ebp - 0xb270], xmm1
jmp 0x47192c
cvtsi2sd xmm0, dword [ebp - 0x1b58]
movsd xmm1, qword [ebp - 0xb270]
addsd xmm1, xmm0
movsd qword [ebp - 0xb280], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb280]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x471a8d
mov eax, dword [ebp - 0x1b58]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb270]
addsd xmm1, xmm0
movsd qword [ebp - 0xb270], xmm1
jmp 0x471aa6
mov ecx, 1
test ecx, ecx
je 0x471aa2
jmp 0x471b62
jmp 0x471ac9
cvtsi2sd xmm0, dword [ebp - 0x1b58]
movsd xmm1, qword [ebp - 0xb270]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1b5c], edx
jmp 0x471b6c
xor eax, eax
je 0x471ad3
jmp 0x471ae2
jmp 0x47192c
jmp 0x47192c
mov ecx, 2
test ecx, ecx
je 0x471b62
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1b60], eax
cvtsi2sd xmm0, dword [ebp - 0x1b60]
mov eax, dword [ebp - 0x1b60]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb270]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1b5c], ecx
jmp 0x471b6c
mov dword [ebp - 0x1b5c], 8
mov edx, dword [ebp - 0x1b24]
shl edx, 2
add edx, dword [ebp - 0x1b20]
mov eax, dword [ebp - 0x1b50]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1b24]
shl ecx, 2
add ecx, dword [ebp - 0x1b20]
mov edx, dword [ebp - 0x1b5c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1b24]
shl ecx, 2
add ecx, dword [ebp - 0x1b20]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x471e7a
xor eax, eax
je 0x471bec
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x471c28
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e00]
movsd qword [ebp - 0xb288], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x471dc8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x471dc8
mov dword [ebp - 0x1b64], 0
jmp 0x471ca7
cmp dword [ebp - 0x1b64], 0xf
jae 0x471dc3
cvtsi2sd xmm0, dword [ebp - 0x1b64]
movsd xmm1, qword [ebp - 0xb288]
addsd xmm1, xmm0
movsd qword [ebp - 0xb290], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb290]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x471d16
mov ecx, dword [ebp - 0x1b64]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb288]
addsd xmm1, xmm0
movsd qword [ebp - 0xb288], xmm1
jmp 0x471c12
cvtsi2sd xmm0, dword [ebp - 0x1b64]
movsd xmm1, qword [ebp - 0xb288]
addsd xmm1, xmm0
movsd qword [ebp - 0xb298], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb298]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x471d73
mov eax, dword [ebp - 0x1b64]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb288]
addsd xmm1, xmm0
movsd qword [ebp - 0xb288], xmm1
jmp 0x471d8c
mov ecx, 1
test ecx, ecx
je 0x471d88
jmp 0x471e48
jmp 0x471daf
cvtsi2sd xmm0, dword [ebp - 0x1b64]
movsd xmm1, qword [ebp - 0xb288]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1b68], edx
jmp 0x471e52
xor eax, eax
je 0x471db9
jmp 0x471dc8
jmp 0x471c12
jmp 0x471c12
mov ecx, 2
test ecx, ecx
je 0x471e48
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1b6c], eax
cvtsi2sd xmm0, dword [ebp - 0x1b6c]
mov eax, dword [ebp - 0x1b6c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb288]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1b68], ecx
jmp 0x471e52
mov dword [ebp - 0x1b68], 8
mov edx, dword [ebp - 0x1b24]
shl edx, 2
add edx, dword [ebp - 0x1b20]
mov eax, dword [ebp - 0x1b68]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1b24]
shl ecx, 2
add ecx, dword [ebp - 0x1b20]
mov dword [ecx], eax
jmp 0x470daa
mov edx, dword [ebp - 0x1b1c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1b1c]
mov dword [ebp - 0x1b70], eax
mov ecx, dword [ebp - 0x1b70]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1b74], ecx
mov edx, dword [ebp - 0x1b74]
mov dword [ebp - 0x1b78], edx
xor eax, eax
mov byte [ebp - 0x48], al
lea ecx, [ebp - 0x48]
call fcn.00425490
mov dword [ebp - 0x1b7c], eax
mov ecx, dword [ebp - 0x1b7c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x472fca
mov eax, dword [ebp - 0x1b7c]
mov dword [ebp - 0x1b80], eax
mov dword [ebp - 0x1b84], 0
jmp 0x471f04
mov ecx, dword [ebp - 0x1b84]
add ecx, 1
mov dword [ebp - 0x1b84], ecx
cmp dword [ebp - 0x1b84], 1
jae 0x472fca
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4721dc
xor eax, eax
je 0x471f4e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x471f8a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e10]
movsd qword [ebp - 0xb2a0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47212a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47212a
mov dword [ebp - 0x1b88], 0
jmp 0x472009
cmp dword [ebp - 0x1b88], 0xf
jae 0x472125
cvtsi2sd xmm0, dword [ebp - 0x1b88]
movsd xmm1, qword [ebp - 0xb2a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2a8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb2a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x472078
mov ecx, dword [ebp - 0x1b88]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb2a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2a0], xmm1
jmp 0x471f74
cvtsi2sd xmm0, dword [ebp - 0x1b88]
movsd xmm1, qword [ebp - 0xb2a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2b0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb2b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4720d5
mov eax, dword [ebp - 0x1b88]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb2a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2a0], xmm1
jmp 0x4720ee
mov ecx, 1
test ecx, ecx
je 0x4720ea
jmp 0x4721aa
jmp 0x472111
cvtsi2sd xmm0, dword [ebp - 0x1b88]
movsd xmm1, qword [ebp - 0xb2a0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1b8c], edx
jmp 0x4721b4
xor eax, eax
je 0x47211b
jmp 0x47212a
jmp 0x471f74
jmp 0x471f74
mov ecx, 2
test ecx, ecx
je 0x4721aa
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1b90], eax
cvtsi2sd xmm0, dword [ebp - 0x1b90]
mov eax, dword [ebp - 0x1b90]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb2a0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1b8c], ecx
jmp 0x4721b4
mov dword [ebp - 0x1b8c], 8
mov edx, dword [ebp - 0x1b84]
shl edx, 2
add edx, dword [ebp - 0x1b80]
mov eax, dword [ebp - 0x1b8c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1b84]
shl ecx, 2
add ecx, dword [ebp - 0x1b80]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x472cfa
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4724ec
xor eax, eax
je 0x47225e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47229a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e08]
movsd qword [ebp - 0xb2b8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47243a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47243a
mov dword [ebp - 0x1b94], 0
jmp 0x472319
cmp dword [ebp - 0x1b94], 0xf
jae 0x472435
cvtsi2sd xmm0, dword [ebp - 0x1b94]
movsd xmm1, qword [ebp - 0xb2b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2c0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb2c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x472388
mov ecx, dword [ebp - 0x1b94]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb2b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2b8], xmm1
jmp 0x472284
cvtsi2sd xmm0, dword [ebp - 0x1b94]
movsd xmm1, qword [ebp - 0xb2b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2c8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb2c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4723e5
mov eax, dword [ebp - 0x1b94]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb2b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2b8], xmm1
jmp 0x4723fe
mov ecx, 1
test ecx, ecx
je 0x4723fa
jmp 0x4724ba
jmp 0x472421
cvtsi2sd xmm0, dword [ebp - 0x1b94]
movsd xmm1, qword [ebp - 0xb2b8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1b98], edx
jmp 0x4724c4
xor eax, eax
je 0x47242b
jmp 0x47243a
jmp 0x472284
jmp 0x472284
mov ecx, 2
test ecx, ecx
je 0x4724ba
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1b9c], eax
cvtsi2sd xmm0, dword [ebp - 0x1b9c]
mov eax, dword [ebp - 0x1b9c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb2b8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1b98], ecx
jmp 0x4724c4
mov dword [ebp - 0x1b98], 8
mov edx, dword [ebp - 0x1b84]
shl edx, 2
add edx, dword [ebp - 0x1b80]
mov eax, dword [ebp - 0x1b98]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1b84]
shl ecx, 2
add ecx, dword [ebp - 0x1b80]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4727b7
xor eax, eax
je 0x472529
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x472565
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e00]
movsd qword [ebp - 0xb2d0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x472705
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x472705
mov dword [ebp - 0x1ba0], 0
jmp 0x4725e4
cmp dword [ebp - 0x1ba0], 0xf
jae 0x472700
cvtsi2sd xmm0, dword [ebp - 0x1ba0]
movsd xmm1, qword [ebp - 0xb2d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb2d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x472653
mov ecx, dword [ebp - 0x1ba0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb2d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2d0], xmm1
jmp 0x47254f
cvtsi2sd xmm0, dword [ebp - 0x1ba0]
movsd xmm1, qword [ebp - 0xb2d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb2e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4726b0
mov eax, dword [ebp - 0x1ba0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb2d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2d0], xmm1
jmp 0x4726c9
mov ecx, 1
test ecx, ecx
je 0x4726c5
jmp 0x472785
jmp 0x4726ec
cvtsi2sd xmm0, dword [ebp - 0x1ba0]
movsd xmm1, qword [ebp - 0xb2d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1ba4], edx
jmp 0x47278f
xor eax, eax
je 0x4726f6
jmp 0x472705
jmp 0x47254f
jmp 0x47254f
mov ecx, 2
test ecx, ecx
je 0x472785
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ba8], eax
cvtsi2sd xmm0, dword [ebp - 0x1ba8]
mov eax, dword [ebp - 0x1ba8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb2d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1ba4], ecx
jmp 0x47278f
mov dword [ebp - 0x1ba4], 8
mov edx, dword [ebp - 0x1b84]
shl edx, 2
add edx, dword [ebp - 0x1b80]
mov eax, dword [ebp - 0x1ba4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1b84]
shl ecx, 2
add ecx, dword [ebp - 0x1b80]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1b84]
add edx, 0xffffffbc
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb2e8], xmm0
xor eax, eax
je 0x4727d1
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47280d
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb2e8]
movsd qword [ebp - 0xb2f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4729ad
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4729ad
mov dword [ebp - 0x1bac], 0
jmp 0x47288c
cmp dword [ebp - 0x1bac], 0xf
jae 0x4729a8
cvtsi2sd xmm0, dword [ebp - 0x1bac]
movsd xmm1, qword [ebp - 0xb2f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb2f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4728fb
mov ecx, dword [ebp - 0x1bac]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb2f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2f0], xmm1
jmp 0x4727f7
cvtsi2sd xmm0, dword [ebp - 0x1bac]
movsd xmm1, qword [ebp - 0xb2f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb300], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb300]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x472958
mov eax, dword [ebp - 0x1bac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb2f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb2f0], xmm1
jmp 0x472971
mov ecx, 1
test ecx, ecx
je 0x47296d
jmp 0x472a2d
jmp 0x472994
cvtsi2sd xmm0, dword [ebp - 0x1bac]
movsd xmm1, qword [ebp - 0xb2f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1bb0], edx
jmp 0x472a37
xor eax, eax
je 0x47299e
jmp 0x4729ad
jmp 0x4727f7
jmp 0x4727f7
mov ecx, 2
test ecx, ecx
je 0x472a2d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1bb4], eax
cvtsi2sd xmm0, dword [ebp - 0x1bb4]
mov eax, dword [ebp - 0x1bb4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb2f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1bb0], ecx
jmp 0x472a37
mov dword [ebp - 0x1bb0], 8
mov edx, dword [ebp - 0x1b84]
add edx, 0xffffffbc
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb308], xmm0
xor eax, eax
je 0x472a51
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x472a8d
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb308]
movsd qword [ebp - 0xb310], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x472c2d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x472c2d
mov dword [ebp - 0x1bb8], 0
jmp 0x472b0c
cmp dword [ebp - 0x1bb8], 0xf
jae 0x472c28
cvtsi2sd xmm0, dword [ebp - 0x1bb8]
movsd xmm1, qword [ebp - 0xb310]
addsd xmm1, xmm0
movsd qword [ebp - 0xb318], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb318]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x472b7b
mov ecx, dword [ebp - 0x1bb8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb310]
addsd xmm1, xmm0
movsd qword [ebp - 0xb310], xmm1
jmp 0x472a77
cvtsi2sd xmm0, dword [ebp - 0x1bb8]
movsd xmm1, qword [ebp - 0xb310]
addsd xmm1, xmm0
movsd qword [ebp - 0xb320], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb320]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x472bd8
mov eax, dword [ebp - 0x1bb8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb310]
addsd xmm1, xmm0
movsd qword [ebp - 0xb310], xmm1
jmp 0x472bf1
mov ecx, 1
test ecx, ecx
je 0x472bed
jmp 0x472cad
jmp 0x472c14
cvtsi2sd xmm0, dword [ebp - 0x1bb8]
movsd xmm1, qword [ebp - 0xb310]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1bbc], edx
jmp 0x472cb7
xor eax, eax
je 0x472c1e
jmp 0x472c2d
jmp 0x472a77
jmp 0x472a77
mov ecx, 2
test ecx, ecx
je 0x472cad
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1bc0], eax
cvtsi2sd xmm0, dword [ebp - 0x1bc0]
mov eax, dword [ebp - 0x1bc0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb310]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1bbc], ecx
jmp 0x472cb7
mov dword [ebp - 0x1bbc], 8
mov edx, dword [ebp - 0x1b84]
shl edx, 2
add edx, dword [ebp - 0x1b80]
mov eax, dword [ebp - 0x1bb0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1b84]
shl ecx, 2
add ecx, dword [ebp - 0x1b80]
mov edx, dword [ebp - 0x1bbc]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1b84]
shl ecx, 2
add ecx, dword [ebp - 0x1b80]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x472fc5
xor eax, eax
je 0x472d37
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x472d73
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df8]
movsd qword [ebp - 0xb328], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x472f13
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x472f13
mov dword [ebp - 0x1bc4], 0
jmp 0x472df2
cmp dword [ebp - 0x1bc4], 0xf
jae 0x472f0e
cvtsi2sd xmm0, dword [ebp - 0x1bc4]
movsd xmm1, qword [ebp - 0xb328]
addsd xmm1, xmm0
movsd qword [ebp - 0xb330], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb330]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x472e61
mov ecx, dword [ebp - 0x1bc4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb328]
addsd xmm1, xmm0
movsd qword [ebp - 0xb328], xmm1
jmp 0x472d5d
cvtsi2sd xmm0, dword [ebp - 0x1bc4]
movsd xmm1, qword [ebp - 0xb328]
addsd xmm1, xmm0
movsd qword [ebp - 0xb338], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb338]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x472ebe
mov eax, dword [ebp - 0x1bc4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb328]
addsd xmm1, xmm0
movsd qword [ebp - 0xb328], xmm1
jmp 0x472ed7
mov ecx, 1
test ecx, ecx
je 0x472ed3
jmp 0x472f93
jmp 0x472efa
cvtsi2sd xmm0, dword [ebp - 0x1bc4]
movsd xmm1, qword [ebp - 0xb328]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1bc8], edx
jmp 0x472f9d
xor eax, eax
je 0x472f04
jmp 0x472f13
jmp 0x472d5d
jmp 0x472d5d
mov ecx, 2
test ecx, ecx
je 0x472f93
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1bcc], eax
cvtsi2sd xmm0, dword [ebp - 0x1bcc]
mov eax, dword [ebp - 0x1bcc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb328]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1bc8], ecx
jmp 0x472f9d
mov dword [ebp - 0x1bc8], 8
mov edx, dword [ebp - 0x1b84]
shl edx, 2
add edx, dword [ebp - 0x1b80]
mov eax, dword [ebp - 0x1bc8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1b84]
shl ecx, 2
add ecx, dword [ebp - 0x1b80]
mov dword [ecx], eax
jmp 0x471ef5
mov edx, dword [ebp - 0x1b7c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1b7c]
mov dword [ebp - 0x1bd0], eax
mov ecx, dword [ebp - 0x1bd0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1bd4], ecx
mov edx, dword [ebp - 0x1bd4]
mov dword [ebp - 0x1bd8], edx
xor eax, eax
mov byte [ebp - 0x49], al
lea ecx, [ebp - 0x49]
call fcn.00425460
mov dword [ebp - 0x1bdc], eax
mov ecx, dword [ebp - 0x1bdc]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x474115
mov eax, dword [ebp - 0x1bdc]
mov dword [ebp - 0x1be0], eax
mov dword [ebp - 0x1be4], 0
jmp 0x47304f
mov ecx, dword [ebp - 0x1be4]
add ecx, 1
mov dword [ebp - 0x1be4], ecx
cmp dword [ebp - 0x1be4], 1
jae 0x474115
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x473327
xor eax, eax
je 0x473099
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4730d5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e10]
movsd qword [ebp - 0xb340], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x473275
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x473275
mov dword [ebp - 0x1be8], 0
jmp 0x473154
cmp dword [ebp - 0x1be8], 0xf
jae 0x473270
cvtsi2sd xmm0, dword [ebp - 0x1be8]
movsd xmm1, qword [ebp - 0xb340]
addsd xmm1, xmm0
movsd qword [ebp - 0xb348], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb348]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4731c3
mov ecx, dword [ebp - 0x1be8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb340]
addsd xmm1, xmm0
movsd qword [ebp - 0xb340], xmm1
jmp 0x4730bf
cvtsi2sd xmm0, dword [ebp - 0x1be8]
movsd xmm1, qword [ebp - 0xb340]
addsd xmm1, xmm0
movsd qword [ebp - 0xb350], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb350]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x473220
mov eax, dword [ebp - 0x1be8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb340]
addsd xmm1, xmm0
movsd qword [ebp - 0xb340], xmm1
jmp 0x473239
mov ecx, 1
test ecx, ecx
je 0x473235
jmp 0x4732f5
jmp 0x47325c
cvtsi2sd xmm0, dword [ebp - 0x1be8]
movsd xmm1, qword [ebp - 0xb340]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1bec], edx
jmp 0x4732ff
xor eax, eax
je 0x473266
jmp 0x473275
jmp 0x4730bf
jmp 0x4730bf
mov ecx, 2
test ecx, ecx
je 0x4732f5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1bf0], eax
cvtsi2sd xmm0, dword [ebp - 0x1bf0]
mov eax, dword [ebp - 0x1bf0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb340]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1bec], ecx
jmp 0x4732ff
mov dword [ebp - 0x1bec], 8
mov edx, dword [ebp - 0x1be4]
shl edx, 2
add edx, dword [ebp - 0x1be0]
mov eax, dword [ebp - 0x1bec]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1be4]
shl ecx, 2
add ecx, dword [ebp - 0x1be0]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x473e45
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x473637
xor eax, eax
je 0x4733a9
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4733e5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e08]
movsd qword [ebp - 0xb358], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x473585
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x473585
mov dword [ebp - 0x1bf4], 0
jmp 0x473464
cmp dword [ebp - 0x1bf4], 0xf
jae 0x473580
cvtsi2sd xmm0, dword [ebp - 0x1bf4]
movsd xmm1, qword [ebp - 0xb358]
addsd xmm1, xmm0
movsd qword [ebp - 0xb360], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb360]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4734d3
mov ecx, dword [ebp - 0x1bf4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb358]
addsd xmm1, xmm0
movsd qword [ebp - 0xb358], xmm1
jmp 0x4733cf
cvtsi2sd xmm0, dword [ebp - 0x1bf4]
movsd xmm1, qword [ebp - 0xb358]
addsd xmm1, xmm0
movsd qword [ebp - 0xb368], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb368]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x473530
mov eax, dword [ebp - 0x1bf4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb358]
addsd xmm1, xmm0
movsd qword [ebp - 0xb358], xmm1
jmp 0x473549
mov ecx, 1
test ecx, ecx
je 0x473545
jmp 0x473605
jmp 0x47356c
cvtsi2sd xmm0, dword [ebp - 0x1bf4]
movsd xmm1, qword [ebp - 0xb358]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1bf8], edx
jmp 0x47360f
xor eax, eax
je 0x473576
jmp 0x473585
jmp 0x4733cf
jmp 0x4733cf
mov ecx, 2
test ecx, ecx
je 0x473605
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1bfc], eax
cvtsi2sd xmm0, dword [ebp - 0x1bfc]
mov eax, dword [ebp - 0x1bfc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb358]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1bf8], ecx
jmp 0x47360f
mov dword [ebp - 0x1bf8], 8
mov edx, dword [ebp - 0x1be4]
shl edx, 2
add edx, dword [ebp - 0x1be0]
mov eax, dword [ebp - 0x1bf8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1be4]
shl ecx, 2
add ecx, dword [ebp - 0x1be0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x473902
xor eax, eax
je 0x473674
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4736b0
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e00]
movsd qword [ebp - 0xb370], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x473850
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x473850
mov dword [ebp - 0x1c00], 0
jmp 0x47372f
cmp dword [ebp - 0x1c00], 0xf
jae 0x47384b
cvtsi2sd xmm0, dword [ebp - 0x1c00]
movsd xmm1, qword [ebp - 0xb370]
addsd xmm1, xmm0
movsd qword [ebp - 0xb378], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb378]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47379e
mov ecx, dword [ebp - 0x1c00]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb370]
addsd xmm1, xmm0
movsd qword [ebp - 0xb370], xmm1
jmp 0x47369a
cvtsi2sd xmm0, dword [ebp - 0x1c00]
movsd xmm1, qword [ebp - 0xb370]
addsd xmm1, xmm0
movsd qword [ebp - 0xb380], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb380]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4737fb
mov eax, dword [ebp - 0x1c00]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb370]
addsd xmm1, xmm0
movsd qword [ebp - 0xb370], xmm1
jmp 0x473814
mov ecx, 1
test ecx, ecx
je 0x473810
jmp 0x4738d0
jmp 0x473837
cvtsi2sd xmm0, dword [ebp - 0x1c00]
movsd xmm1, qword [ebp - 0xb370]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1c04], edx
jmp 0x4738da
xor eax, eax
je 0x473841
jmp 0x473850
jmp 0x47369a
jmp 0x47369a
mov ecx, 2
test ecx, ecx
je 0x4738d0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1c08], eax
cvtsi2sd xmm0, dword [ebp - 0x1c08]
mov eax, dword [ebp - 0x1c08]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb370]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1c04], ecx
jmp 0x4738da
mov dword [ebp - 0x1c04], 8
mov edx, dword [ebp - 0x1be4]
shl edx, 2
add edx, dword [ebp - 0x1be0]
mov eax, dword [ebp - 0x1c04]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1be4]
shl ecx, 2
add ecx, dword [ebp - 0x1be0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1be4]
add edx, 0xffffffbc
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb388], xmm0
xor eax, eax
je 0x47391c
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x473958
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb388]
movsd qword [ebp - 0xb390], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x473af8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x473af8
mov dword [ebp - 0x1c0c], 0
jmp 0x4739d7
cmp dword [ebp - 0x1c0c], 0xf
jae 0x473af3
cvtsi2sd xmm0, dword [ebp - 0x1c0c]
movsd xmm1, qword [ebp - 0xb390]
addsd xmm1, xmm0
movsd qword [ebp - 0xb398], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb398]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x473a46
mov ecx, dword [ebp - 0x1c0c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb390]
addsd xmm1, xmm0
movsd qword [ebp - 0xb390], xmm1
jmp 0x473942
cvtsi2sd xmm0, dword [ebp - 0x1c0c]
movsd xmm1, qword [ebp - 0xb390]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb3a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x473aa3
mov eax, dword [ebp - 0x1c0c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb390]
addsd xmm1, xmm0
movsd qword [ebp - 0xb390], xmm1
jmp 0x473abc
mov ecx, 1
test ecx, ecx
je 0x473ab8
jmp 0x473b78
jmp 0x473adf
cvtsi2sd xmm0, dword [ebp - 0x1c0c]
movsd xmm1, qword [ebp - 0xb390]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1c10], edx
jmp 0x473b82
xor eax, eax
je 0x473ae9
jmp 0x473af8
jmp 0x473942
jmp 0x473942
mov ecx, 2
test ecx, ecx
je 0x473b78
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1c14], eax
cvtsi2sd xmm0, dword [ebp - 0x1c14]
mov eax, dword [ebp - 0x1c14]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb390]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1c10], ecx
jmp 0x473b82
mov dword [ebp - 0x1c10], 8
mov edx, dword [ebp - 0x1be4]
add edx, 0xffffffbc
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb3a8], xmm0
xor eax, eax
je 0x473b9c
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x473bd8
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb3a8]
movsd qword [ebp - 0xb3b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x473d78
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x473d78
mov dword [ebp - 0x1c18], 0
jmp 0x473c57
cmp dword [ebp - 0x1c18], 0xf
jae 0x473d73
cvtsi2sd xmm0, dword [ebp - 0x1c18]
movsd xmm1, qword [ebp - 0xb3b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb3b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x473cc6
mov ecx, dword [ebp - 0x1c18]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb3b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3b0], xmm1
jmp 0x473bc2
cvtsi2sd xmm0, dword [ebp - 0x1c18]
movsd xmm1, qword [ebp - 0xb3b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb3c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x473d23
mov eax, dword [ebp - 0x1c18]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb3b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3b0], xmm1
jmp 0x473d3c
mov ecx, 1
test ecx, ecx
je 0x473d38
jmp 0x473df8
jmp 0x473d5f
cvtsi2sd xmm0, dword [ebp - 0x1c18]
movsd xmm1, qword [ebp - 0xb3b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1c1c], edx
jmp 0x473e02
xor eax, eax
je 0x473d69
jmp 0x473d78
jmp 0x473bc2
jmp 0x473bc2
mov ecx, 2
test ecx, ecx
je 0x473df8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1c20], eax
cvtsi2sd xmm0, dword [ebp - 0x1c20]
mov eax, dword [ebp - 0x1c20]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb3b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1c1c], ecx
jmp 0x473e02
mov dword [ebp - 0x1c1c], 8
mov edx, dword [ebp - 0x1be4]
shl edx, 2
add edx, dword [ebp - 0x1be0]
mov eax, dword [ebp - 0x1c10]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1be4]
shl ecx, 2
add ecx, dword [ebp - 0x1be0]
mov edx, dword [ebp - 0x1c1c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1be4]
shl ecx, 2
add ecx, dword [ebp - 0x1be0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x474110
xor eax, eax
je 0x473e82
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x473ebe
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df8]
movsd qword [ebp - 0xb3c8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47405e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47405e
mov dword [ebp - 0x1c24], 0
jmp 0x473f3d
cmp dword [ebp - 0x1c24], 0xf
jae 0x474059
cvtsi2sd xmm0, dword [ebp - 0x1c24]
movsd xmm1, qword [ebp - 0xb3c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3d0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb3d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x473fac
mov ecx, dword [ebp - 0x1c24]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb3c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3c8], xmm1
jmp 0x473ea8
cvtsi2sd xmm0, dword [ebp - 0x1c24]
movsd xmm1, qword [ebp - 0xb3c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3d8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb3d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x474009
mov eax, dword [ebp - 0x1c24]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb3c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3c8], xmm1
jmp 0x474022
mov ecx, 1
test ecx, ecx
je 0x47401e
jmp 0x4740de
jmp 0x474045
cvtsi2sd xmm0, dword [ebp - 0x1c24]
movsd xmm1, qword [ebp - 0xb3c8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1c28], edx
jmp 0x4740e8
xor eax, eax
je 0x47404f
jmp 0x47405e
jmp 0x473ea8
jmp 0x473ea8
mov ecx, 2
test ecx, ecx
je 0x4740de
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1c2c], eax
cvtsi2sd xmm0, dword [ebp - 0x1c2c]
mov eax, dword [ebp - 0x1c2c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb3c8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1c28], ecx
jmp 0x4740e8
mov dword [ebp - 0x1c28], 8
mov edx, dword [ebp - 0x1be4]
shl edx, 2
add edx, dword [ebp - 0x1be0]
mov eax, dword [ebp - 0x1c28]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1be4]
shl ecx, 2
add ecx, dword [ebp - 0x1be0]
mov dword [ecx], eax
jmp 0x473040
mov edx, dword [ebp - 0x1bdc]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1bdc]
mov dword [ebp - 0x1c30], eax
mov ecx, dword [ebp - 0x1c30]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1c34], ecx
mov edx, dword [ebp - 0x1c34]
mov dword [ebp - 0x1c38], edx
mov eax, dword [ebp - 0x1bd8]
mov dword [ebp - 0x1b78], eax
cmp dword [ebp - 0x1b78], 0
je 0x4752b2
xor ecx, ecx
mov byte [ebp - 0x4a], cl
lea ecx, [ebp - 0x4a]
call fcn.00425430
mov dword [ebp - 0x1c3c], eax
mov edx, dword [ebp - 0x1c3c]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x475279
mov ecx, dword [ebp - 0x1c3c]
mov dword [ebp - 0x1c40], ecx
mov dword [ebp - 0x1c44], 0
jmp 0x4741b3
mov edx, dword [ebp - 0x1c44]
add edx, 1
mov dword [ebp - 0x1c44], edx
cmp dword [ebp - 0x1c44], 1
jae 0x475279
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47448b
xor eax, eax
je 0x4741fd
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x474239
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e10]
movsd qword [ebp - 0xb3e0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4743d9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4743d9
mov dword [ebp - 0x1c48], 0
jmp 0x4742b8
cmp dword [ebp - 0x1c48], 0xf
jae 0x4743d4
cvtsi2sd xmm0, dword [ebp - 0x1c48]
movsd xmm1, qword [ebp - 0xb3e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3e8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb3e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x474327
mov ecx, dword [ebp - 0x1c48]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb3e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3e0], xmm1
jmp 0x474223
cvtsi2sd xmm0, dword [ebp - 0x1c48]
movsd xmm1, qword [ebp - 0xb3e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3f0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb3f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x474384
mov eax, dword [ebp - 0x1c48]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb3e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3e0], xmm1
jmp 0x47439d
mov ecx, 1
test ecx, ecx
je 0x474399
jmp 0x474459
jmp 0x4743c0
cvtsi2sd xmm0, dword [ebp - 0x1c48]
movsd xmm1, qword [ebp - 0xb3e0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1c4c], edx
jmp 0x474463
xor eax, eax
je 0x4743ca
jmp 0x4743d9
jmp 0x474223
jmp 0x474223
mov ecx, 2
test ecx, ecx
je 0x474459
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1c50], eax
cvtsi2sd xmm0, dword [ebp - 0x1c50]
mov eax, dword [ebp - 0x1c50]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb3e0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1c4c], ecx
jmp 0x474463
mov dword [ebp - 0x1c4c], 8
mov edx, dword [ebp - 0x1c44]
shl edx, 2
add edx, dword [ebp - 0x1c40]
mov eax, dword [ebp - 0x1c4c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1c44]
shl ecx, 2
add ecx, dword [ebp - 0x1c40]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x474fa9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47479b
xor eax, eax
je 0x47450d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x474549
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e08]
movsd qword [ebp - 0xb3f8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4746e9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4746e9
mov dword [ebp - 0x1c54], 0
jmp 0x4745c8
cmp dword [ebp - 0x1c54], 0xf
jae 0x4746e4
cvtsi2sd xmm0, dword [ebp - 0x1c54]
movsd xmm1, qword [ebp - 0xb3f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb400], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb400]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x474637
mov ecx, dword [ebp - 0x1c54]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb3f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3f8], xmm1
jmp 0x474533
cvtsi2sd xmm0, dword [ebp - 0x1c54]
movsd xmm1, qword [ebp - 0xb3f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb408], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb408]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x474694
mov eax, dword [ebp - 0x1c54]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb3f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb3f8], xmm1
jmp 0x4746ad
mov ecx, 1
test ecx, ecx
je 0x4746a9
jmp 0x474769
jmp 0x4746d0
cvtsi2sd xmm0, dword [ebp - 0x1c54]
movsd xmm1, qword [ebp - 0xb3f8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1c58], edx
jmp 0x474773
xor eax, eax
je 0x4746da
jmp 0x4746e9
jmp 0x474533
jmp 0x474533
mov ecx, 2
test ecx, ecx
je 0x474769
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1c5c], eax
cvtsi2sd xmm0, dword [ebp - 0x1c5c]
mov eax, dword [ebp - 0x1c5c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb3f8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1c58], ecx
jmp 0x474773
mov dword [ebp - 0x1c58], 8
mov edx, dword [ebp - 0x1c44]
shl edx, 2
add edx, dword [ebp - 0x1c40]
mov eax, dword [ebp - 0x1c58]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1c44]
shl ecx, 2
add ecx, dword [ebp - 0x1c40]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x474a66
xor eax, eax
je 0x4747d8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x474814
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e00]
movsd qword [ebp - 0xb410], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4749b4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4749b4
mov dword [ebp - 0x1c60], 0
jmp 0x474893
cmp dword [ebp - 0x1c60], 0xf
jae 0x4749af
cvtsi2sd xmm0, dword [ebp - 0x1c60]
movsd xmm1, qword [ebp - 0xb410]
addsd xmm1, xmm0
movsd qword [ebp - 0xb418], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb418]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x474902
mov ecx, dword [ebp - 0x1c60]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb410]
addsd xmm1, xmm0
movsd qword [ebp - 0xb410], xmm1
jmp 0x4747fe
cvtsi2sd xmm0, dword [ebp - 0x1c60]
movsd xmm1, qword [ebp - 0xb410]
addsd xmm1, xmm0
movsd qword [ebp - 0xb420], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb420]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47495f
mov eax, dword [ebp - 0x1c60]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb410]
addsd xmm1, xmm0
movsd qword [ebp - 0xb410], xmm1
jmp 0x474978
mov ecx, 1
test ecx, ecx
je 0x474974
jmp 0x474a34
jmp 0x47499b
cvtsi2sd xmm0, dword [ebp - 0x1c60]
movsd xmm1, qword [ebp - 0xb410]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1c64], edx
jmp 0x474a3e
xor eax, eax
je 0x4749a5
jmp 0x4749b4
jmp 0x4747fe
jmp 0x4747fe
mov ecx, 2
test ecx, ecx
je 0x474a34
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1c68], eax
cvtsi2sd xmm0, dword [ebp - 0x1c68]
mov eax, dword [ebp - 0x1c68]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb410]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1c64], ecx
jmp 0x474a3e
mov dword [ebp - 0x1c64], 8
mov edx, dword [ebp - 0x1c44]
shl edx, 2
add edx, dword [ebp - 0x1c40]
mov eax, dword [ebp - 0x1c64]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1c44]
shl ecx, 2
add ecx, dword [ebp - 0x1c40]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1c44]
add edx, 0xffffffbc
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb428], xmm0
xor eax, eax
je 0x474a80
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x474abc
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb428]
movsd qword [ebp - 0xb430], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x474c5c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x474c5c
mov dword [ebp - 0x1c6c], 0
jmp 0x474b3b
cmp dword [ebp - 0x1c6c], 0xf
jae 0x474c57
cvtsi2sd xmm0, dword [ebp - 0x1c6c]
movsd xmm1, qword [ebp - 0xb430]
addsd xmm1, xmm0
movsd qword [ebp - 0xb438], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb438]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x474baa
mov ecx, dword [ebp - 0x1c6c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb430]
addsd xmm1, xmm0
movsd qword [ebp - 0xb430], xmm1
jmp 0x474aa6
cvtsi2sd xmm0, dword [ebp - 0x1c6c]
movsd xmm1, qword [ebp - 0xb430]
addsd xmm1, xmm0
movsd qword [ebp - 0xb440], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb440]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x474c07
mov eax, dword [ebp - 0x1c6c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb430]
addsd xmm1, xmm0
movsd qword [ebp - 0xb430], xmm1
jmp 0x474c20
mov ecx, 1
test ecx, ecx
je 0x474c1c
jmp 0x474cdc
jmp 0x474c43
cvtsi2sd xmm0, dword [ebp - 0x1c6c]
movsd xmm1, qword [ebp - 0xb430]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1c70], edx
jmp 0x474ce6
xor eax, eax
je 0x474c4d
jmp 0x474c5c
jmp 0x474aa6
jmp 0x474aa6
mov ecx, 2
test ecx, ecx
je 0x474cdc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1c74], eax
cvtsi2sd xmm0, dword [ebp - 0x1c74]
mov eax, dword [ebp - 0x1c74]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb430]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1c70], ecx
jmp 0x474ce6
mov dword [ebp - 0x1c70], 8
mov edx, dword [ebp - 0x1c44]
add edx, 0xffffffbc
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb448], xmm0
xor eax, eax
je 0x474d00
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x474d3c
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb448]
movsd qword [ebp - 0xb450], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x474edc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x474edc
mov dword [ebp - 0x1c78], 0
jmp 0x474dbb
cmp dword [ebp - 0x1c78], 0xf
jae 0x474ed7
cvtsi2sd xmm0, dword [ebp - 0x1c78]
movsd xmm1, qword [ebp - 0xb450]
addsd xmm1, xmm0
movsd qword [ebp - 0xb458], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb458]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x474e2a
mov ecx, dword [ebp - 0x1c78]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb450]
addsd xmm1, xmm0
movsd qword [ebp - 0xb450], xmm1
jmp 0x474d26
cvtsi2sd xmm0, dword [ebp - 0x1c78]
movsd xmm1, qword [ebp - 0xb450]
addsd xmm1, xmm0
movsd qword [ebp - 0xb460], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb460]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x474e87
mov eax, dword [ebp - 0x1c78]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb450]
addsd xmm1, xmm0
movsd qword [ebp - 0xb450], xmm1
jmp 0x474ea0
mov ecx, 1
test ecx, ecx
je 0x474e9c
jmp 0x474f5c
jmp 0x474ec3
cvtsi2sd xmm0, dword [ebp - 0x1c78]
movsd xmm1, qword [ebp - 0xb450]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1c7c], edx
jmp 0x474f66
xor eax, eax
je 0x474ecd
jmp 0x474edc
jmp 0x474d26
jmp 0x474d26
mov ecx, 2
test ecx, ecx
je 0x474f5c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1c80], eax
cvtsi2sd xmm0, dword [ebp - 0x1c80]
mov eax, dword [ebp - 0x1c80]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb450]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1c7c], ecx
jmp 0x474f66
mov dword [ebp - 0x1c7c], 8
mov edx, dword [ebp - 0x1c44]
shl edx, 2
add edx, dword [ebp - 0x1c40]
mov eax, dword [ebp - 0x1c70]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1c44]
shl ecx, 2
add ecx, dword [ebp - 0x1c40]
mov edx, dword [ebp - 0x1c7c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1c44]
shl ecx, 2
add ecx, dword [ebp - 0x1c40]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x475274
xor eax, eax
je 0x474fe6
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x475022
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df8]
movsd qword [ebp - 0xb468], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4751c2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4751c2
mov dword [ebp - 0x1c84], 0
jmp 0x4750a1
cmp dword [ebp - 0x1c84], 0xf
jae 0x4751bd
cvtsi2sd xmm0, dword [ebp - 0x1c84]
movsd xmm1, qword [ebp - 0xb468]
addsd xmm1, xmm0
movsd qword [ebp - 0xb470], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb470]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x475110
mov ecx, dword [ebp - 0x1c84]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb468]
addsd xmm1, xmm0
movsd qword [ebp - 0xb468], xmm1
jmp 0x47500c
cvtsi2sd xmm0, dword [ebp - 0x1c84]
movsd xmm1, qword [ebp - 0xb468]
addsd xmm1, xmm0
movsd qword [ebp - 0xb478], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb478]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47516d
mov eax, dword [ebp - 0x1c84]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb468]
addsd xmm1, xmm0
movsd qword [ebp - 0xb468], xmm1
jmp 0x475186
mov ecx, 1
test ecx, ecx
je 0x475182
jmp 0x475242
jmp 0x4751a9
cvtsi2sd xmm0, dword [ebp - 0x1c84]
movsd xmm1, qword [ebp - 0xb468]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1c88], edx
jmp 0x47524c
xor eax, eax
je 0x4751b3
jmp 0x4751c2
jmp 0x47500c
jmp 0x47500c
mov ecx, 2
test ecx, ecx
je 0x475242
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1c8c], eax
cvtsi2sd xmm0, dword [ebp - 0x1c8c]
mov eax, dword [ebp - 0x1c8c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb468]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1c88], ecx
jmp 0x47524c
mov dword [ebp - 0x1c88], 8
mov edx, dword [ebp - 0x1c44]
shl edx, 2
add edx, dword [ebp - 0x1c40]
mov eax, dword [ebp - 0x1c88]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1c44]
shl ecx, 2
add ecx, dword [ebp - 0x1c40]
mov dword [ecx], eax
jmp 0x4741a4
mov edx, dword [ebp - 0x1c3c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1c3c]
mov dword [ebp - 0x1c90], eax
mov ecx, dword [ebp - 0x1c90]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1c94], ecx
mov edx, dword [ebp - 0x1c94]
mov dword [ebp - 0x1c38], edx
xor eax, eax
mov byte [ebp - 0x4b], al
mov ecx, 0x1c
mov esi, 0x5efed8
lea edi, [ebp - 0x16842]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea ecx, [ebp - 0x16842]
mov dword [ebp - 0x1c98], ecx
mov edx, dword [ebp - 0x1c98]
mov dword [ebp - 0x1c9c], edx
mov eax, dword [ebp - 0x1c9c]
mov ecx, 2
imul edx, ecx, 0x38
movzx eax, word [eax + edx]
neg eax
sbb eax, eax
neg eax
mov byte [ebp - 0x4c], al
movzx ecx, byte [ebp - 0x4c]
test ecx, ecx
je 0x475363
mov dword [ebp - 0x1ca0], 0
jmp 0x475321
mov edx, dword [ebp - 0x1ca0]
add edx, 1
mov dword [ebp - 0x1ca0], edx
cmp dword [ebp - 0x1ca0], 0x39
jge 0x475363
mov eax, dword [ebp - 0x1ca0]
shl eax, 1
mov ecx, dword [ebp - 0x1c9c]
movzx ecx, word [ecx + eax]
mov eax, dword [ebp - 0x1ca0]
cdq
mov esi, 0x36
idiv esi
add edx, 0x38
xor ecx, edx
mov edx, dword [ebp - 0x1c9c]
mov eax, dword [ebp - 0x1ca0]
shl eax, 1
mov word [edx + eax], cx
jmp 0x475312
mov ecx, dword [ebp - 0x1c9c]
mov dword [ebp - 0x1ca4], ecx
mov edx, dword [ebp - 0x1ca4]
mov dword [ebp - 0x1ca8], edx
push 0x58
push 0x3a963686
push 0xf
push 0
call fcn.005d0d50
add esp, 0x10
mov dword [ebp - 0x1cac], eax
lea eax, [ebp - 0x16620]
push eax
lea ecx, [ebp - 0x16780]
push ecx
push 0
push 0
push 4
push 1
push 0
push 0
push 0
mov edx, dword [ebp - 0x1ca8]
push edx
call dword [ebp - 0x1cac]
mov dword [ebp - 0x1cb0], eax
cmp dword [ebp - 0x1cb0], 0
setne al
mov byte [ebp - 0x4d], al
movzx ecx, byte [ebp - 0x4d]
test ecx, ecx
jne 0x4753df
xor al, al
jmp 0x5a9e46
xor edx, edx
mov byte [ebp - 0x4e], dl
lea ecx, [ebp - 0x4e]
call fcn.004253e0
mov dword [ebp - 0x1cb4], eax
mov eax, dword [ebp - 0x1cb4]
movzx ecx, byte [eax + 4]
test ecx, ecx
jne 0x4764f1
mov edx, dword [ebp - 0x1cb4]
mov dword [ebp - 0x1cb8], edx
mov dword [ebp - 0x1cbc], 0
jmp 0x47542b
mov eax, dword [ebp - 0x1cbc]
add eax, 1
mov dword [ebp - 0x1cbc], eax
cmp dword [ebp - 0x1cbc], 1
jae 0x4764f1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx ecx, al
add esi, ecx
call fcn.005e7fe0
movsx edx, al
imul eax, edx, 3
movsx ecx, byte [0x7862ac]
imul eax, ecx
add esi, eax
call fcn.005e7fb0
movsx edx, al
sub esi, edx
je 0x475703
xor eax, eax
je 0x475475
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4754b1
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [0x736e08]
movsd qword [ebp - 0xb480], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x475651
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x475651
mov dword [ebp - 0x1cc0], 0
jmp 0x475530
cmp dword [ebp - 0x1cc0], 0xf
jae 0x47564c
cvtsi2sd xmm0, dword [ebp - 0x1cc0]
movsd xmm1, qword [ebp - 0xb480]
addsd xmm1, xmm0
movsd qword [ebp - 0xb488], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb488]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47559f
mov ecx, dword [ebp - 0x1cc0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb480]
addsd xmm1, xmm0
movsd qword [ebp - 0xb480], xmm1
jmp 0x47549b
cvtsi2sd xmm0, dword [ebp - 0x1cc0]
movsd xmm1, qword [ebp - 0xb480]
addsd xmm1, xmm0
movsd qword [ebp - 0xb490], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb490]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4755fc
mov eax, dword [ebp - 0x1cc0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb480]
addsd xmm1, xmm0
movsd qword [ebp - 0xb480], xmm1
jmp 0x475615
mov ecx, 1
test ecx, ecx
je 0x475611
jmp 0x4756d1
jmp 0x475638
cvtsi2sd xmm0, dword [ebp - 0x1cc0]
movsd xmm1, qword [ebp - 0xb480]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1cc4], edx
jmp 0x4756db
xor eax, eax
je 0x475642
jmp 0x475651
jmp 0x47549b
jmp 0x47549b
mov ecx, 2
test ecx, ecx
je 0x4756d1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1cc8], eax
cvtsi2sd xmm0, dword [ebp - 0x1cc8]
mov eax, dword [ebp - 0x1cc8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb480]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1cc4], ecx
jmp 0x4756db
mov dword [ebp - 0x1cc4], 8
mov edx, dword [ebp - 0x1cbc]
shl edx, 2
add edx, dword [ebp - 0x1cb8]
mov eax, dword [ebp - 0x1cc4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1cbc]
shl ecx, 2
add ecx, dword [ebp - 0x1cb8]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x476221
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x475a13
xor eax, eax
je 0x475785
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4757c1
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e00]
movsd qword [ebp - 0xb498], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x475961
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x475961
mov dword [ebp - 0x1ccc], 0
jmp 0x475840
cmp dword [ebp - 0x1ccc], 0xf
jae 0x47595c
cvtsi2sd xmm0, dword [ebp - 0x1ccc]
movsd xmm1, qword [ebp - 0xb498]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4a0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb4a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4758af
mov ecx, dword [ebp - 0x1ccc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb498]
addsd xmm1, xmm0
movsd qword [ebp - 0xb498], xmm1
jmp 0x4757ab
cvtsi2sd xmm0, dword [ebp - 0x1ccc]
movsd xmm1, qword [ebp - 0xb498]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4a8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb4a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47590c
mov eax, dword [ebp - 0x1ccc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb498]
addsd xmm1, xmm0
movsd qword [ebp - 0xb498], xmm1
jmp 0x475925
mov ecx, 1
test ecx, ecx
je 0x475921
jmp 0x4759e1
jmp 0x475948
cvtsi2sd xmm0, dword [ebp - 0x1ccc]
movsd xmm1, qword [ebp - 0xb498]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1cd0], edx
jmp 0x4759eb
xor eax, eax
je 0x475952
jmp 0x475961
jmp 0x4757ab
jmp 0x4757ab
mov ecx, 2
test ecx, ecx
je 0x4759e1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1cd4], eax
cvtsi2sd xmm0, dword [ebp - 0x1cd4]
mov eax, dword [ebp - 0x1cd4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb498]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1cd0], ecx
jmp 0x4759eb
mov dword [ebp - 0x1cd0], 8
mov edx, dword [ebp - 0x1cbc]
shl edx, 2
add edx, dword [ebp - 0x1cb8]
mov eax, dword [ebp - 0x1cd0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1cbc]
shl ecx, 2
add ecx, dword [ebp - 0x1cb8]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x475cde
xor eax, eax
je 0x475a50
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x475a8c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df8]
movsd qword [ebp - 0xb4b0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x475c2c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x475c2c
mov dword [ebp - 0x1cd8], 0
jmp 0x475b0b
cmp dword [ebp - 0x1cd8], 0xf
jae 0x475c27
cvtsi2sd xmm0, dword [ebp - 0x1cd8]
movsd xmm1, qword [ebp - 0xb4b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb4b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x475b7a
mov ecx, dword [ebp - 0x1cd8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb4b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4b0], xmm1
jmp 0x475a76
cvtsi2sd xmm0, dword [ebp - 0x1cd8]
movsd xmm1, qword [ebp - 0xb4b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb4c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x475bd7
mov eax, dword [ebp - 0x1cd8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb4b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4b0], xmm1
jmp 0x475bf0
mov ecx, 1
test ecx, ecx
je 0x475bec
jmp 0x475cac
jmp 0x475c13
cvtsi2sd xmm0, dword [ebp - 0x1cd8]
movsd xmm1, qword [ebp - 0xb4b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1cdc], edx
jmp 0x475cb6
xor eax, eax
je 0x475c1d
jmp 0x475c2c
jmp 0x475a76
jmp 0x475a76
mov ecx, 2
test ecx, ecx
je 0x475cac
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ce0], eax
cvtsi2sd xmm0, dword [ebp - 0x1ce0]
mov eax, dword [ebp - 0x1ce0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb4b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1cdc], ecx
jmp 0x475cb6
mov dword [ebp - 0x1cdc], 8
mov edx, dword [ebp - 0x1cbc]
shl edx, 2
add edx, dword [ebp - 0x1cb8]
mov eax, dword [ebp - 0x1cdc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1cbc]
shl ecx, 2
add ecx, dword [ebp - 0x1cb8]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1cbc]
add edx, 0xffffffbd
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb4c8], xmm0
xor eax, eax
je 0x475cf8
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x475d34
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb4c8]
movsd qword [ebp - 0xb4d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x475ed4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x475ed4
mov dword [ebp - 0x1ce4], 0
jmp 0x475db3
cmp dword [ebp - 0x1ce4], 0xf
jae 0x475ecf
cvtsi2sd xmm0, dword [ebp - 0x1ce4]
movsd xmm1, qword [ebp - 0xb4d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb4d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x475e22
mov ecx, dword [ebp - 0x1ce4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb4d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4d0], xmm1
jmp 0x475d1e
cvtsi2sd xmm0, dword [ebp - 0x1ce4]
movsd xmm1, qword [ebp - 0xb4d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb4e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x475e7f
mov eax, dword [ebp - 0x1ce4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb4d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4d0], xmm1
jmp 0x475e98
mov ecx, 1
test ecx, ecx
je 0x475e94
jmp 0x475f54
jmp 0x475ebb
cvtsi2sd xmm0, dword [ebp - 0x1ce4]
movsd xmm1, qword [ebp - 0xb4d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1ce8], edx
jmp 0x475f5e
xor eax, eax
je 0x475ec5
jmp 0x475ed4
jmp 0x475d1e
jmp 0x475d1e
mov ecx, 2
test ecx, ecx
je 0x475f54
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1cec], eax
cvtsi2sd xmm0, dword [ebp - 0x1cec]
mov eax, dword [ebp - 0x1cec]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb4d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1ce8], ecx
jmp 0x475f5e
mov dword [ebp - 0x1ce8], 8
mov edx, dword [ebp - 0x1cbc]
add edx, 0xffffffbd
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb4e8], xmm0
xor eax, eax
je 0x475f78
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x475fb4
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb4e8]
movsd qword [ebp - 0xb4f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x476154
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x476154
mov dword [ebp - 0x1cf0], 0
jmp 0x476033
cmp dword [ebp - 0x1cf0], 0xf
jae 0x47614f
cvtsi2sd xmm0, dword [ebp - 0x1cf0]
movsd xmm1, qword [ebp - 0xb4f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb4f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4760a2
mov ecx, dword [ebp - 0x1cf0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb4f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4f0], xmm1
jmp 0x475f9e
cvtsi2sd xmm0, dword [ebp - 0x1cf0]
movsd xmm1, qword [ebp - 0xb4f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb500], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb500]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4760ff
mov eax, dword [ebp - 0x1cf0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb4f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb4f0], xmm1
jmp 0x476118
mov ecx, 1
test ecx, ecx
je 0x476114
jmp 0x4761d4
jmp 0x47613b
cvtsi2sd xmm0, dword [ebp - 0x1cf0]
movsd xmm1, qword [ebp - 0xb4f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1cf4], edx
jmp 0x4761de
xor eax, eax
je 0x476145
jmp 0x476154
jmp 0x475f9e
jmp 0x475f9e
mov ecx, 2
test ecx, ecx
je 0x4761d4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1cf8], eax
cvtsi2sd xmm0, dword [ebp - 0x1cf8]
mov eax, dword [ebp - 0x1cf8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb4f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1cf4], ecx
jmp 0x4761de
mov dword [ebp - 0x1cf4], 8
mov edx, dword [ebp - 0x1cbc]
shl edx, 2
add edx, dword [ebp - 0x1cb8]
mov eax, dword [ebp - 0x1ce8]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1cbc]
shl ecx, 2
add ecx, dword [ebp - 0x1cb8]
mov edx, dword [ebp - 0x1cf4]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1cbc]
shl ecx, 2
add ecx, dword [ebp - 0x1cb8]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4764ec
xor eax, eax
je 0x47625e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47629a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df0]
movsd qword [ebp - 0xb508], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47643a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47643a
mov dword [ebp - 0x1cfc], 0
jmp 0x476319
cmp dword [ebp - 0x1cfc], 0xf
jae 0x476435
cvtsi2sd xmm0, dword [ebp - 0x1cfc]
movsd xmm1, qword [ebp - 0xb508]
addsd xmm1, xmm0
movsd qword [ebp - 0xb510], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb510]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x476388
mov ecx, dword [ebp - 0x1cfc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb508]
addsd xmm1, xmm0
movsd qword [ebp - 0xb508], xmm1
jmp 0x476284
cvtsi2sd xmm0, dword [ebp - 0x1cfc]
movsd xmm1, qword [ebp - 0xb508]
addsd xmm1, xmm0
movsd qword [ebp - 0xb518], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb518]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4763e5
mov eax, dword [ebp - 0x1cfc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb508]
addsd xmm1, xmm0
movsd qword [ebp - 0xb508], xmm1
jmp 0x4763fe
mov ecx, 1
test ecx, ecx
je 0x4763fa
jmp 0x4764ba
jmp 0x476421
cvtsi2sd xmm0, dword [ebp - 0x1cfc]
movsd xmm1, qword [ebp - 0xb508]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1d00], edx
jmp 0x4764c4
xor eax, eax
je 0x47642b
jmp 0x47643a
jmp 0x476284
jmp 0x476284
mov ecx, 2
test ecx, ecx
je 0x4764ba
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1d04], eax
cvtsi2sd xmm0, dword [ebp - 0x1d04]
mov eax, dword [ebp - 0x1d04]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb508]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1d00], ecx
jmp 0x4764c4
mov dword [ebp - 0x1d00], 8
mov edx, dword [ebp - 0x1cbc]
shl edx, 2
add edx, dword [ebp - 0x1cb8]
mov eax, dword [ebp - 0x1d00]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1cbc]
shl ecx, 2
add ecx, dword [ebp - 0x1cb8]
mov dword [ecx], eax
jmp 0x47541c
mov edx, dword [ebp - 0x1cb4]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1cb4]
mov dword [ebp - 0x1d08], eax
mov ecx, dword [ebp - 0x1d08]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1d0c], ecx
mov edx, dword [ebp - 0x1d0c]
mov dword [ebp - 0x1d10], edx
xor eax, eax
mov byte [ebp - 0x4f], al
lea ecx, [ebp - 0x4f]
call fcn.004253b0
mov dword [ebp - 0x1d14], eax
mov ecx, dword [ebp - 0x1d14]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x47763c
mov eax, dword [ebp - 0x1d14]
mov dword [ebp - 0x1d18], eax
mov dword [ebp - 0x1d1c], 0
jmp 0x476576
mov ecx, dword [ebp - 0x1d1c]
add ecx, 1
mov dword [ebp - 0x1d1c], ecx
cmp dword [ebp - 0x1d1c], 1
jae 0x47763c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47684e
xor eax, eax
je 0x4765c0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4765fc
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e08]
movsd qword [ebp - 0xb520], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47679c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47679c
mov dword [ebp - 0x1d20], 0
jmp 0x47667b
cmp dword [ebp - 0x1d20], 0xf
jae 0x476797
cvtsi2sd xmm0, dword [ebp - 0x1d20]
movsd xmm1, qword [ebp - 0xb520]
addsd xmm1, xmm0
movsd qword [ebp - 0xb528], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb528]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4766ea
mov ecx, dword [ebp - 0x1d20]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb520]
addsd xmm1, xmm0
movsd qword [ebp - 0xb520], xmm1
jmp 0x4765e6
cvtsi2sd xmm0, dword [ebp - 0x1d20]
movsd xmm1, qword [ebp - 0xb520]
addsd xmm1, xmm0
movsd qword [ebp - 0xb530], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb530]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x476747
mov eax, dword [ebp - 0x1d20]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb520]
addsd xmm1, xmm0
movsd qword [ebp - 0xb520], xmm1
jmp 0x476760
mov ecx, 1
test ecx, ecx
je 0x47675c
jmp 0x47681c
jmp 0x476783
cvtsi2sd xmm0, dword [ebp - 0x1d20]
movsd xmm1, qword [ebp - 0xb520]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1d24], edx
jmp 0x476826
xor eax, eax
je 0x47678d
jmp 0x47679c
jmp 0x4765e6
jmp 0x4765e6
mov ecx, 2
test ecx, ecx
je 0x47681c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1d28], eax
cvtsi2sd xmm0, dword [ebp - 0x1d28]
mov eax, dword [ebp - 0x1d28]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb520]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1d24], ecx
jmp 0x476826
mov dword [ebp - 0x1d24], 8
mov edx, dword [ebp - 0x1d1c]
shl edx, 2
add edx, dword [ebp - 0x1d18]
mov eax, dword [ebp - 0x1d24]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1d1c]
shl ecx, 2
add ecx, dword [ebp - 0x1d18]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47736c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x476b5e
xor eax, eax
je 0x4768d0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47690c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e00]
movsd qword [ebp - 0xb538], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x476aac
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x476aac
mov dword [ebp - 0x1d2c], 0
jmp 0x47698b
cmp dword [ebp - 0x1d2c], 0xf
jae 0x476aa7
cvtsi2sd xmm0, dword [ebp - 0x1d2c]
movsd xmm1, qword [ebp - 0xb538]
addsd xmm1, xmm0
movsd qword [ebp - 0xb540], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb540]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4769fa
mov ecx, dword [ebp - 0x1d2c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb538]
addsd xmm1, xmm0
movsd qword [ebp - 0xb538], xmm1
jmp 0x4768f6
cvtsi2sd xmm0, dword [ebp - 0x1d2c]
movsd xmm1, qword [ebp - 0xb538]
addsd xmm1, xmm0
movsd qword [ebp - 0xb548], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb548]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x476a57
mov eax, dword [ebp - 0x1d2c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb538]
addsd xmm1, xmm0
movsd qword [ebp - 0xb538], xmm1
jmp 0x476a70
mov ecx, 1
test ecx, ecx
je 0x476a6c
jmp 0x476b2c
jmp 0x476a93
cvtsi2sd xmm0, dword [ebp - 0x1d2c]
movsd xmm1, qword [ebp - 0xb538]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1d30], edx
jmp 0x476b36
xor eax, eax
je 0x476a9d
jmp 0x476aac
jmp 0x4768f6
jmp 0x4768f6
mov ecx, 2
test ecx, ecx
je 0x476b2c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1d34], eax
cvtsi2sd xmm0, dword [ebp - 0x1d34]
mov eax, dword [ebp - 0x1d34]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb538]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1d30], ecx
jmp 0x476b36
mov dword [ebp - 0x1d30], 8
mov edx, dword [ebp - 0x1d1c]
shl edx, 2
add edx, dword [ebp - 0x1d18]
mov eax, dword [ebp - 0x1d30]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1d1c]
shl ecx, 2
add ecx, dword [ebp - 0x1d18]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x476e29
xor eax, eax
je 0x476b9b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x476bd7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df8]
movsd qword [ebp - 0xb550], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x476d77
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x476d77
mov dword [ebp - 0x1d38], 0
jmp 0x476c56
cmp dword [ebp - 0x1d38], 0xf
jae 0x476d72
cvtsi2sd xmm0, dword [ebp - 0x1d38]
movsd xmm1, qword [ebp - 0xb550]
addsd xmm1, xmm0
movsd qword [ebp - 0xb558], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb558]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x476cc5
mov ecx, dword [ebp - 0x1d38]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb550]
addsd xmm1, xmm0
movsd qword [ebp - 0xb550], xmm1
jmp 0x476bc1
cvtsi2sd xmm0, dword [ebp - 0x1d38]
movsd xmm1, qword [ebp - 0xb550]
addsd xmm1, xmm0
movsd qword [ebp - 0xb560], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb560]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x476d22
mov eax, dword [ebp - 0x1d38]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb550]
addsd xmm1, xmm0
movsd qword [ebp - 0xb550], xmm1
jmp 0x476d3b
mov ecx, 1
test ecx, ecx
je 0x476d37
jmp 0x476df7
jmp 0x476d5e
cvtsi2sd xmm0, dword [ebp - 0x1d38]
movsd xmm1, qword [ebp - 0xb550]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1d3c], edx
jmp 0x476e01
xor eax, eax
je 0x476d68
jmp 0x476d77
jmp 0x476bc1
jmp 0x476bc1
mov ecx, 2
test ecx, ecx
je 0x476df7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1d40], eax
cvtsi2sd xmm0, dword [ebp - 0x1d40]
mov eax, dword [ebp - 0x1d40]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb550]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1d3c], ecx
jmp 0x476e01
mov dword [ebp - 0x1d3c], 8
mov edx, dword [ebp - 0x1d1c]
shl edx, 2
add edx, dword [ebp - 0x1d18]
mov eax, dword [ebp - 0x1d3c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1d1c]
shl ecx, 2
add ecx, dword [ebp - 0x1d18]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1d1c]
add edx, 0xffffffbd
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb568], xmm0
xor eax, eax
je 0x476e43
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x476e7f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb568]
movsd qword [ebp - 0xb570], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47701f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47701f
mov dword [ebp - 0x1d44], 0
jmp 0x476efe
cmp dword [ebp - 0x1d44], 0xf
jae 0x47701a
cvtsi2sd xmm0, dword [ebp - 0x1d44]
movsd xmm1, qword [ebp - 0xb570]
addsd xmm1, xmm0
movsd qword [ebp - 0xb578], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb578]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x476f6d
mov ecx, dword [ebp - 0x1d44]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb570]
addsd xmm1, xmm0
movsd qword [ebp - 0xb570], xmm1
jmp 0x476e69
cvtsi2sd xmm0, dword [ebp - 0x1d44]
movsd xmm1, qword [ebp - 0xb570]
addsd xmm1, xmm0
movsd qword [ebp - 0xb580], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb580]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x476fca
mov eax, dword [ebp - 0x1d44]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb570]
addsd xmm1, xmm0
movsd qword [ebp - 0xb570], xmm1
jmp 0x476fe3
mov ecx, 1
test ecx, ecx
je 0x476fdf
jmp 0x47709f
jmp 0x477006
cvtsi2sd xmm0, dword [ebp - 0x1d44]
movsd xmm1, qword [ebp - 0xb570]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1d48], edx
jmp 0x4770a9
xor eax, eax
je 0x477010
jmp 0x47701f
jmp 0x476e69
jmp 0x476e69
mov ecx, 2
test ecx, ecx
je 0x47709f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1d4c], eax
cvtsi2sd xmm0, dword [ebp - 0x1d4c]
mov eax, dword [ebp - 0x1d4c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb570]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1d48], ecx
jmp 0x4770a9
mov dword [ebp - 0x1d48], 8
mov edx, dword [ebp - 0x1d1c]
add edx, 0xffffffbd
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb588], xmm0
xor eax, eax
je 0x4770c3
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4770ff
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb588]
movsd qword [ebp - 0xb590], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47729f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47729f
mov dword [ebp - 0x1d50], 0
jmp 0x47717e
cmp dword [ebp - 0x1d50], 0xf
jae 0x47729a
cvtsi2sd xmm0, dword [ebp - 0x1d50]
movsd xmm1, qword [ebp - 0xb590]
addsd xmm1, xmm0
movsd qword [ebp - 0xb598], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb598]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4771ed
mov ecx, dword [ebp - 0x1d50]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb590]
addsd xmm1, xmm0
movsd qword [ebp - 0xb590], xmm1
jmp 0x4770e9
cvtsi2sd xmm0, dword [ebp - 0x1d50]
movsd xmm1, qword [ebp - 0xb590]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb5a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47724a
mov eax, dword [ebp - 0x1d50]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb590]
addsd xmm1, xmm0
movsd qword [ebp - 0xb590], xmm1
jmp 0x477263
mov ecx, 1
test ecx, ecx
je 0x47725f
jmp 0x47731f
jmp 0x477286
cvtsi2sd xmm0, dword [ebp - 0x1d50]
movsd xmm1, qword [ebp - 0xb590]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1d54], edx
jmp 0x477329
xor eax, eax
je 0x477290
jmp 0x47729f
jmp 0x4770e9
jmp 0x4770e9
mov ecx, 2
test ecx, ecx
je 0x47731f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1d58], eax
cvtsi2sd xmm0, dword [ebp - 0x1d58]
mov eax, dword [ebp - 0x1d58]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb590]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1d54], ecx
jmp 0x477329
mov dword [ebp - 0x1d54], 8
mov edx, dword [ebp - 0x1d1c]
shl edx, 2
add edx, dword [ebp - 0x1d18]
mov eax, dword [ebp - 0x1d48]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1d1c]
shl ecx, 2
add ecx, dword [ebp - 0x1d18]
mov edx, dword [ebp - 0x1d54]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1d1c]
shl ecx, 2
add ecx, dword [ebp - 0x1d18]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x477637
xor eax, eax
je 0x4773a9
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4773e5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df0]
movsd qword [ebp - 0xb5a8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x477585
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x477585
mov dword [ebp - 0x1d5c], 0
jmp 0x477464
cmp dword [ebp - 0x1d5c], 0xf
jae 0x477580
cvtsi2sd xmm0, dword [ebp - 0x1d5c]
movsd xmm1, qword [ebp - 0xb5a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5b0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb5b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4774d3
mov ecx, dword [ebp - 0x1d5c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb5a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5a8], xmm1
jmp 0x4773cf
cvtsi2sd xmm0, dword [ebp - 0x1d5c]
movsd xmm1, qword [ebp - 0xb5a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5b8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb5b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x477530
mov eax, dword [ebp - 0x1d5c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb5a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5a8], xmm1
jmp 0x477549
mov ecx, 1
test ecx, ecx
je 0x477545
jmp 0x477605
jmp 0x47756c
cvtsi2sd xmm0, dword [ebp - 0x1d5c]
movsd xmm1, qword [ebp - 0xb5a8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1d60], edx
jmp 0x47760f
xor eax, eax
je 0x477576
jmp 0x477585
jmp 0x4773cf
jmp 0x4773cf
mov ecx, 2
test ecx, ecx
je 0x477605
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1d64], eax
cvtsi2sd xmm0, dword [ebp - 0x1d64]
mov eax, dword [ebp - 0x1d64]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb5a8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1d60], ecx
jmp 0x47760f
mov dword [ebp - 0x1d60], 8
mov edx, dword [ebp - 0x1d1c]
shl edx, 2
add edx, dword [ebp - 0x1d18]
mov eax, dword [ebp - 0x1d60]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1d1c]
shl ecx, 2
add ecx, dword [ebp - 0x1d18]
mov dword [ecx], eax
jmp 0x476567
mov edx, dword [ebp - 0x1d14]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1d14]
mov dword [ebp - 0x1d68], eax
mov ecx, dword [ebp - 0x1d68]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1d6c], ecx
mov edx, dword [ebp - 0x1d6c]
mov dword [ebp - 0x1d70], edx
xor eax, eax
mov byte [ebp - 0x50], al
lea ecx, [ebp - 0x50]
call fcn.00425380
mov dword [ebp - 0x1d74], eax
mov ecx, dword [ebp - 0x1d74]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x478787
mov eax, dword [ebp - 0x1d74]
mov dword [ebp - 0x1d78], eax
mov dword [ebp - 0x1d7c], 0
jmp 0x4776c1
mov ecx, dword [ebp - 0x1d7c]
add ecx, 1
mov dword [ebp - 0x1d7c], ecx
cmp dword [ebp - 0x1d7c], 1
jae 0x478787
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x477999
xor eax, eax
je 0x47770b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x477747
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e08]
movsd qword [ebp - 0xb5c0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4778e7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4778e7
mov dword [ebp - 0x1d80], 0
jmp 0x4777c6
cmp dword [ebp - 0x1d80], 0xf
jae 0x4778e2
cvtsi2sd xmm0, dword [ebp - 0x1d80]
movsd xmm1, qword [ebp - 0xb5c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5c8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb5c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x477835
mov ecx, dword [ebp - 0x1d80]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb5c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5c0], xmm1
jmp 0x477731
cvtsi2sd xmm0, dword [ebp - 0x1d80]
movsd xmm1, qword [ebp - 0xb5c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5d0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb5d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x477892
mov eax, dword [ebp - 0x1d80]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb5c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5c0], xmm1
jmp 0x4778ab
mov ecx, 1
test ecx, ecx
je 0x4778a7
jmp 0x477967
jmp 0x4778ce
cvtsi2sd xmm0, dword [ebp - 0x1d80]
movsd xmm1, qword [ebp - 0xb5c0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1d84], edx
jmp 0x477971
xor eax, eax
je 0x4778d8
jmp 0x4778e7
jmp 0x477731
jmp 0x477731
mov ecx, 2
test ecx, ecx
je 0x477967
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1d88], eax
cvtsi2sd xmm0, dword [ebp - 0x1d88]
mov eax, dword [ebp - 0x1d88]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb5c0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1d84], ecx
jmp 0x477971
mov dword [ebp - 0x1d84], 8
mov edx, dword [ebp - 0x1d7c]
shl edx, 2
add edx, dword [ebp - 0x1d78]
mov eax, dword [ebp - 0x1d84]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1d7c]
shl ecx, 2
add ecx, dword [ebp - 0x1d78]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4784b7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x477ca9
xor eax, eax
je 0x477a1b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x477a57
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e00]
movsd qword [ebp - 0xb5d8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x477bf7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x477bf7
mov dword [ebp - 0x1d8c], 0
jmp 0x477ad6
cmp dword [ebp - 0x1d8c], 0xf
jae 0x477bf2
cvtsi2sd xmm0, dword [ebp - 0x1d8c]
movsd xmm1, qword [ebp - 0xb5d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5e0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb5e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x477b45
mov ecx, dword [ebp - 0x1d8c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb5d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5d8], xmm1
jmp 0x477a41
cvtsi2sd xmm0, dword [ebp - 0x1d8c]
movsd xmm1, qword [ebp - 0xb5d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5e8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb5e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x477ba2
mov eax, dword [ebp - 0x1d8c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb5d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5d8], xmm1
jmp 0x477bbb
mov ecx, 1
test ecx, ecx
je 0x477bb7
jmp 0x477c77
jmp 0x477bde
cvtsi2sd xmm0, dword [ebp - 0x1d8c]
movsd xmm1, qword [ebp - 0xb5d8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1d90], edx
jmp 0x477c81
xor eax, eax
je 0x477be8
jmp 0x477bf7
jmp 0x477a41
jmp 0x477a41
mov ecx, 2
test ecx, ecx
je 0x477c77
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1d94], eax
cvtsi2sd xmm0, dword [ebp - 0x1d94]
mov eax, dword [ebp - 0x1d94]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb5d8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1d90], ecx
jmp 0x477c81
mov dword [ebp - 0x1d90], 8
mov edx, dword [ebp - 0x1d7c]
shl edx, 2
add edx, dword [ebp - 0x1d78]
mov eax, dword [ebp - 0x1d90]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1d7c]
shl ecx, 2
add ecx, dword [ebp - 0x1d78]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x477f74
xor eax, eax
je 0x477ce6
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x477d22
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df8]
movsd qword [ebp - 0xb5f0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x477ec2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x477ec2
mov dword [ebp - 0x1d98], 0
jmp 0x477da1
cmp dword [ebp - 0x1d98], 0xf
jae 0x477ebd
cvtsi2sd xmm0, dword [ebp - 0x1d98]
movsd xmm1, qword [ebp - 0xb5f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb5f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x477e10
mov ecx, dword [ebp - 0x1d98]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb5f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5f0], xmm1
jmp 0x477d0c
cvtsi2sd xmm0, dword [ebp - 0x1d98]
movsd xmm1, qword [ebp - 0xb5f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb600], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb600]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x477e6d
mov eax, dword [ebp - 0x1d98]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb5f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb5f0], xmm1
jmp 0x477e86
mov ecx, 1
test ecx, ecx
je 0x477e82
jmp 0x477f42
jmp 0x477ea9
cvtsi2sd xmm0, dword [ebp - 0x1d98]
movsd xmm1, qword [ebp - 0xb5f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1d9c], edx
jmp 0x477f4c
xor eax, eax
je 0x477eb3
jmp 0x477ec2
jmp 0x477d0c
jmp 0x477d0c
mov ecx, 2
test ecx, ecx
je 0x477f42
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1da0], eax
cvtsi2sd xmm0, dword [ebp - 0x1da0]
mov eax, dword [ebp - 0x1da0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb5f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1d9c], ecx
jmp 0x477f4c
mov dword [ebp - 0x1d9c], 8
mov edx, dword [ebp - 0x1d7c]
shl edx, 2
add edx, dword [ebp - 0x1d78]
mov eax, dword [ebp - 0x1d9c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1d7c]
shl ecx, 2
add ecx, dword [ebp - 0x1d78]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1d7c]
add edx, 0xffffffbd
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb608], xmm0
xor eax, eax
je 0x477f8e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x477fca
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb608]
movsd qword [ebp - 0xb610], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47816a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47816a
mov dword [ebp - 0x1da4], 0
jmp 0x478049
cmp dword [ebp - 0x1da4], 0xf
jae 0x478165
cvtsi2sd xmm0, dword [ebp - 0x1da4]
movsd xmm1, qword [ebp - 0xb610]
addsd xmm1, xmm0
movsd qword [ebp - 0xb618], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb618]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4780b8
mov ecx, dword [ebp - 0x1da4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb610]
addsd xmm1, xmm0
movsd qword [ebp - 0xb610], xmm1
jmp 0x477fb4
cvtsi2sd xmm0, dword [ebp - 0x1da4]
movsd xmm1, qword [ebp - 0xb610]
addsd xmm1, xmm0
movsd qword [ebp - 0xb620], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb620]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x478115
mov eax, dword [ebp - 0x1da4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb610]
addsd xmm1, xmm0
movsd qword [ebp - 0xb610], xmm1
jmp 0x47812e
mov ecx, 1
test ecx, ecx
je 0x47812a
jmp 0x4781ea
jmp 0x478151
cvtsi2sd xmm0, dword [ebp - 0x1da4]
movsd xmm1, qword [ebp - 0xb610]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1da8], edx
jmp 0x4781f4
xor eax, eax
je 0x47815b
jmp 0x47816a
jmp 0x477fb4
jmp 0x477fb4
mov ecx, 2
test ecx, ecx
je 0x4781ea
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1dac], eax
cvtsi2sd xmm0, dword [ebp - 0x1dac]
mov eax, dword [ebp - 0x1dac]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb610]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1da8], ecx
jmp 0x4781f4
mov dword [ebp - 0x1da8], 8
mov edx, dword [ebp - 0x1d7c]
add edx, 0xffffffbd
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb628], xmm0
xor eax, eax
je 0x47820e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47824a
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb628]
movsd qword [ebp - 0xb630], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4783ea
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4783ea
mov dword [ebp - 0x1db0], 0
jmp 0x4782c9
cmp dword [ebp - 0x1db0], 0xf
jae 0x4783e5
cvtsi2sd xmm0, dword [ebp - 0x1db0]
movsd xmm1, qword [ebp - 0xb630]
addsd xmm1, xmm0
movsd qword [ebp - 0xb638], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb638]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x478338
mov ecx, dword [ebp - 0x1db0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb630]
addsd xmm1, xmm0
movsd qword [ebp - 0xb630], xmm1
jmp 0x478234
cvtsi2sd xmm0, dword [ebp - 0x1db0]
movsd xmm1, qword [ebp - 0xb630]
addsd xmm1, xmm0
movsd qword [ebp - 0xb640], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb640]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x478395
mov eax, dword [ebp - 0x1db0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb630]
addsd xmm1, xmm0
movsd qword [ebp - 0xb630], xmm1
jmp 0x4783ae
mov ecx, 1
test ecx, ecx
je 0x4783aa
jmp 0x47846a
jmp 0x4783d1
cvtsi2sd xmm0, dword [ebp - 0x1db0]
movsd xmm1, qword [ebp - 0xb630]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1db4], edx
jmp 0x478474
xor eax, eax
je 0x4783db
jmp 0x4783ea
jmp 0x478234
jmp 0x478234
mov ecx, 2
test ecx, ecx
je 0x47846a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1db8], eax
cvtsi2sd xmm0, dword [ebp - 0x1db8]
mov eax, dword [ebp - 0x1db8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb630]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1db4], ecx
jmp 0x478474
mov dword [ebp - 0x1db4], 8
mov edx, dword [ebp - 0x1d7c]
shl edx, 2
add edx, dword [ebp - 0x1d78]
mov eax, dword [ebp - 0x1da8]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1d7c]
shl ecx, 2
add ecx, dword [ebp - 0x1d78]
mov edx, dword [ebp - 0x1db4]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1d7c]
shl ecx, 2
add ecx, dword [ebp - 0x1d78]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x478782
xor eax, eax
je 0x4784f4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x478530
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df0]
movsd qword [ebp - 0xb648], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4786d0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4786d0
mov dword [ebp - 0x1dbc], 0
jmp 0x4785af
cmp dword [ebp - 0x1dbc], 0xf
jae 0x4786cb
cvtsi2sd xmm0, dword [ebp - 0x1dbc]
movsd xmm1, qword [ebp - 0xb648]
addsd xmm1, xmm0
movsd qword [ebp - 0xb650], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb650]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47861e
mov ecx, dword [ebp - 0x1dbc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb648]
addsd xmm1, xmm0
movsd qword [ebp - 0xb648], xmm1
jmp 0x47851a
cvtsi2sd xmm0, dword [ebp - 0x1dbc]
movsd xmm1, qword [ebp - 0xb648]
addsd xmm1, xmm0
movsd qword [ebp - 0xb658], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb658]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47867b
mov eax, dword [ebp - 0x1dbc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb648]
addsd xmm1, xmm0
movsd qword [ebp - 0xb648], xmm1
jmp 0x478694
mov ecx, 1
test ecx, ecx
je 0x478690
jmp 0x478750
jmp 0x4786b7
cvtsi2sd xmm0, dword [ebp - 0x1dbc]
movsd xmm1, qword [ebp - 0xb648]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1dc0], edx
jmp 0x47875a
xor eax, eax
je 0x4786c1
jmp 0x4786d0
jmp 0x47851a
jmp 0x47851a
mov ecx, 2
test ecx, ecx
je 0x478750
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1dc4], eax
cvtsi2sd xmm0, dword [ebp - 0x1dc4]
mov eax, dword [ebp - 0x1dc4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb648]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1dc0], ecx
jmp 0x47875a
mov dword [ebp - 0x1dc0], 8
mov edx, dword [ebp - 0x1d7c]
shl edx, 2
add edx, dword [ebp - 0x1d78]
mov eax, dword [ebp - 0x1dc0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1d7c]
shl ecx, 2
add ecx, dword [ebp - 0x1d78]
mov dword [ecx], eax
jmp 0x4776b2
mov edx, dword [ebp - 0x1d74]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1d74]
mov dword [ebp - 0x1dc8], eax
mov ecx, dword [ebp - 0x1dc8]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1dcc], ecx
mov edx, dword [ebp - 0x1dcc]
mov dword [ebp - 0x1dd0], edx
mov eax, dword [ebp - 0x1d70]
mov dword [ebp - 0x1d10], eax
cmp dword [ebp - 0x1d10], 0
je 0x479924
xor ecx, ecx
mov byte [ebp - 0x51], cl
lea ecx, [ebp - 0x51]
call fcn.00425350
mov dword [ebp - 0x1dd4], eax
mov edx, dword [ebp - 0x1dd4]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x4798eb
mov ecx, dword [ebp - 0x1dd4]
mov dword [ebp - 0x1dd8], ecx
mov dword [ebp - 0x1ddc], 0
jmp 0x478825
mov edx, dword [ebp - 0x1ddc]
add edx, 1
mov dword [ebp - 0x1ddc], edx
cmp dword [ebp - 0x1ddc], 1
jae 0x4798eb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x478afd
xor eax, eax
je 0x47886f
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x4788ab
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736e00]
movsd qword [ebp - 0xb660], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x478a4b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x478a4b
mov dword [ebp - 0x1de0], 0
jmp 0x47892a
cmp dword [ebp - 0x1de0], 0xf
jae 0x478a46
cvtsi2sd xmm0, dword [ebp - 0x1de0]
movsd xmm1, qword [ebp - 0xb660]
addsd xmm1, xmm0
movsd qword [ebp - 0xb668], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb668]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x478999
mov ecx, dword [ebp - 0x1de0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb660]
addsd xmm1, xmm0
movsd qword [ebp - 0xb660], xmm1
jmp 0x478895
cvtsi2sd xmm0, dword [ebp - 0x1de0]
movsd xmm1, qword [ebp - 0xb660]
addsd xmm1, xmm0
movsd qword [ebp - 0xb670], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb670]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4789f6
mov eax, dword [ebp - 0x1de0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb660]
addsd xmm1, xmm0
movsd qword [ebp - 0xb660], xmm1
jmp 0x478a0f
mov ecx, 1
test ecx, ecx
je 0x478a0b
jmp 0x478acb
jmp 0x478a32
cvtsi2sd xmm0, dword [ebp - 0x1de0]
movsd xmm1, qword [ebp - 0xb660]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1de4], edx
jmp 0x478ad5
xor eax, eax
je 0x478a3c
jmp 0x478a4b
jmp 0x478895
jmp 0x478895
mov ecx, 2
test ecx, ecx
je 0x478acb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1de8], eax
cvtsi2sd xmm0, dword [ebp - 0x1de8]
mov eax, dword [ebp - 0x1de8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb660]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1de4], ecx
jmp 0x478ad5
mov dword [ebp - 0x1de4], 8
mov edx, dword [ebp - 0x1ddc]
shl edx, 2
add edx, dword [ebp - 0x1dd8]
mov eax, dword [ebp - 0x1de4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1ddc]
shl ecx, 2
add ecx, dword [ebp - 0x1dd8]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47961b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x478e0d
xor eax, eax
je 0x478b7f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x478bbb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df8]
movsd qword [ebp - 0xb678], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x478d5b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x478d5b
mov dword [ebp - 0x1dec], 0
jmp 0x478c3a
cmp dword [ebp - 0x1dec], 0xf
jae 0x478d56
cvtsi2sd xmm0, dword [ebp - 0x1dec]
movsd xmm1, qword [ebp - 0xb678]
addsd xmm1, xmm0
movsd qword [ebp - 0xb680], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb680]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x478ca9
mov ecx, dword [ebp - 0x1dec]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb678]
addsd xmm1, xmm0
movsd qword [ebp - 0xb678], xmm1
jmp 0x478ba5
cvtsi2sd xmm0, dword [ebp - 0x1dec]
movsd xmm1, qword [ebp - 0xb678]
addsd xmm1, xmm0
movsd qword [ebp - 0xb688], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb688]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x478d06
mov eax, dword [ebp - 0x1dec]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb678]
addsd xmm1, xmm0
movsd qword [ebp - 0xb678], xmm1
jmp 0x478d1f
mov ecx, 1
test ecx, ecx
je 0x478d1b
jmp 0x478ddb
jmp 0x478d42
cvtsi2sd xmm0, dword [ebp - 0x1dec]
movsd xmm1, qword [ebp - 0xb678]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1df0], edx
jmp 0x478de5
xor eax, eax
je 0x478d4c
jmp 0x478d5b
jmp 0x478ba5
jmp 0x478ba5
mov ecx, 2
test ecx, ecx
je 0x478ddb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1df4], eax
cvtsi2sd xmm0, dword [ebp - 0x1df4]
mov eax, dword [ebp - 0x1df4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb678]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1df0], ecx
jmp 0x478de5
mov dword [ebp - 0x1df0], 8
mov edx, dword [ebp - 0x1ddc]
shl edx, 2
add edx, dword [ebp - 0x1dd8]
mov eax, dword [ebp - 0x1df0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1ddc]
shl ecx, 2
add ecx, dword [ebp - 0x1dd8]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4790d8
xor eax, eax
je 0x478e4a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x478e86
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df0]
movsd qword [ebp - 0xb690], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x479026
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x479026
mov dword [ebp - 0x1df8], 0
jmp 0x478f05
cmp dword [ebp - 0x1df8], 0xf
jae 0x479021
cvtsi2sd xmm0, dword [ebp - 0x1df8]
movsd xmm1, qword [ebp - 0xb690]
addsd xmm1, xmm0
movsd qword [ebp - 0xb698], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb698]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x478f74
mov ecx, dword [ebp - 0x1df8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb690]
addsd xmm1, xmm0
movsd qword [ebp - 0xb690], xmm1
jmp 0x478e70
cvtsi2sd xmm0, dword [ebp - 0x1df8]
movsd xmm1, qword [ebp - 0xb690]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb6a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x478fd1
mov eax, dword [ebp - 0x1df8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb690]
addsd xmm1, xmm0
movsd qword [ebp - 0xb690], xmm1
jmp 0x478fea
mov ecx, 1
test ecx, ecx
je 0x478fe6
jmp 0x4790a6
jmp 0x47900d
cvtsi2sd xmm0, dword [ebp - 0x1df8]
movsd xmm1, qword [ebp - 0xb690]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1dfc], edx
jmp 0x4790b0
xor eax, eax
je 0x479017
jmp 0x479026
jmp 0x478e70
jmp 0x478e70
mov ecx, 2
test ecx, ecx
je 0x4790a6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1e00], eax
cvtsi2sd xmm0, dword [ebp - 0x1e00]
mov eax, dword [ebp - 0x1e00]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb690]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1dfc], ecx
jmp 0x4790b0
mov dword [ebp - 0x1dfc], 8
mov edx, dword [ebp - 0x1ddc]
shl edx, 2
add edx, dword [ebp - 0x1dd8]
mov eax, dword [ebp - 0x1dfc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1ddc]
shl ecx, 2
add ecx, dword [ebp - 0x1dd8]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1ddc]
add edx, 0xffffffbe
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb6a8], xmm0
xor eax, eax
je 0x4790f2
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47912e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb6a8]
movsd qword [ebp - 0xb6b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4792ce
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4792ce
mov dword [ebp - 0x1e04], 0
jmp 0x4791ad
cmp dword [ebp - 0x1e04], 0xf
jae 0x4792c9
cvtsi2sd xmm0, dword [ebp - 0x1e04]
movsd xmm1, qword [ebp - 0xb6b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb6b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47921c
mov ecx, dword [ebp - 0x1e04]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb6b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6b0], xmm1
jmp 0x479118
cvtsi2sd xmm0, dword [ebp - 0x1e04]
movsd xmm1, qword [ebp - 0xb6b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb6c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x479279
mov eax, dword [ebp - 0x1e04]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb6b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6b0], xmm1
jmp 0x479292
mov ecx, 1
test ecx, ecx
je 0x47928e
jmp 0x47934e
jmp 0x4792b5
cvtsi2sd xmm0, dword [ebp - 0x1e04]
movsd xmm1, qword [ebp - 0xb6b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1e08], edx
jmp 0x479358
xor eax, eax
je 0x4792bf
jmp 0x4792ce
jmp 0x479118
jmp 0x479118
mov ecx, 2
test ecx, ecx
je 0x47934e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1e0c], eax
cvtsi2sd xmm0, dword [ebp - 0x1e0c]
mov eax, dword [ebp - 0x1e0c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb6b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1e08], ecx
jmp 0x479358
mov dword [ebp - 0x1e08], 8
mov edx, dword [ebp - 0x1ddc]
add edx, 0xffffffbe
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb6c8], xmm0
xor eax, eax
je 0x479372
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4793ae
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb6c8]
movsd qword [ebp - 0xb6d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47954e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47954e
mov dword [ebp - 0x1e10], 0
jmp 0x47942d
cmp dword [ebp - 0x1e10], 0xf
jae 0x479549
cvtsi2sd xmm0, dword [ebp - 0x1e10]
movsd xmm1, qword [ebp - 0xb6d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb6d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47949c
mov ecx, dword [ebp - 0x1e10]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb6d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6d0], xmm1
jmp 0x479398
cvtsi2sd xmm0, dword [ebp - 0x1e10]
movsd xmm1, qword [ebp - 0xb6d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb6e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4794f9
mov eax, dword [ebp - 0x1e10]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb6d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6d0], xmm1
jmp 0x479512
mov ecx, 1
test ecx, ecx
je 0x47950e
jmp 0x4795ce
jmp 0x479535
cvtsi2sd xmm0, dword [ebp - 0x1e10]
movsd xmm1, qword [ebp - 0xb6d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1e14], edx
jmp 0x4795d8
xor eax, eax
je 0x47953f
jmp 0x47954e
jmp 0x479398
jmp 0x479398
mov ecx, 2
test ecx, ecx
je 0x4795ce
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1e18], eax
cvtsi2sd xmm0, dword [ebp - 0x1e18]
mov eax, dword [ebp - 0x1e18]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb6d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1e14], ecx
jmp 0x4795d8
mov dword [ebp - 0x1e14], 8
mov edx, dword [ebp - 0x1ddc]
shl edx, 2
add edx, dword [ebp - 0x1dd8]
mov eax, dword [ebp - 0x1e08]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1ddc]
shl ecx, 2
add ecx, dword [ebp - 0x1dd8]
mov edx, dword [ebp - 0x1e14]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1ddc]
shl ecx, 2
add ecx, dword [ebp - 0x1dd8]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4798e6
xor eax, eax
je 0x479658
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x479694
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de8]
movsd qword [ebp - 0xb6e8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x479834
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x479834
mov dword [ebp - 0x1e1c], 0
jmp 0x479713
cmp dword [ebp - 0x1e1c], 0xf
jae 0x47982f
cvtsi2sd xmm0, dword [ebp - 0x1e1c]
movsd xmm1, qword [ebp - 0xb6e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6f0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb6f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x479782
mov ecx, dword [ebp - 0x1e1c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb6e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6e8], xmm1
jmp 0x47967e
cvtsi2sd xmm0, dword [ebp - 0x1e1c]
movsd xmm1, qword [ebp - 0xb6e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6f8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb6f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4797df
mov eax, dword [ebp - 0x1e1c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb6e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb6e8], xmm1
jmp 0x4797f8
mov ecx, 1
test ecx, ecx
je 0x4797f4
jmp 0x4798b4
jmp 0x47981b
cvtsi2sd xmm0, dword [ebp - 0x1e1c]
movsd xmm1, qword [ebp - 0xb6e8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1e20], edx
jmp 0x4798be
xor eax, eax
je 0x479825
jmp 0x479834
jmp 0x47967e
jmp 0x47967e
mov ecx, 2
test ecx, ecx
je 0x4798b4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1e24], eax
cvtsi2sd xmm0, dword [ebp - 0x1e24]
mov eax, dword [ebp - 0x1e24]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb6e8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1e20], ecx
jmp 0x4798be
mov dword [ebp - 0x1e20], 8
mov edx, dword [ebp - 0x1ddc]
shl edx, 2
add edx, dword [ebp - 0x1dd8]
mov eax, dword [ebp - 0x1e20]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1ddc]
shl ecx, 2
add ecx, dword [ebp - 0x1dd8]
mov dword [ecx], eax
jmp 0x478816
mov edx, dword [ebp - 0x1dd4]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1dd4]
mov dword [ebp - 0x1e28], eax
mov ecx, dword [ebp - 0x1e28]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1e2c], ecx
mov edx, dword [ebp - 0x1e2c]
mov dword [ebp - 0x1dd0], edx
xor eax, eax
mov byte [ebp - 0x52], al
lea ecx, [ebp - 0x52]
call fcn.00425320
mov dword [ebp - 0x1e30], eax
mov ecx, dword [ebp - 0x1e30]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x47aa36
mov eax, dword [ebp - 0x1e30]
mov dword [ebp - 0x1e34], eax
mov dword [ebp - 0x1e38], 0
jmp 0x479970
mov ecx, dword [ebp - 0x1e38]
add ecx, 1
mov dword [ebp - 0x1e38], ecx
cmp dword [ebp - 0x1e38], 1
jae 0x47aa36
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x479c48
xor eax, eax
je 0x4799ba
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4799f6
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736e00]
movsd qword [ebp - 0xb700], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x479b96
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x479b96
mov dword [ebp - 0x1e3c], 0
jmp 0x479a75
cmp dword [ebp - 0x1e3c], 0xf
jae 0x479b91
cvtsi2sd xmm0, dword [ebp - 0x1e3c]
movsd xmm1, qword [ebp - 0xb700]
addsd xmm1, xmm0
movsd qword [ebp - 0xb708], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb708]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x479ae4
mov ecx, dword [ebp - 0x1e3c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb700]
addsd xmm1, xmm0
movsd qword [ebp - 0xb700], xmm1
jmp 0x4799e0
cvtsi2sd xmm0, dword [ebp - 0x1e3c]
movsd xmm1, qword [ebp - 0xb700]
addsd xmm1, xmm0
movsd qword [ebp - 0xb710], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb710]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x479b41
mov eax, dword [ebp - 0x1e3c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb700]
addsd xmm1, xmm0
movsd qword [ebp - 0xb700], xmm1
jmp 0x479b5a
mov ecx, 1
test ecx, ecx
je 0x479b56
jmp 0x479c16
jmp 0x479b7d
cvtsi2sd xmm0, dword [ebp - 0x1e3c]
movsd xmm1, qword [ebp - 0xb700]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1e40], edx
jmp 0x479c20
xor eax, eax
je 0x479b87
jmp 0x479b96
jmp 0x4799e0
jmp 0x4799e0
mov ecx, 2
test ecx, ecx
je 0x479c16
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1e44], eax
cvtsi2sd xmm0, dword [ebp - 0x1e44]
mov eax, dword [ebp - 0x1e44]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb700]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1e40], ecx
jmp 0x479c20
mov dword [ebp - 0x1e40], 8
mov edx, dword [ebp - 0x1e38]
shl edx, 2
add edx, dword [ebp - 0x1e34]
mov eax, dword [ebp - 0x1e40]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1e38]
shl ecx, 2
add ecx, dword [ebp - 0x1e34]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47a766
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x479f58
xor eax, eax
je 0x479cca
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x479d06
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df8]
movsd qword [ebp - 0xb718], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x479ea6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x479ea6
mov dword [ebp - 0x1e48], 0
jmp 0x479d85
cmp dword [ebp - 0x1e48], 0xf
jae 0x479ea1
cvtsi2sd xmm0, dword [ebp - 0x1e48]
movsd xmm1, qword [ebp - 0xb718]
addsd xmm1, xmm0
movsd qword [ebp - 0xb720], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb720]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x479df4
mov ecx, dword [ebp - 0x1e48]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb718]
addsd xmm1, xmm0
movsd qword [ebp - 0xb718], xmm1
jmp 0x479cf0
cvtsi2sd xmm0, dword [ebp - 0x1e48]
movsd xmm1, qword [ebp - 0xb718]
addsd xmm1, xmm0
movsd qword [ebp - 0xb728], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb728]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x479e51
mov eax, dword [ebp - 0x1e48]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb718]
addsd xmm1, xmm0
movsd qword [ebp - 0xb718], xmm1
jmp 0x479e6a
mov ecx, 1
test ecx, ecx
je 0x479e66
jmp 0x479f26
jmp 0x479e8d
cvtsi2sd xmm0, dword [ebp - 0x1e48]
movsd xmm1, qword [ebp - 0xb718]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1e4c], edx
jmp 0x479f30
xor eax, eax
je 0x479e97
jmp 0x479ea6
jmp 0x479cf0
jmp 0x479cf0
mov ecx, 2
test ecx, ecx
je 0x479f26
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1e50], eax
cvtsi2sd xmm0, dword [ebp - 0x1e50]
mov eax, dword [ebp - 0x1e50]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb718]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1e4c], ecx
jmp 0x479f30
mov dword [ebp - 0x1e4c], 8
mov edx, dword [ebp - 0x1e38]
shl edx, 2
add edx, dword [ebp - 0x1e34]
mov eax, dword [ebp - 0x1e4c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1e38]
shl ecx, 2
add ecx, dword [ebp - 0x1e34]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47a223
xor eax, eax
je 0x479f95
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x479fd1
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df0]
movsd qword [ebp - 0xb730], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47a171
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47a171
mov dword [ebp - 0x1e54], 0
jmp 0x47a050
cmp dword [ebp - 0x1e54], 0xf
jae 0x47a16c
cvtsi2sd xmm0, dword [ebp - 0x1e54]
movsd xmm1, qword [ebp - 0xb730]
addsd xmm1, xmm0
movsd qword [ebp - 0xb738], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb738]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47a0bf
mov ecx, dword [ebp - 0x1e54]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb730]
addsd xmm1, xmm0
movsd qword [ebp - 0xb730], xmm1
jmp 0x479fbb
cvtsi2sd xmm0, dword [ebp - 0x1e54]
movsd xmm1, qword [ebp - 0xb730]
addsd xmm1, xmm0
movsd qword [ebp - 0xb740], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb740]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47a11c
mov eax, dword [ebp - 0x1e54]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb730]
addsd xmm1, xmm0
movsd qword [ebp - 0xb730], xmm1
jmp 0x47a135
mov ecx, 1
test ecx, ecx
je 0x47a131
jmp 0x47a1f1
jmp 0x47a158
cvtsi2sd xmm0, dword [ebp - 0x1e54]
movsd xmm1, qword [ebp - 0xb730]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1e58], edx
jmp 0x47a1fb
xor eax, eax
je 0x47a162
jmp 0x47a171
jmp 0x479fbb
jmp 0x479fbb
mov ecx, 2
test ecx, ecx
je 0x47a1f1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1e5c], eax
cvtsi2sd xmm0, dword [ebp - 0x1e5c]
mov eax, dword [ebp - 0x1e5c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb730]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1e58], ecx
jmp 0x47a1fb
mov dword [ebp - 0x1e58], 8
mov edx, dword [ebp - 0x1e38]
shl edx, 2
add edx, dword [ebp - 0x1e34]
mov eax, dword [ebp - 0x1e58]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1e38]
shl ecx, 2
add ecx, dword [ebp - 0x1e34]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1e38]
add edx, 0xffffffbe
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb748], xmm0
xor eax, eax
je 0x47a23d
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47a279
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb748]
movsd qword [ebp - 0xb750], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47a419
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47a419
mov dword [ebp - 0x1e60], 0
jmp 0x47a2f8
cmp dword [ebp - 0x1e60], 0xf
jae 0x47a414
cvtsi2sd xmm0, dword [ebp - 0x1e60]
movsd xmm1, qword [ebp - 0xb750]
addsd xmm1, xmm0
movsd qword [ebp - 0xb758], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb758]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47a367
mov ecx, dword [ebp - 0x1e60]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb750]
addsd xmm1, xmm0
movsd qword [ebp - 0xb750], xmm1
jmp 0x47a263
cvtsi2sd xmm0, dword [ebp - 0x1e60]
movsd xmm1, qword [ebp - 0xb750]
addsd xmm1, xmm0
movsd qword [ebp - 0xb760], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb760]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47a3c4
mov eax, dword [ebp - 0x1e60]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb750]
addsd xmm1, xmm0
movsd qword [ebp - 0xb750], xmm1
jmp 0x47a3dd
mov ecx, 1
test ecx, ecx
je 0x47a3d9
jmp 0x47a499
jmp 0x47a400
cvtsi2sd xmm0, dword [ebp - 0x1e60]
movsd xmm1, qword [ebp - 0xb750]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1e64], edx
jmp 0x47a4a3
xor eax, eax
je 0x47a40a
jmp 0x47a419
jmp 0x47a263
jmp 0x47a263
mov ecx, 2
test ecx, ecx
je 0x47a499
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1e68], eax
cvtsi2sd xmm0, dword [ebp - 0x1e68]
mov eax, dword [ebp - 0x1e68]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb750]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1e64], ecx
jmp 0x47a4a3
mov dword [ebp - 0x1e64], 8
mov edx, dword [ebp - 0x1e38]
add edx, 0xffffffbe
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb768], xmm0
xor eax, eax
je 0x47a4bd
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47a4f9
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb768]
movsd qword [ebp - 0xb770], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47a699
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47a699
mov dword [ebp - 0x1e6c], 0
jmp 0x47a578
cmp dword [ebp - 0x1e6c], 0xf
jae 0x47a694
cvtsi2sd xmm0, dword [ebp - 0x1e6c]
movsd xmm1, qword [ebp - 0xb770]
addsd xmm1, xmm0
movsd qword [ebp - 0xb778], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb778]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47a5e7
mov ecx, dword [ebp - 0x1e6c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb770]
addsd xmm1, xmm0
movsd qword [ebp - 0xb770], xmm1
jmp 0x47a4e3
cvtsi2sd xmm0, dword [ebp - 0x1e6c]
movsd xmm1, qword [ebp - 0xb770]
addsd xmm1, xmm0
movsd qword [ebp - 0xb780], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb780]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47a644
mov eax, dword [ebp - 0x1e6c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb770]
addsd xmm1, xmm0
movsd qword [ebp - 0xb770], xmm1
jmp 0x47a65d
mov ecx, 1
test ecx, ecx
je 0x47a659
jmp 0x47a719
jmp 0x47a680
cvtsi2sd xmm0, dword [ebp - 0x1e6c]
movsd xmm1, qword [ebp - 0xb770]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1e70], edx
jmp 0x47a723
xor eax, eax
je 0x47a68a
jmp 0x47a699
jmp 0x47a4e3
jmp 0x47a4e3
mov ecx, 2
test ecx, ecx
je 0x47a719
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1e74], eax
cvtsi2sd xmm0, dword [ebp - 0x1e74]
mov eax, dword [ebp - 0x1e74]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb770]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1e70], ecx
jmp 0x47a723
mov dword [ebp - 0x1e70], 8
mov edx, dword [ebp - 0x1e38]
shl edx, 2
add edx, dword [ebp - 0x1e34]
mov eax, dword [ebp - 0x1e64]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1e38]
shl ecx, 2
add ecx, dword [ebp - 0x1e34]
mov edx, dword [ebp - 0x1e70]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1e38]
shl ecx, 2
add ecx, dword [ebp - 0x1e34]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47aa31
xor eax, eax
je 0x47a7a3
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47a7df
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de8]
movsd qword [ebp - 0xb788], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47a97f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47a97f
mov dword [ebp - 0x1e78], 0
jmp 0x47a85e
cmp dword [ebp - 0x1e78], 0xf
jae 0x47a97a
cvtsi2sd xmm0, dword [ebp - 0x1e78]
movsd xmm1, qword [ebp - 0xb788]
addsd xmm1, xmm0
movsd qword [ebp - 0xb790], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb790]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47a8cd
mov ecx, dword [ebp - 0x1e78]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb788]
addsd xmm1, xmm0
movsd qword [ebp - 0xb788], xmm1
jmp 0x47a7c9
cvtsi2sd xmm0, dword [ebp - 0x1e78]
movsd xmm1, qword [ebp - 0xb788]
addsd xmm1, xmm0
movsd qword [ebp - 0xb798], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb798]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47a92a
mov eax, dword [ebp - 0x1e78]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb788]
addsd xmm1, xmm0
movsd qword [ebp - 0xb788], xmm1
jmp 0x47a943
mov ecx, 1
test ecx, ecx
je 0x47a93f
jmp 0x47a9ff
jmp 0x47a966
cvtsi2sd xmm0, dword [ebp - 0x1e78]
movsd xmm1, qword [ebp - 0xb788]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1e7c], edx
jmp 0x47aa09
xor eax, eax
je 0x47a970
jmp 0x47a97f
jmp 0x47a7c9
jmp 0x47a7c9
mov ecx, 2
test ecx, ecx
je 0x47a9ff
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1e80], eax
cvtsi2sd xmm0, dword [ebp - 0x1e80]
mov eax, dword [ebp - 0x1e80]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb788]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1e7c], ecx
jmp 0x47aa09
mov dword [ebp - 0x1e7c], 8
mov edx, dword [ebp - 0x1e38]
shl edx, 2
add edx, dword [ebp - 0x1e34]
mov eax, dword [ebp - 0x1e7c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1e38]
shl ecx, 2
add ecx, dword [ebp - 0x1e34]
mov dword [ecx], eax
jmp 0x479961
mov edx, dword [ebp - 0x1e30]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1e30]
mov dword [ebp - 0x1e84], eax
mov ecx, dword [ebp - 0x1e84]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1e88], ecx
mov edx, dword [ebp - 0x1e88]
mov dword [ebp - 0x1e8c], edx
xor eax, eax
mov byte [ebp - 0x53], al
lea ecx, [ebp - 0x53]
call fcn.004252f0
mov dword [ebp - 0x1e90], eax
mov ecx, dword [ebp - 0x1e90]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x47bb81
mov eax, dword [ebp - 0x1e90]
mov dword [ebp - 0x1e94], eax
mov dword [ebp - 0x1e98], 0
jmp 0x47aabb
mov ecx, dword [ebp - 0x1e98]
add ecx, 1
mov dword [ebp - 0x1e98], ecx
cmp dword [ebp - 0x1e98], 1
jae 0x47bb81
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47ad93
xor eax, eax
je 0x47ab05
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47ab41
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df8]
movsd qword [ebp - 0xb7a0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47ace1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47ace1
mov dword [ebp - 0x1e9c], 0
jmp 0x47abc0
cmp dword [ebp - 0x1e9c], 0xf
jae 0x47acdc
cvtsi2sd xmm0, dword [ebp - 0x1e9c]
movsd xmm1, qword [ebp - 0xb7a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7a8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb7a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47ac2f
mov ecx, dword [ebp - 0x1e9c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb7a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7a0], xmm1
jmp 0x47ab2b
cvtsi2sd xmm0, dword [ebp - 0x1e9c]
movsd xmm1, qword [ebp - 0xb7a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7b0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb7b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47ac8c
mov eax, dword [ebp - 0x1e9c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb7a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7a0], xmm1
jmp 0x47aca5
mov ecx, 1
test ecx, ecx
je 0x47aca1
jmp 0x47ad61
jmp 0x47acc8
cvtsi2sd xmm0, dword [ebp - 0x1e9c]
movsd xmm1, qword [ebp - 0xb7a0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1ea0], edx
jmp 0x47ad6b
xor eax, eax
je 0x47acd2
jmp 0x47ace1
jmp 0x47ab2b
jmp 0x47ab2b
mov ecx, 2
test ecx, ecx
je 0x47ad61
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ea4], eax
cvtsi2sd xmm0, dword [ebp - 0x1ea4]
mov eax, dword [ebp - 0x1ea4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb7a0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1ea0], ecx
jmp 0x47ad6b
mov dword [ebp - 0x1ea0], 8
mov edx, dword [ebp - 0x1e98]
shl edx, 2
add edx, dword [ebp - 0x1e94]
mov eax, dword [ebp - 0x1ea0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1e98]
shl ecx, 2
add ecx, dword [ebp - 0x1e94]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47b8b1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47b0a3
xor eax, eax
je 0x47ae15
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47ae51
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df0]
movsd qword [ebp - 0xb7b8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47aff1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47aff1
mov dword [ebp - 0x1ea8], 0
jmp 0x47aed0
cmp dword [ebp - 0x1ea8], 0xf
jae 0x47afec
cvtsi2sd xmm0, dword [ebp - 0x1ea8]
movsd xmm1, qword [ebp - 0xb7b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7c0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb7c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47af3f
mov ecx, dword [ebp - 0x1ea8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb7b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7b8], xmm1
jmp 0x47ae3b
cvtsi2sd xmm0, dword [ebp - 0x1ea8]
movsd xmm1, qword [ebp - 0xb7b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7c8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb7c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47af9c
mov eax, dword [ebp - 0x1ea8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb7b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7b8], xmm1
jmp 0x47afb5
mov ecx, 1
test ecx, ecx
je 0x47afb1
jmp 0x47b071
jmp 0x47afd8
cvtsi2sd xmm0, dword [ebp - 0x1ea8]
movsd xmm1, qword [ebp - 0xb7b8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1eac], edx
jmp 0x47b07b
xor eax, eax
je 0x47afe2
jmp 0x47aff1
jmp 0x47ae3b
jmp 0x47ae3b
mov ecx, 2
test ecx, ecx
je 0x47b071
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1eb0], eax
cvtsi2sd xmm0, dword [ebp - 0x1eb0]
mov eax, dword [ebp - 0x1eb0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb7b8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1eac], ecx
jmp 0x47b07b
mov dword [ebp - 0x1eac], 8
mov edx, dword [ebp - 0x1e98]
shl edx, 2
add edx, dword [ebp - 0x1e94]
mov eax, dword [ebp - 0x1eac]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1e98]
shl ecx, 2
add ecx, dword [ebp - 0x1e94]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47b36e
xor eax, eax
je 0x47b0e0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47b11c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de8]
movsd qword [ebp - 0xb7d0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47b2bc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47b2bc
mov dword [ebp - 0x1eb4], 0
jmp 0x47b19b
cmp dword [ebp - 0x1eb4], 0xf
jae 0x47b2b7
cvtsi2sd xmm0, dword [ebp - 0x1eb4]
movsd xmm1, qword [ebp - 0xb7d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb7d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47b20a
mov ecx, dword [ebp - 0x1eb4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb7d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7d0], xmm1
jmp 0x47b106
cvtsi2sd xmm0, dword [ebp - 0x1eb4]
movsd xmm1, qword [ebp - 0xb7d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb7e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47b267
mov eax, dword [ebp - 0x1eb4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb7d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7d0], xmm1
jmp 0x47b280
mov ecx, 1
test ecx, ecx
je 0x47b27c
jmp 0x47b33c
jmp 0x47b2a3
cvtsi2sd xmm0, dword [ebp - 0x1eb4]
movsd xmm1, qword [ebp - 0xb7d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1eb8], edx
jmp 0x47b346
xor eax, eax
je 0x47b2ad
jmp 0x47b2bc
jmp 0x47b106
jmp 0x47b106
mov ecx, 2
test ecx, ecx
je 0x47b33c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ebc], eax
cvtsi2sd xmm0, dword [ebp - 0x1ebc]
mov eax, dword [ebp - 0x1ebc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb7d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1eb8], ecx
jmp 0x47b346
mov dword [ebp - 0x1eb8], 8
mov edx, dword [ebp - 0x1e98]
shl edx, 2
add edx, dword [ebp - 0x1e94]
mov eax, dword [ebp - 0x1eb8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1e98]
shl ecx, 2
add ecx, dword [ebp - 0x1e94]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1e98]
add edx, 0xffffffbf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb7e8], xmm0
xor eax, eax
je 0x47b388
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47b3c4
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb7e8]
movsd qword [ebp - 0xb7f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47b564
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47b564
mov dword [ebp - 0x1ec0], 0
jmp 0x47b443
cmp dword [ebp - 0x1ec0], 0xf
jae 0x47b55f
cvtsi2sd xmm0, dword [ebp - 0x1ec0]
movsd xmm1, qword [ebp - 0xb7f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb7f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47b4b2
mov ecx, dword [ebp - 0x1ec0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb7f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7f0], xmm1
jmp 0x47b3ae
cvtsi2sd xmm0, dword [ebp - 0x1ec0]
movsd xmm1, qword [ebp - 0xb7f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb800], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb800]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47b50f
mov eax, dword [ebp - 0x1ec0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb7f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb7f0], xmm1
jmp 0x47b528
mov ecx, 1
test ecx, ecx
je 0x47b524
jmp 0x47b5e4
jmp 0x47b54b
cvtsi2sd xmm0, dword [ebp - 0x1ec0]
movsd xmm1, qword [ebp - 0xb7f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1ec4], edx
jmp 0x47b5ee
xor eax, eax
je 0x47b555
jmp 0x47b564
jmp 0x47b3ae
jmp 0x47b3ae
mov ecx, 2
test ecx, ecx
je 0x47b5e4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ec8], eax
cvtsi2sd xmm0, dword [ebp - 0x1ec8]
mov eax, dword [ebp - 0x1ec8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb7f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1ec4], ecx
jmp 0x47b5ee
mov dword [ebp - 0x1ec4], 8
mov edx, dword [ebp - 0x1e98]
add edx, 0xffffffbf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb808], xmm0
xor eax, eax
je 0x47b608
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47b644
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb808]
movsd qword [ebp - 0xb810], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47b7e4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47b7e4
mov dword [ebp - 0x1ecc], 0
jmp 0x47b6c3
cmp dword [ebp - 0x1ecc], 0xf
jae 0x47b7df
cvtsi2sd xmm0, dword [ebp - 0x1ecc]
movsd xmm1, qword [ebp - 0xb810]
addsd xmm1, xmm0
movsd qword [ebp - 0xb818], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb818]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47b732
mov ecx, dword [ebp - 0x1ecc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb810]
addsd xmm1, xmm0
movsd qword [ebp - 0xb810], xmm1
jmp 0x47b62e
cvtsi2sd xmm0, dword [ebp - 0x1ecc]
movsd xmm1, qword [ebp - 0xb810]
addsd xmm1, xmm0
movsd qword [ebp - 0xb820], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb820]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47b78f
mov eax, dword [ebp - 0x1ecc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb810]
addsd xmm1, xmm0
movsd qword [ebp - 0xb810], xmm1
jmp 0x47b7a8
mov ecx, 1
test ecx, ecx
je 0x47b7a4
jmp 0x47b864
jmp 0x47b7cb
cvtsi2sd xmm0, dword [ebp - 0x1ecc]
movsd xmm1, qword [ebp - 0xb810]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1ed0], edx
jmp 0x47b86e
xor eax, eax
je 0x47b7d5
jmp 0x47b7e4
jmp 0x47b62e
jmp 0x47b62e
mov ecx, 2
test ecx, ecx
je 0x47b864
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ed4], eax
cvtsi2sd xmm0, dword [ebp - 0x1ed4]
mov eax, dword [ebp - 0x1ed4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb810]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1ed0], ecx
jmp 0x47b86e
mov dword [ebp - 0x1ed0], 8
mov edx, dword [ebp - 0x1e98]
shl edx, 2
add edx, dword [ebp - 0x1e94]
mov eax, dword [ebp - 0x1ec4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1e98]
shl ecx, 2
add ecx, dword [ebp - 0x1e94]
mov edx, dword [ebp - 0x1ed0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1e98]
shl ecx, 2
add ecx, dword [ebp - 0x1e94]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47bb7c
xor eax, eax
je 0x47b8ee
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47b92a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de0]
movsd qword [ebp - 0xb828], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47baca
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47baca
mov dword [ebp - 0x1ed8], 0
jmp 0x47b9a9
cmp dword [ebp - 0x1ed8], 0xf
jae 0x47bac5
cvtsi2sd xmm0, dword [ebp - 0x1ed8]
movsd xmm1, qword [ebp - 0xb828]
addsd xmm1, xmm0
movsd qword [ebp - 0xb830], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb830]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47ba18
mov ecx, dword [ebp - 0x1ed8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb828]
addsd xmm1, xmm0
movsd qword [ebp - 0xb828], xmm1
jmp 0x47b914
cvtsi2sd xmm0, dword [ebp - 0x1ed8]
movsd xmm1, qword [ebp - 0xb828]
addsd xmm1, xmm0
movsd qword [ebp - 0xb838], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb838]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47ba75
mov eax, dword [ebp - 0x1ed8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb828]
addsd xmm1, xmm0
movsd qword [ebp - 0xb828], xmm1
jmp 0x47ba8e
mov ecx, 1
test ecx, ecx
je 0x47ba8a
jmp 0x47bb4a
jmp 0x47bab1
cvtsi2sd xmm0, dword [ebp - 0x1ed8]
movsd xmm1, qword [ebp - 0xb828]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1edc], edx
jmp 0x47bb54
xor eax, eax
je 0x47babb
jmp 0x47baca
jmp 0x47b914
jmp 0x47b914
mov ecx, 2
test ecx, ecx
je 0x47bb4a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ee0], eax
cvtsi2sd xmm0, dword [ebp - 0x1ee0]
mov eax, dword [ebp - 0x1ee0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb828]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1edc], ecx
jmp 0x47bb54
mov dword [ebp - 0x1edc], 8
mov edx, dword [ebp - 0x1e98]
shl edx, 2
add edx, dword [ebp - 0x1e94]
mov eax, dword [ebp - 0x1edc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1e98]
shl ecx, 2
add ecx, dword [ebp - 0x1e94]
mov dword [ecx], eax
jmp 0x47aaac
mov edx, dword [ebp - 0x1e90]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1e90]
mov dword [ebp - 0x1ee4], eax
mov ecx, dword [ebp - 0x1ee4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1ee8], ecx
mov edx, dword [ebp - 0x1ee8]
mov dword [ebp - 0x1eec], edx
xor eax, eax
mov byte [ebp - 0x54], al
lea ecx, [ebp - 0x54]
call fcn.004252c0
mov dword [ebp - 0x1ef0], eax
mov ecx, dword [ebp - 0x1ef0]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x47cccc
mov eax, dword [ebp - 0x1ef0]
mov dword [ebp - 0x1ef4], eax
mov dword [ebp - 0x1ef8], 0
jmp 0x47bc06
mov ecx, dword [ebp - 0x1ef8]
add ecx, 1
mov dword [ebp - 0x1ef8], ecx
cmp dword [ebp - 0x1ef8], 1
jae 0x47cccc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47bede
xor eax, eax
je 0x47bc50
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47bc8c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df8]
movsd qword [ebp - 0xb840], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47be2c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47be2c
mov dword [ebp - 0x1efc], 0
jmp 0x47bd0b
cmp dword [ebp - 0x1efc], 0xf
jae 0x47be27
cvtsi2sd xmm0, dword [ebp - 0x1efc]
movsd xmm1, qword [ebp - 0xb840]
addsd xmm1, xmm0
movsd qword [ebp - 0xb848], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb848]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47bd7a
mov ecx, dword [ebp - 0x1efc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb840]
addsd xmm1, xmm0
movsd qword [ebp - 0xb840], xmm1
jmp 0x47bc76
cvtsi2sd xmm0, dword [ebp - 0x1efc]
movsd xmm1, qword [ebp - 0xb840]
addsd xmm1, xmm0
movsd qword [ebp - 0xb850], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb850]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47bdd7
mov eax, dword [ebp - 0x1efc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb840]
addsd xmm1, xmm0
movsd qword [ebp - 0xb840], xmm1
jmp 0x47bdf0
mov ecx, 1
test ecx, ecx
je 0x47bdec
jmp 0x47beac
jmp 0x47be13
cvtsi2sd xmm0, dword [ebp - 0x1efc]
movsd xmm1, qword [ebp - 0xb840]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f00], edx
jmp 0x47beb6
xor eax, eax
je 0x47be1d
jmp 0x47be2c
jmp 0x47bc76
jmp 0x47bc76
mov ecx, 2
test ecx, ecx
je 0x47beac
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1f04], eax
cvtsi2sd xmm0, dword [ebp - 0x1f04]
mov eax, dword [ebp - 0x1f04]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb840]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f00], ecx
jmp 0x47beb6
mov dword [ebp - 0x1f00], 8
mov edx, dword [ebp - 0x1ef8]
shl edx, 2
add edx, dword [ebp - 0x1ef4]
mov eax, dword [ebp - 0x1f00]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1ef8]
shl ecx, 2
add ecx, dword [ebp - 0x1ef4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47c9fc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47c1ee
xor eax, eax
je 0x47bf60
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47bf9c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df0]
movsd qword [ebp - 0xb858], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47c13c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47c13c
mov dword [ebp - 0x1f08], 0
jmp 0x47c01b
cmp dword [ebp - 0x1f08], 0xf
jae 0x47c137
cvtsi2sd xmm0, dword [ebp - 0x1f08]
movsd xmm1, qword [ebp - 0xb858]
addsd xmm1, xmm0
movsd qword [ebp - 0xb860], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb860]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47c08a
mov ecx, dword [ebp - 0x1f08]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb858]
addsd xmm1, xmm0
movsd qword [ebp - 0xb858], xmm1
jmp 0x47bf86
cvtsi2sd xmm0, dword [ebp - 0x1f08]
movsd xmm1, qword [ebp - 0xb858]
addsd xmm1, xmm0
movsd qword [ebp - 0xb868], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb868]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47c0e7
mov eax, dword [ebp - 0x1f08]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb858]
addsd xmm1, xmm0
movsd qword [ebp - 0xb858], xmm1
jmp 0x47c100
mov ecx, 1
test ecx, ecx
je 0x47c0fc
jmp 0x47c1bc
jmp 0x47c123
cvtsi2sd xmm0, dword [ebp - 0x1f08]
movsd xmm1, qword [ebp - 0xb858]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f0c], edx
jmp 0x47c1c6
xor eax, eax
je 0x47c12d
jmp 0x47c13c
jmp 0x47bf86
jmp 0x47bf86
mov ecx, 2
test ecx, ecx
je 0x47c1bc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1f10], eax
cvtsi2sd xmm0, dword [ebp - 0x1f10]
mov eax, dword [ebp - 0x1f10]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb858]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f0c], ecx
jmp 0x47c1c6
mov dword [ebp - 0x1f0c], 8
mov edx, dword [ebp - 0x1ef8]
shl edx, 2
add edx, dword [ebp - 0x1ef4]
mov eax, dword [ebp - 0x1f0c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1ef8]
shl ecx, 2
add ecx, dword [ebp - 0x1ef4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47c4b9
xor eax, eax
je 0x47c22b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47c267
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de8]
movsd qword [ebp - 0xb870], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47c407
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47c407
mov dword [ebp - 0x1f14], 0
jmp 0x47c2e6
cmp dword [ebp - 0x1f14], 0xf
jae 0x47c402
cvtsi2sd xmm0, dword [ebp - 0x1f14]
movsd xmm1, qword [ebp - 0xb870]
addsd xmm1, xmm0
movsd qword [ebp - 0xb878], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb878]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47c355
mov ecx, dword [ebp - 0x1f14]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb870]
addsd xmm1, xmm0
movsd qword [ebp - 0xb870], xmm1
jmp 0x47c251
cvtsi2sd xmm0, dword [ebp - 0x1f14]
movsd xmm1, qword [ebp - 0xb870]
addsd xmm1, xmm0
movsd qword [ebp - 0xb880], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb880]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47c3b2
mov eax, dword [ebp - 0x1f14]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb870]
addsd xmm1, xmm0
movsd qword [ebp - 0xb870], xmm1
jmp 0x47c3cb
mov ecx, 1
test ecx, ecx
je 0x47c3c7
jmp 0x47c487
jmp 0x47c3ee
cvtsi2sd xmm0, dword [ebp - 0x1f14]
movsd xmm1, qword [ebp - 0xb870]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f18], edx
jmp 0x47c491
xor eax, eax
je 0x47c3f8
jmp 0x47c407
jmp 0x47c251
jmp 0x47c251
mov ecx, 2
test ecx, ecx
je 0x47c487
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1f1c], eax
cvtsi2sd xmm0, dword [ebp - 0x1f1c]
mov eax, dword [ebp - 0x1f1c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb870]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f18], ecx
jmp 0x47c491
mov dword [ebp - 0x1f18], 8
mov edx, dword [ebp - 0x1ef8]
shl edx, 2
add edx, dword [ebp - 0x1ef4]
mov eax, dword [ebp - 0x1f18]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1ef8]
shl ecx, 2
add ecx, dword [ebp - 0x1ef4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1ef8]
add edx, 0xffffffbf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb888], xmm0
xor eax, eax
je 0x47c4d3
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47c50f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb888]
movsd qword [ebp - 0xb890], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47c6af
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47c6af
mov dword [ebp - 0x1f20], 0
jmp 0x47c58e
cmp dword [ebp - 0x1f20], 0xf
jae 0x47c6aa
cvtsi2sd xmm0, dword [ebp - 0x1f20]
movsd xmm1, qword [ebp - 0xb890]
addsd xmm1, xmm0
movsd qword [ebp - 0xb898], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb898]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47c5fd
mov ecx, dword [ebp - 0x1f20]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb890]
addsd xmm1, xmm0
movsd qword [ebp - 0xb890], xmm1
jmp 0x47c4f9
cvtsi2sd xmm0, dword [ebp - 0x1f20]
movsd xmm1, qword [ebp - 0xb890]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb8a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47c65a
mov eax, dword [ebp - 0x1f20]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb890]
addsd xmm1, xmm0
movsd qword [ebp - 0xb890], xmm1
jmp 0x47c673
mov ecx, 1
test ecx, ecx
je 0x47c66f
jmp 0x47c72f
jmp 0x47c696
cvtsi2sd xmm0, dword [ebp - 0x1f20]
movsd xmm1, qword [ebp - 0xb890]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f24], edx
jmp 0x47c739
xor eax, eax
je 0x47c6a0
jmp 0x47c6af
jmp 0x47c4f9
jmp 0x47c4f9
mov ecx, 2
test ecx, ecx
je 0x47c72f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1f28], eax
cvtsi2sd xmm0, dword [ebp - 0x1f28]
mov eax, dword [ebp - 0x1f28]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb890]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f24], ecx
jmp 0x47c739
mov dword [ebp - 0x1f24], 8
mov edx, dword [ebp - 0x1ef8]
add edx, 0xffffffbf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb8a8], xmm0
xor eax, eax
je 0x47c753
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47c78f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb8a8]
movsd qword [ebp - 0xb8b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47c92f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47c92f
mov dword [ebp - 0x1f2c], 0
jmp 0x47c80e
cmp dword [ebp - 0x1f2c], 0xf
jae 0x47c92a
cvtsi2sd xmm0, dword [ebp - 0x1f2c]
movsd xmm1, qword [ebp - 0xb8b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb8b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47c87d
mov ecx, dword [ebp - 0x1f2c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb8b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8b0], xmm1
jmp 0x47c779
cvtsi2sd xmm0, dword [ebp - 0x1f2c]
movsd xmm1, qword [ebp - 0xb8b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb8c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47c8da
mov eax, dword [ebp - 0x1f2c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb8b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8b0], xmm1
jmp 0x47c8f3
mov ecx, 1
test ecx, ecx
je 0x47c8ef
jmp 0x47c9af
jmp 0x47c916
cvtsi2sd xmm0, dword [ebp - 0x1f2c]
movsd xmm1, qword [ebp - 0xb8b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f30], edx
jmp 0x47c9b9
xor eax, eax
je 0x47c920
jmp 0x47c92f
jmp 0x47c779
jmp 0x47c779
mov ecx, 2
test ecx, ecx
je 0x47c9af
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1f34], eax
cvtsi2sd xmm0, dword [ebp - 0x1f34]
mov eax, dword [ebp - 0x1f34]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb8b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f30], ecx
jmp 0x47c9b9
mov dword [ebp - 0x1f30], 8
mov edx, dword [ebp - 0x1ef8]
shl edx, 2
add edx, dword [ebp - 0x1ef4]
mov eax, dword [ebp - 0x1f24]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1ef8]
shl ecx, 2
add ecx, dword [ebp - 0x1ef4]
mov edx, dword [ebp - 0x1f30]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1ef8]
shl ecx, 2
add ecx, dword [ebp - 0x1ef4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47ccc7
xor eax, eax
je 0x47ca39
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47ca75
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de0]
movsd qword [ebp - 0xb8c8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47cc15
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47cc15
mov dword [ebp - 0x1f38], 0
jmp 0x47caf4
cmp dword [ebp - 0x1f38], 0xf
jae 0x47cc10
cvtsi2sd xmm0, dword [ebp - 0x1f38]
movsd xmm1, qword [ebp - 0xb8c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8d0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb8d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47cb63
mov ecx, dword [ebp - 0x1f38]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb8c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8c8], xmm1
jmp 0x47ca5f
cvtsi2sd xmm0, dword [ebp - 0x1f38]
movsd xmm1, qword [ebp - 0xb8c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8d8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb8d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47cbc0
mov eax, dword [ebp - 0x1f38]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb8c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8c8], xmm1
jmp 0x47cbd9
mov ecx, 1
test ecx, ecx
je 0x47cbd5
jmp 0x47cc95
jmp 0x47cbfc
cvtsi2sd xmm0, dword [ebp - 0x1f38]
movsd xmm1, qword [ebp - 0xb8c8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f3c], edx
jmp 0x47cc9f
xor eax, eax
je 0x47cc06
jmp 0x47cc15
jmp 0x47ca5f
jmp 0x47ca5f
mov ecx, 2
test ecx, ecx
je 0x47cc95
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1f40], eax
cvtsi2sd xmm0, dword [ebp - 0x1f40]
mov eax, dword [ebp - 0x1f40]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb8c8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f3c], ecx
jmp 0x47cc9f
mov dword [ebp - 0x1f3c], 8
mov edx, dword [ebp - 0x1ef8]
shl edx, 2
add edx, dword [ebp - 0x1ef4]
mov eax, dword [ebp - 0x1f3c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1ef8]
shl ecx, 2
add ecx, dword [ebp - 0x1ef4]
mov dword [ecx], eax
jmp 0x47bbf7
mov edx, dword [ebp - 0x1ef0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1ef0]
mov dword [ebp - 0x1f44], eax
mov ecx, dword [ebp - 0x1f44]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1f48], ecx
mov edx, dword [ebp - 0x1f48]
mov dword [ebp - 0x1f4c], edx
mov eax, dword [ebp - 0x1eec]
mov dword [ebp - 0x1e8c], eax
cmp dword [ebp - 0x1e8c], 0
je 0x47de69
xor ecx, ecx
mov byte [ebp - 0x55], cl
lea ecx, [ebp - 0x55]
call fcn.00425290
mov dword [ebp - 0x1f50], eax
mov edx, dword [ebp - 0x1f50]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x47de30
mov ecx, dword [ebp - 0x1f50]
mov dword [ebp - 0x1f54], ecx
mov dword [ebp - 0x1f58], 0
jmp 0x47cd6a
mov edx, dword [ebp - 0x1f58]
add edx, 1
mov dword [ebp - 0x1f58], edx
cmp dword [ebp - 0x1f58], 1
jae 0x47de30
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47d042
xor eax, eax
je 0x47cdb4
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x47cdf0
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736df8]
movsd qword [ebp - 0xb8e0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47cf90
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47cf90
mov dword [ebp - 0x1f5c], 0
jmp 0x47ce6f
cmp dword [ebp - 0x1f5c], 0xf
jae 0x47cf8b
cvtsi2sd xmm0, dword [ebp - 0x1f5c]
movsd xmm1, qword [ebp - 0xb8e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8e8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb8e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47cede
mov ecx, dword [ebp - 0x1f5c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb8e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8e0], xmm1
jmp 0x47cdda
cvtsi2sd xmm0, dword [ebp - 0x1f5c]
movsd xmm1, qword [ebp - 0xb8e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8f0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb8f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47cf3b
mov eax, dword [ebp - 0x1f5c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb8e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8e0], xmm1
jmp 0x47cf54
mov ecx, 1
test ecx, ecx
je 0x47cf50
jmp 0x47d010
jmp 0x47cf77
cvtsi2sd xmm0, dword [ebp - 0x1f5c]
movsd xmm1, qword [ebp - 0xb8e0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f60], edx
jmp 0x47d01a
xor eax, eax
je 0x47cf81
jmp 0x47cf90
jmp 0x47cdda
jmp 0x47cdda
mov ecx, 2
test ecx, ecx
je 0x47d010
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1f64], eax
cvtsi2sd xmm0, dword [ebp - 0x1f64]
mov eax, dword [ebp - 0x1f64]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb8e0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f60], ecx
jmp 0x47d01a
mov dword [ebp - 0x1f60], 8
mov edx, dword [ebp - 0x1f58]
shl edx, 2
add edx, dword [ebp - 0x1f54]
mov eax, dword [ebp - 0x1f60]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1f58]
shl ecx, 2
add ecx, dword [ebp - 0x1f54]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47db60
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47d352
xor eax, eax
je 0x47d0c4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47d100
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df0]
movsd qword [ebp - 0xb8f8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47d2a0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47d2a0
mov dword [ebp - 0x1f68], 0
jmp 0x47d17f
cmp dword [ebp - 0x1f68], 0xf
jae 0x47d29b
cvtsi2sd xmm0, dword [ebp - 0x1f68]
movsd xmm1, qword [ebp - 0xb8f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb900], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb900]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47d1ee
mov ecx, dword [ebp - 0x1f68]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb8f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8f8], xmm1
jmp 0x47d0ea
cvtsi2sd xmm0, dword [ebp - 0x1f68]
movsd xmm1, qword [ebp - 0xb8f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb908], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb908]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47d24b
mov eax, dword [ebp - 0x1f68]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb8f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xb8f8], xmm1
jmp 0x47d264
mov ecx, 1
test ecx, ecx
je 0x47d260
jmp 0x47d320
jmp 0x47d287
cvtsi2sd xmm0, dword [ebp - 0x1f68]
movsd xmm1, qword [ebp - 0xb8f8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f6c], edx
jmp 0x47d32a
xor eax, eax
je 0x47d291
jmp 0x47d2a0
jmp 0x47d0ea
jmp 0x47d0ea
mov ecx, 2
test ecx, ecx
je 0x47d320
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1f70], eax
cvtsi2sd xmm0, dword [ebp - 0x1f70]
mov eax, dword [ebp - 0x1f70]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb8f8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f6c], ecx
jmp 0x47d32a
mov dword [ebp - 0x1f6c], 8
mov edx, dword [ebp - 0x1f58]
shl edx, 2
add edx, dword [ebp - 0x1f54]
mov eax, dword [ebp - 0x1f6c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1f58]
shl ecx, 2
add ecx, dword [ebp - 0x1f54]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47d61d
xor eax, eax
je 0x47d38f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47d3cb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de8]
movsd qword [ebp - 0xb910], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47d56b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47d56b
mov dword [ebp - 0x1f74], 0
jmp 0x47d44a
cmp dword [ebp - 0x1f74], 0xf
jae 0x47d566
cvtsi2sd xmm0, dword [ebp - 0x1f74]
movsd xmm1, qword [ebp - 0xb910]
addsd xmm1, xmm0
movsd qword [ebp - 0xb918], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb918]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47d4b9
mov ecx, dword [ebp - 0x1f74]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb910]
addsd xmm1, xmm0
movsd qword [ebp - 0xb910], xmm1
jmp 0x47d3b5
cvtsi2sd xmm0, dword [ebp - 0x1f74]
movsd xmm1, qword [ebp - 0xb910]
addsd xmm1, xmm0
movsd qword [ebp - 0xb920], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb920]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47d516
mov eax, dword [ebp - 0x1f74]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb910]
addsd xmm1, xmm0
movsd qword [ebp - 0xb910], xmm1
jmp 0x47d52f
mov ecx, 1
test ecx, ecx
je 0x47d52b
jmp 0x47d5eb
jmp 0x47d552
cvtsi2sd xmm0, dword [ebp - 0x1f74]
movsd xmm1, qword [ebp - 0xb910]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f78], edx
jmp 0x47d5f5
xor eax, eax
je 0x47d55c
jmp 0x47d56b
jmp 0x47d3b5
jmp 0x47d3b5
mov ecx, 2
test ecx, ecx
je 0x47d5eb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1f7c], eax
cvtsi2sd xmm0, dword [ebp - 0x1f7c]
mov eax, dword [ebp - 0x1f7c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb910]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f78], ecx
jmp 0x47d5f5
mov dword [ebp - 0x1f78], 8
mov edx, dword [ebp - 0x1f58]
shl edx, 2
add edx, dword [ebp - 0x1f54]
mov eax, dword [ebp - 0x1f78]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1f58]
shl ecx, 2
add ecx, dword [ebp - 0x1f54]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1f58]
add edx, 0xffffffbf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb928], xmm0
xor eax, eax
je 0x47d637
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47d673
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb928]
movsd qword [ebp - 0xb930], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47d813
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47d813
mov dword [ebp - 0x1f80], 0
jmp 0x47d6f2
cmp dword [ebp - 0x1f80], 0xf
jae 0x47d80e
cvtsi2sd xmm0, dword [ebp - 0x1f80]
movsd xmm1, qword [ebp - 0xb930]
addsd xmm1, xmm0
movsd qword [ebp - 0xb938], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb938]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47d761
mov ecx, dword [ebp - 0x1f80]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb930]
addsd xmm1, xmm0
movsd qword [ebp - 0xb930], xmm1
jmp 0x47d65d
cvtsi2sd xmm0, dword [ebp - 0x1f80]
movsd xmm1, qword [ebp - 0xb930]
addsd xmm1, xmm0
movsd qword [ebp - 0xb940], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb940]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47d7be
mov eax, dword [ebp - 0x1f80]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb930]
addsd xmm1, xmm0
movsd qword [ebp - 0xb930], xmm1
jmp 0x47d7d7
mov ecx, 1
test ecx, ecx
je 0x47d7d3
jmp 0x47d893
jmp 0x47d7fa
cvtsi2sd xmm0, dword [ebp - 0x1f80]
movsd xmm1, qword [ebp - 0xb930]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f84], edx
jmp 0x47d89d
xor eax, eax
je 0x47d804
jmp 0x47d813
jmp 0x47d65d
jmp 0x47d65d
mov ecx, 2
test ecx, ecx
je 0x47d893
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1f88], eax
cvtsi2sd xmm0, dword [ebp - 0x1f88]
mov eax, dword [ebp - 0x1f88]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb930]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f84], ecx
jmp 0x47d89d
mov dword [ebp - 0x1f84], 8
mov edx, dword [ebp - 0x1f58]
add edx, 0xffffffbf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb948], xmm0
xor eax, eax
je 0x47d8b7
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47d8f3
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb948]
movsd qword [ebp - 0xb950], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47da93
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47da93
mov dword [ebp - 0x1f8c], 0
jmp 0x47d972
cmp dword [ebp - 0x1f8c], 0xf
jae 0x47da8e
cvtsi2sd xmm0, dword [ebp - 0x1f8c]
movsd xmm1, qword [ebp - 0xb950]
addsd xmm1, xmm0
movsd qword [ebp - 0xb958], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb958]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47d9e1
mov ecx, dword [ebp - 0x1f8c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb950]
addsd xmm1, xmm0
movsd qword [ebp - 0xb950], xmm1
jmp 0x47d8dd
cvtsi2sd xmm0, dword [ebp - 0x1f8c]
movsd xmm1, qword [ebp - 0xb950]
addsd xmm1, xmm0
movsd qword [ebp - 0xb960], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb960]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47da3e
mov eax, dword [ebp - 0x1f8c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb950]
addsd xmm1, xmm0
movsd qword [ebp - 0xb950], xmm1
jmp 0x47da57
mov ecx, 1
test ecx, ecx
je 0x47da53
jmp 0x47db13
jmp 0x47da7a
cvtsi2sd xmm0, dword [ebp - 0x1f8c]
movsd xmm1, qword [ebp - 0xb950]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f90], edx
jmp 0x47db1d
xor eax, eax
je 0x47da84
jmp 0x47da93
jmp 0x47d8dd
jmp 0x47d8dd
mov ecx, 2
test ecx, ecx
je 0x47db13
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1f94], eax
cvtsi2sd xmm0, dword [ebp - 0x1f94]
mov eax, dword [ebp - 0x1f94]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb950]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f90], ecx
jmp 0x47db1d
mov dword [ebp - 0x1f90], 8
mov edx, dword [ebp - 0x1f58]
shl edx, 2
add edx, dword [ebp - 0x1f54]
mov eax, dword [ebp - 0x1f84]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1f58]
shl ecx, 2
add ecx, dword [ebp - 0x1f54]
mov edx, dword [ebp - 0x1f90]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1f58]
shl ecx, 2
add ecx, dword [ebp - 0x1f54]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47de2b
xor eax, eax
je 0x47db9d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47dbd9
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de0]
movsd qword [ebp - 0xb968], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47dd79
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47dd79
mov dword [ebp - 0x1f98], 0
jmp 0x47dc58
cmp dword [ebp - 0x1f98], 0xf
jae 0x47dd74
cvtsi2sd xmm0, dword [ebp - 0x1f98]
movsd xmm1, qword [ebp - 0xb968]
addsd xmm1, xmm0
movsd qword [ebp - 0xb970], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb970]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47dcc7
mov ecx, dword [ebp - 0x1f98]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb968]
addsd xmm1, xmm0
movsd qword [ebp - 0xb968], xmm1
jmp 0x47dbc3
cvtsi2sd xmm0, dword [ebp - 0x1f98]
movsd xmm1, qword [ebp - 0xb968]
addsd xmm1, xmm0
movsd qword [ebp - 0xb978], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb978]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47dd24
mov eax, dword [ebp - 0x1f98]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb968]
addsd xmm1, xmm0
movsd qword [ebp - 0xb968], xmm1
jmp 0x47dd3d
mov ecx, 1
test ecx, ecx
je 0x47dd39
jmp 0x47ddf9
jmp 0x47dd60
cvtsi2sd xmm0, dword [ebp - 0x1f98]
movsd xmm1, qword [ebp - 0xb968]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1f9c], edx
jmp 0x47de03
xor eax, eax
je 0x47dd6a
jmp 0x47dd79
jmp 0x47dbc3
jmp 0x47dbc3
mov ecx, 2
test ecx, ecx
je 0x47ddf9
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1fa0], eax
cvtsi2sd xmm0, dword [ebp - 0x1fa0]
mov eax, dword [ebp - 0x1fa0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb968]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1f9c], ecx
jmp 0x47de03
mov dword [ebp - 0x1f9c], 8
mov edx, dword [ebp - 0x1f58]
shl edx, 2
add edx, dword [ebp - 0x1f54]
mov eax, dword [ebp - 0x1f9c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1f58]
shl ecx, 2
add ecx, dword [ebp - 0x1f54]
mov dword [ecx], eax
jmp 0x47cd5b
mov edx, dword [ebp - 0x1f50]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1f50]
mov dword [ebp - 0x1fa4], eax
mov ecx, dword [ebp - 0x1fa4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x1fa8], ecx
mov edx, dword [ebp - 0x1fa8]
mov dword [ebp - 0x1f4c], edx
movzx eax, byte [ebp - 0x28]
test eax, eax
je 0x48693c
xor ecx, ecx
mov byte [ebp - 0x56], cl
lea ecx, [ebp - 0x56]
call fcn.00425260
mov dword [ebp - 0x1fac], eax
mov edx, dword [ebp - 0x1fac]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x47ef87
mov ecx, dword [ebp - 0x1fac]
mov dword [ebp - 0x1fb0], ecx
mov dword [ebp - 0x1fb4], 0
jmp 0x47dec1
mov edx, dword [ebp - 0x1fb4]
add edx, 1
mov dword [ebp - 0x1fb4], edx
cmp dword [ebp - 0x1fb4], 1
jae 0x47ef87
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47e199
xor eax, eax
je 0x47df0b
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x47df47
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736df0]
movsd qword [ebp - 0xb980], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47e0e7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47e0e7
mov dword [ebp - 0x1fb8], 0
jmp 0x47dfc6
cmp dword [ebp - 0x1fb8], 0xf
jae 0x47e0e2
cvtsi2sd xmm0, dword [ebp - 0x1fb8]
movsd xmm1, qword [ebp - 0xb980]
addsd xmm1, xmm0
movsd qword [ebp - 0xb988], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb988]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47e035
mov ecx, dword [ebp - 0x1fb8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb980]
addsd xmm1, xmm0
movsd qword [ebp - 0xb980], xmm1
jmp 0x47df31
cvtsi2sd xmm0, dword [ebp - 0x1fb8]
movsd xmm1, qword [ebp - 0xb980]
addsd xmm1, xmm0
movsd qword [ebp - 0xb990], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb990]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47e092
mov eax, dword [ebp - 0x1fb8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb980]
addsd xmm1, xmm0
movsd qword [ebp - 0xb980], xmm1
jmp 0x47e0ab
mov ecx, 1
test ecx, ecx
je 0x47e0a7
jmp 0x47e167
jmp 0x47e0ce
cvtsi2sd xmm0, dword [ebp - 0x1fb8]
movsd xmm1, qword [ebp - 0xb980]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1fbc], edx
jmp 0x47e171
xor eax, eax
je 0x47e0d8
jmp 0x47e0e7
jmp 0x47df31
jmp 0x47df31
mov ecx, 2
test ecx, ecx
je 0x47e167
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1fc0], eax
cvtsi2sd xmm0, dword [ebp - 0x1fc0]
mov eax, dword [ebp - 0x1fc0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb980]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1fbc], ecx
jmp 0x47e171
mov dword [ebp - 0x1fbc], 8
mov edx, dword [ebp - 0x1fb4]
shl edx, 2
add edx, dword [ebp - 0x1fb0]
mov eax, dword [ebp - 0x1fbc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1fb4]
shl ecx, 2
add ecx, dword [ebp - 0x1fb0]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47ecb7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47e4a9
xor eax, eax
je 0x47e21b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47e257
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de8]
movsd qword [ebp - 0xb998], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47e3f7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47e3f7
mov dword [ebp - 0x1fc4], 0
jmp 0x47e2d6
cmp dword [ebp - 0x1fc4], 0xf
jae 0x47e3f2
cvtsi2sd xmm0, dword [ebp - 0x1fc4]
movsd xmm1, qword [ebp - 0xb998]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9a0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb9a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47e345
mov ecx, dword [ebp - 0x1fc4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb998]
addsd xmm1, xmm0
movsd qword [ebp - 0xb998], xmm1
jmp 0x47e241
cvtsi2sd xmm0, dword [ebp - 0x1fc4]
movsd xmm1, qword [ebp - 0xb998]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9a8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb9a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47e3a2
mov eax, dword [ebp - 0x1fc4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb998]
addsd xmm1, xmm0
movsd qword [ebp - 0xb998], xmm1
jmp 0x47e3bb
mov ecx, 1
test ecx, ecx
je 0x47e3b7
jmp 0x47e477
jmp 0x47e3de
cvtsi2sd xmm0, dword [ebp - 0x1fc4]
movsd xmm1, qword [ebp - 0xb998]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1fc8], edx
jmp 0x47e481
xor eax, eax
je 0x47e3e8
jmp 0x47e3f7
jmp 0x47e241
jmp 0x47e241
mov ecx, 2
test ecx, ecx
je 0x47e477
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1fcc], eax
cvtsi2sd xmm0, dword [ebp - 0x1fcc]
mov eax, dword [ebp - 0x1fcc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb998]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1fc8], ecx
jmp 0x47e481
mov dword [ebp - 0x1fc8], 8
mov edx, dword [ebp - 0x1fb4]
shl edx, 2
add edx, dword [ebp - 0x1fb0]
mov eax, dword [ebp - 0x1fc8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1fb4]
shl ecx, 2
add ecx, dword [ebp - 0x1fb0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47e774
xor eax, eax
je 0x47e4e6
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47e522
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de0]
movsd qword [ebp - 0xb9b0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47e6c2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47e6c2
mov dword [ebp - 0x1fd0], 0
jmp 0x47e5a1
cmp dword [ebp - 0x1fd0], 0xf
jae 0x47e6bd
cvtsi2sd xmm0, dword [ebp - 0x1fd0]
movsd xmm1, qword [ebp - 0xb9b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb9b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47e610
mov ecx, dword [ebp - 0x1fd0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb9b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9b0], xmm1
jmp 0x47e50c
cvtsi2sd xmm0, dword [ebp - 0x1fd0]
movsd xmm1, qword [ebp - 0xb9b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb9c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47e66d
mov eax, dword [ebp - 0x1fd0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb9b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9b0], xmm1
jmp 0x47e686
mov ecx, 1
test ecx, ecx
je 0x47e682
jmp 0x47e742
jmp 0x47e6a9
cvtsi2sd xmm0, dword [ebp - 0x1fd0]
movsd xmm1, qword [ebp - 0xb9b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1fd4], edx
jmp 0x47e74c
xor eax, eax
je 0x47e6b3
jmp 0x47e6c2
jmp 0x47e50c
jmp 0x47e50c
mov ecx, 2
test ecx, ecx
je 0x47e742
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1fd8], eax
cvtsi2sd xmm0, dword [ebp - 0x1fd8]
mov eax, dword [ebp - 0x1fd8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb9b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1fd4], ecx
jmp 0x47e74c
mov dword [ebp - 0x1fd4], 8
mov edx, dword [ebp - 0x1fb4]
shl edx, 2
add edx, dword [ebp - 0x1fb0]
mov eax, dword [ebp - 0x1fd4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1fb4]
shl ecx, 2
add ecx, dword [ebp - 0x1fb0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x1fb4]
add edx, 0xffffffc0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb9c8], xmm0
xor eax, eax
je 0x47e78e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47e7ca
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb9c8]
movsd qword [ebp - 0xb9d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47e96a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47e96a
mov dword [ebp - 0x1fdc], 0
jmp 0x47e849
cmp dword [ebp - 0x1fdc], 0xf
jae 0x47e965
cvtsi2sd xmm0, dword [ebp - 0x1fdc]
movsd xmm1, qword [ebp - 0xb9d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb9d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47e8b8
mov ecx, dword [ebp - 0x1fdc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb9d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9d0], xmm1
jmp 0x47e7b4
cvtsi2sd xmm0, dword [ebp - 0x1fdc]
movsd xmm1, qword [ebp - 0xb9d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xb9e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47e915
mov eax, dword [ebp - 0x1fdc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb9d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9d0], xmm1
jmp 0x47e92e
mov ecx, 1
test ecx, ecx
je 0x47e92a
jmp 0x47e9ea
jmp 0x47e951
cvtsi2sd xmm0, dword [ebp - 0x1fdc]
movsd xmm1, qword [ebp - 0xb9d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1fe0], edx
jmp 0x47e9f4
xor eax, eax
je 0x47e95b
jmp 0x47e96a
jmp 0x47e7b4
jmp 0x47e7b4
mov ecx, 2
test ecx, ecx
je 0x47e9ea
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1fe4], eax
cvtsi2sd xmm0, dword [ebp - 0x1fe4]
mov eax, dword [ebp - 0x1fe4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb9d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1fe0], ecx
jmp 0x47e9f4
mov dword [ebp - 0x1fe0], 8
mov edx, dword [ebp - 0x1fb4]
add edx, 0xffffffc0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xb9e8], xmm0
xor eax, eax
je 0x47ea0e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47ea4a
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xb9e8]
movsd qword [ebp - 0xb9f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47ebea
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47ebea
mov dword [ebp - 0x1fe8], 0
jmp 0x47eac9
cmp dword [ebp - 0x1fe8], 0xf
jae 0x47ebe5
cvtsi2sd xmm0, dword [ebp - 0x1fe8]
movsd xmm1, qword [ebp - 0xb9f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb9f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47eb38
mov ecx, dword [ebp - 0x1fe8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xb9f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9f0], xmm1
jmp 0x47ea34
cvtsi2sd xmm0, dword [ebp - 0x1fe8]
movsd xmm1, qword [ebp - 0xb9f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xba00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xba00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47eb95
mov eax, dword [ebp - 0x1fe8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xb9f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xb9f0], xmm1
jmp 0x47ebae
mov ecx, 1
test ecx, ecx
je 0x47ebaa
jmp 0x47ec6a
jmp 0x47ebd1
cvtsi2sd xmm0, dword [ebp - 0x1fe8]
movsd xmm1, qword [ebp - 0xb9f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1fec], edx
jmp 0x47ec74
xor eax, eax
je 0x47ebdb
jmp 0x47ebea
jmp 0x47ea34
jmp 0x47ea34
mov ecx, 2
test ecx, ecx
je 0x47ec6a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ff0], eax
cvtsi2sd xmm0, dword [ebp - 0x1ff0]
mov eax, dword [ebp - 0x1ff0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xb9f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1fec], ecx
jmp 0x47ec74
mov dword [ebp - 0x1fec], 8
mov edx, dword [ebp - 0x1fb4]
shl edx, 2
add edx, dword [ebp - 0x1fb0]
mov eax, dword [ebp - 0x1fe0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x1fb4]
shl ecx, 2
add ecx, dword [ebp - 0x1fb0]
mov edx, dword [ebp - 0x1fec]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x1fb4]
shl ecx, 2
add ecx, dword [ebp - 0x1fb0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47ef82
xor eax, eax
je 0x47ecf4
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47ed30
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd8]
movsd qword [ebp - 0xba08], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47eed0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47eed0
mov dword [ebp - 0x1ff4], 0
jmp 0x47edaf
cmp dword [ebp - 0x1ff4], 0xf
jae 0x47eecb
cvtsi2sd xmm0, dword [ebp - 0x1ff4]
movsd xmm1, qword [ebp - 0xba08]
addsd xmm1, xmm0
movsd qword [ebp - 0xba10], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xba10]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47ee1e
mov ecx, dword [ebp - 0x1ff4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xba08]
addsd xmm1, xmm0
movsd qword [ebp - 0xba08], xmm1
jmp 0x47ed1a
cvtsi2sd xmm0, dword [ebp - 0x1ff4]
movsd xmm1, qword [ebp - 0xba08]
addsd xmm1, xmm0
movsd qword [ebp - 0xba18], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xba18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47ee7b
mov eax, dword [ebp - 0x1ff4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xba08]
addsd xmm1, xmm0
movsd qword [ebp - 0xba08], xmm1
jmp 0x47ee94
mov ecx, 1
test ecx, ecx
je 0x47ee90
jmp 0x47ef50
jmp 0x47eeb7
cvtsi2sd xmm0, dword [ebp - 0x1ff4]
movsd xmm1, qword [ebp - 0xba08]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x1ff8], edx
jmp 0x47ef5a
xor eax, eax
je 0x47eec1
jmp 0x47eed0
jmp 0x47ed1a
jmp 0x47ed1a
mov ecx, 2
test ecx, ecx
je 0x47ef50
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x1ffc], eax
cvtsi2sd xmm0, dword [ebp - 0x1ffc]
mov eax, dword [ebp - 0x1ffc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xba08]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x1ff8], ecx
jmp 0x47ef5a
mov dword [ebp - 0x1ff8], 8
mov edx, dword [ebp - 0x1fb4]
shl edx, 2
add edx, dword [ebp - 0x1fb0]
mov eax, dword [ebp - 0x1ff8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x1fb4]
shl ecx, 2
add ecx, dword [ebp - 0x1fb0]
mov dword [ecx], eax
jmp 0x47deb2
mov edx, dword [ebp - 0x1fac]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x1fac]
mov dword [ebp - 0x2000], eax
mov ecx, dword [ebp - 0x2000]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2004], ecx
mov edx, dword [ebp - 0x2004]
mov dword [ebp - 0x2008], edx
xor eax, eax
mov byte [ebp - 0x57], al
lea ecx, [ebp - 0x57]
call fcn.00425230
mov dword [ebp - 0x200c], eax
mov ecx, dword [ebp - 0x200c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4800d2
mov eax, dword [ebp - 0x200c]
mov dword [ebp - 0x2010], eax
mov dword [ebp - 0x2014], 0
jmp 0x47f00c
mov ecx, dword [ebp - 0x2014]
add ecx, 1
mov dword [ebp - 0x2014], ecx
cmp dword [ebp - 0x2014], 1
jae 0x4800d2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47f2e4
xor eax, eax
je 0x47f056
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47f092
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df0]
movsd qword [ebp - 0xba20], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47f232
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47f232
mov dword [ebp - 0x2018], 0
jmp 0x47f111
cmp dword [ebp - 0x2018], 0xf
jae 0x47f22d
cvtsi2sd xmm0, dword [ebp - 0x2018]
movsd xmm1, qword [ebp - 0xba20]
addsd xmm1, xmm0
movsd qword [ebp - 0xba28], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xba28]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47f180
mov ecx, dword [ebp - 0x2018]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xba20]
addsd xmm1, xmm0
movsd qword [ebp - 0xba20], xmm1
jmp 0x47f07c
cvtsi2sd xmm0, dword [ebp - 0x2018]
movsd xmm1, qword [ebp - 0xba20]
addsd xmm1, xmm0
movsd qword [ebp - 0xba30], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xba30]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47f1dd
mov eax, dword [ebp - 0x2018]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xba20]
addsd xmm1, xmm0
movsd qword [ebp - 0xba20], xmm1
jmp 0x47f1f6
mov ecx, 1
test ecx, ecx
je 0x47f1f2
jmp 0x47f2b2
jmp 0x47f219
cvtsi2sd xmm0, dword [ebp - 0x2018]
movsd xmm1, qword [ebp - 0xba20]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x201c], edx
jmp 0x47f2bc
xor eax, eax
je 0x47f223
jmp 0x47f232
jmp 0x47f07c
jmp 0x47f07c
mov ecx, 2
test ecx, ecx
je 0x47f2b2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2020], eax
cvtsi2sd xmm0, dword [ebp - 0x2020]
mov eax, dword [ebp - 0x2020]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xba20]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x201c], ecx
jmp 0x47f2bc
mov dword [ebp - 0x201c], 8
mov edx, dword [ebp - 0x2014]
shl edx, 2
add edx, dword [ebp - 0x2010]
mov eax, dword [ebp - 0x201c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2014]
shl ecx, 2
add ecx, dword [ebp - 0x2010]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47fe02
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47f5f4
xor eax, eax
je 0x47f366
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47f3a2
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de8]
movsd qword [ebp - 0xba38], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47f542
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47f542
mov dword [ebp - 0x2024], 0
jmp 0x47f421
cmp dword [ebp - 0x2024], 0xf
jae 0x47f53d
cvtsi2sd xmm0, dword [ebp - 0x2024]
movsd xmm1, qword [ebp - 0xba38]
addsd xmm1, xmm0
movsd qword [ebp - 0xba40], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xba40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47f490
mov ecx, dword [ebp - 0x2024]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xba38]
addsd xmm1, xmm0
movsd qword [ebp - 0xba38], xmm1
jmp 0x47f38c
cvtsi2sd xmm0, dword [ebp - 0x2024]
movsd xmm1, qword [ebp - 0xba38]
addsd xmm1, xmm0
movsd qword [ebp - 0xba48], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xba48]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47f4ed
mov eax, dword [ebp - 0x2024]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xba38]
addsd xmm1, xmm0
movsd qword [ebp - 0xba38], xmm1
jmp 0x47f506
mov ecx, 1
test ecx, ecx
je 0x47f502
jmp 0x47f5c2
jmp 0x47f529
cvtsi2sd xmm0, dword [ebp - 0x2024]
movsd xmm1, qword [ebp - 0xba38]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2028], edx
jmp 0x47f5cc
xor eax, eax
je 0x47f533
jmp 0x47f542
jmp 0x47f38c
jmp 0x47f38c
mov ecx, 2
test ecx, ecx
je 0x47f5c2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x202c], eax
cvtsi2sd xmm0, dword [ebp - 0x202c]
mov eax, dword [ebp - 0x202c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xba38]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2028], ecx
jmp 0x47f5cc
mov dword [ebp - 0x2028], 8
mov edx, dword [ebp - 0x2014]
shl edx, 2
add edx, dword [ebp - 0x2010]
mov eax, dword [ebp - 0x2028]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2014]
shl ecx, 2
add ecx, dword [ebp - 0x2010]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x47f8bf
xor eax, eax
je 0x47f631
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47f66d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de0]
movsd qword [ebp - 0xba50], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47f80d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47f80d
mov dword [ebp - 0x2030], 0
jmp 0x47f6ec
cmp dword [ebp - 0x2030], 0xf
jae 0x47f808
cvtsi2sd xmm0, dword [ebp - 0x2030]
movsd xmm1, qword [ebp - 0xba50]
addsd xmm1, xmm0
movsd qword [ebp - 0xba58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xba58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47f75b
mov ecx, dword [ebp - 0x2030]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xba50]
addsd xmm1, xmm0
movsd qword [ebp - 0xba50], xmm1
jmp 0x47f657
cvtsi2sd xmm0, dword [ebp - 0x2030]
movsd xmm1, qword [ebp - 0xba50]
addsd xmm1, xmm0
movsd qword [ebp - 0xba60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xba60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47f7b8
mov eax, dword [ebp - 0x2030]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xba50]
addsd xmm1, xmm0
movsd qword [ebp - 0xba50], xmm1
jmp 0x47f7d1
mov ecx, 1
test ecx, ecx
je 0x47f7cd
jmp 0x47f88d
jmp 0x47f7f4
cvtsi2sd xmm0, dword [ebp - 0x2030]
movsd xmm1, qword [ebp - 0xba50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2034], edx
jmp 0x47f897
xor eax, eax
je 0x47f7fe
jmp 0x47f80d
jmp 0x47f657
jmp 0x47f657
mov ecx, 2
test ecx, ecx
je 0x47f88d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2038], eax
cvtsi2sd xmm0, dword [ebp - 0x2038]
mov eax, dword [ebp - 0x2038]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xba50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2034], ecx
jmp 0x47f897
mov dword [ebp - 0x2034], 8
mov edx, dword [ebp - 0x2014]
shl edx, 2
add edx, dword [ebp - 0x2010]
mov eax, dword [ebp - 0x2034]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2014]
shl ecx, 2
add ecx, dword [ebp - 0x2010]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2014]
add edx, 0xffffffc0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xba68], xmm0
xor eax, eax
je 0x47f8d9
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47f915
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xba68]
movsd qword [ebp - 0xba70], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47fab5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47fab5
mov dword [ebp - 0x203c], 0
jmp 0x47f994
cmp dword [ebp - 0x203c], 0xf
jae 0x47fab0
cvtsi2sd xmm0, dword [ebp - 0x203c]
movsd xmm1, qword [ebp - 0xba70]
addsd xmm1, xmm0
movsd qword [ebp - 0xba78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xba78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47fa03
mov ecx, dword [ebp - 0x203c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xba70]
addsd xmm1, xmm0
movsd qword [ebp - 0xba70], xmm1
jmp 0x47f8ff
cvtsi2sd xmm0, dword [ebp - 0x203c]
movsd xmm1, qword [ebp - 0xba70]
addsd xmm1, xmm0
movsd qword [ebp - 0xba80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xba80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47fa60
mov eax, dword [ebp - 0x203c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xba70]
addsd xmm1, xmm0
movsd qword [ebp - 0xba70], xmm1
jmp 0x47fa79
mov ecx, 1
test ecx, ecx
je 0x47fa75
jmp 0x47fb35
jmp 0x47fa9c
cvtsi2sd xmm0, dword [ebp - 0x203c]
movsd xmm1, qword [ebp - 0xba70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2040], edx
jmp 0x47fb3f
xor eax, eax
je 0x47faa6
jmp 0x47fab5
jmp 0x47f8ff
jmp 0x47f8ff
mov ecx, 2
test ecx, ecx
je 0x47fb35
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2044], eax
cvtsi2sd xmm0, dword [ebp - 0x2044]
mov eax, dword [ebp - 0x2044]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xba70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2040], ecx
jmp 0x47fb3f
mov dword [ebp - 0x2040], 8
mov edx, dword [ebp - 0x2014]
add edx, 0xffffffc0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xba88], xmm0
xor eax, eax
je 0x47fb59
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x47fb95
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xba88]
movsd qword [ebp - 0xba90], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x47fd35
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x47fd35
mov dword [ebp - 0x2048], 0
jmp 0x47fc14
cmp dword [ebp - 0x2048], 0xf
jae 0x47fd30
cvtsi2sd xmm0, dword [ebp - 0x2048]
movsd xmm1, qword [ebp - 0xba90]
addsd xmm1, xmm0
movsd qword [ebp - 0xba98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xba98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47fc83
mov ecx, dword [ebp - 0x2048]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xba90]
addsd xmm1, xmm0
movsd qword [ebp - 0xba90], xmm1
jmp 0x47fb7f
cvtsi2sd xmm0, dword [ebp - 0x2048]
movsd xmm1, qword [ebp - 0xba90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbaa0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbaa0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47fce0
mov eax, dword [ebp - 0x2048]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xba90]
addsd xmm1, xmm0
movsd qword [ebp - 0xba90], xmm1
jmp 0x47fcf9
mov ecx, 1
test ecx, ecx
je 0x47fcf5
jmp 0x47fdb5
jmp 0x47fd1c
cvtsi2sd xmm0, dword [ebp - 0x2048]
movsd xmm1, qword [ebp - 0xba90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x204c], edx
jmp 0x47fdbf
xor eax, eax
je 0x47fd26
jmp 0x47fd35
jmp 0x47fb7f
jmp 0x47fb7f
mov ecx, 2
test ecx, ecx
je 0x47fdb5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2050], eax
cvtsi2sd xmm0, dword [ebp - 0x2050]
mov eax, dword [ebp - 0x2050]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xba90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x204c], ecx
jmp 0x47fdbf
mov dword [ebp - 0x204c], 8
mov edx, dword [ebp - 0x2014]
shl edx, 2
add edx, dword [ebp - 0x2010]
mov eax, dword [ebp - 0x2040]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2014]
shl ecx, 2
add ecx, dword [ebp - 0x2010]
mov edx, dword [ebp - 0x204c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2014]
shl ecx, 2
add ecx, dword [ebp - 0x2010]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4800cd
xor eax, eax
je 0x47fe3f
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x47fe7b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd8]
movsd qword [ebp - 0xbaa8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48001b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48001b
mov dword [ebp - 0x2054], 0
jmp 0x47fefa
cmp dword [ebp - 0x2054], 0xf
jae 0x480016
cvtsi2sd xmm0, dword [ebp - 0x2054]
movsd xmm1, qword [ebp - 0xbaa8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbab0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbab0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47ff69
mov ecx, dword [ebp - 0x2054]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbaa8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbaa8], xmm1
jmp 0x47fe65
cvtsi2sd xmm0, dword [ebp - 0x2054]
movsd xmm1, qword [ebp - 0xbaa8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbab8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbab8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x47ffc6
mov eax, dword [ebp - 0x2054]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbaa8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbaa8], xmm1
jmp 0x47ffdf
mov ecx, 1
test ecx, ecx
je 0x47ffdb
jmp 0x48009b
jmp 0x480002
cvtsi2sd xmm0, dword [ebp - 0x2054]
movsd xmm1, qword [ebp - 0xbaa8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2058], edx
jmp 0x4800a5
xor eax, eax
je 0x48000c
jmp 0x48001b
jmp 0x47fe65
jmp 0x47fe65
mov ecx, 2
test ecx, ecx
je 0x48009b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x205c], eax
cvtsi2sd xmm0, dword [ebp - 0x205c]
mov eax, dword [ebp - 0x205c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbaa8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2058], ecx
jmp 0x4800a5
mov dword [ebp - 0x2058], 8
mov edx, dword [ebp - 0x2014]
shl edx, 2
add edx, dword [ebp - 0x2010]
mov eax, dword [ebp - 0x2058]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2014]
shl ecx, 2
add ecx, dword [ebp - 0x2010]
mov dword [ecx], eax
jmp 0x47effd
mov edx, dword [ebp - 0x200c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x200c]
mov dword [ebp - 0x2060], eax
mov ecx, dword [ebp - 0x2060]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2064], ecx
mov edx, dword [ebp - 0x2064]
mov dword [ebp - 0x2068], edx
xor eax, eax
mov byte [ebp - 0x58], al
lea ecx, [ebp - 0x58]
call fcn.00425200
mov dword [ebp - 0x206c], eax
mov ecx, dword [ebp - 0x206c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x48121d
mov eax, dword [ebp - 0x206c]
mov dword [ebp - 0x2070], eax
mov dword [ebp - 0x2074], 0
jmp 0x480157
mov ecx, dword [ebp - 0x2074]
add ecx, 1
mov dword [ebp - 0x2074], ecx
cmp dword [ebp - 0x2074], 1
jae 0x48121d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48042f
xor eax, eax
je 0x4801a1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4801dd
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736df0]
movsd qword [ebp - 0xbac0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48037d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48037d
mov dword [ebp - 0x2078], 0
jmp 0x48025c
cmp dword [ebp - 0x2078], 0xf
jae 0x480378
cvtsi2sd xmm0, dword [ebp - 0x2078]
movsd xmm1, qword [ebp - 0xbac0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbac8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbac8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4802cb
mov ecx, dword [ebp - 0x2078]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbac0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbac0], xmm1
jmp 0x4801c7
cvtsi2sd xmm0, dword [ebp - 0x2078]
movsd xmm1, qword [ebp - 0xbac0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbad0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbad0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x480328
mov eax, dword [ebp - 0x2078]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbac0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbac0], xmm1
jmp 0x480341
mov ecx, 1
test ecx, ecx
je 0x48033d
jmp 0x4803fd
jmp 0x480364
cvtsi2sd xmm0, dword [ebp - 0x2078]
movsd xmm1, qword [ebp - 0xbac0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x207c], edx
jmp 0x480407
xor eax, eax
je 0x48036e
jmp 0x48037d
jmp 0x4801c7
jmp 0x4801c7
mov ecx, 2
test ecx, ecx
je 0x4803fd
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2080], eax
cvtsi2sd xmm0, dword [ebp - 0x2080]
mov eax, dword [ebp - 0x2080]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbac0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x207c], ecx
jmp 0x480407
mov dword [ebp - 0x207c], 8
mov edx, dword [ebp - 0x2074]
shl edx, 2
add edx, dword [ebp - 0x2070]
mov eax, dword [ebp - 0x207c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2074]
shl ecx, 2
add ecx, dword [ebp - 0x2070]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x480f4d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48073f
xor eax, eax
je 0x4804b1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4804ed
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de8]
movsd qword [ebp - 0xbad8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48068d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48068d
mov dword [ebp - 0x2084], 0
jmp 0x48056c
cmp dword [ebp - 0x2084], 0xf
jae 0x480688
cvtsi2sd xmm0, dword [ebp - 0x2084]
movsd xmm1, qword [ebp - 0xbad8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbae0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbae0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4805db
mov ecx, dword [ebp - 0x2084]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbad8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbad8], xmm1
jmp 0x4804d7
cvtsi2sd xmm0, dword [ebp - 0x2084]
movsd xmm1, qword [ebp - 0xbad8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbae8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbae8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x480638
mov eax, dword [ebp - 0x2084]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbad8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbad8], xmm1
jmp 0x480651
mov ecx, 1
test ecx, ecx
je 0x48064d
jmp 0x48070d
jmp 0x480674
cvtsi2sd xmm0, dword [ebp - 0x2084]
movsd xmm1, qword [ebp - 0xbad8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2088], edx
jmp 0x480717
xor eax, eax
je 0x48067e
jmp 0x48068d
jmp 0x4804d7
jmp 0x4804d7
mov ecx, 2
test ecx, ecx
je 0x48070d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x208c], eax
cvtsi2sd xmm0, dword [ebp - 0x208c]
mov eax, dword [ebp - 0x208c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbad8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2088], ecx
jmp 0x480717
mov dword [ebp - 0x2088], 8
mov edx, dword [ebp - 0x2074]
shl edx, 2
add edx, dword [ebp - 0x2070]
mov eax, dword [ebp - 0x2088]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2074]
shl ecx, 2
add ecx, dword [ebp - 0x2070]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x480a0a
xor eax, eax
je 0x48077c
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4807b8
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de0]
movsd qword [ebp - 0xbaf0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x480958
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x480958
mov dword [ebp - 0x2090], 0
jmp 0x480837
cmp dword [ebp - 0x2090], 0xf
jae 0x480953
cvtsi2sd xmm0, dword [ebp - 0x2090]
movsd xmm1, qword [ebp - 0xbaf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbaf8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbaf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4808a6
mov ecx, dword [ebp - 0x2090]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbaf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbaf0], xmm1
jmp 0x4807a2
cvtsi2sd xmm0, dword [ebp - 0x2090]
movsd xmm1, qword [ebp - 0xbaf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbb00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x480903
mov eax, dword [ebp - 0x2090]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbaf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbaf0], xmm1
jmp 0x48091c
mov ecx, 1
test ecx, ecx
je 0x480918
jmp 0x4809d8
jmp 0x48093f
cvtsi2sd xmm0, dword [ebp - 0x2090]
movsd xmm1, qword [ebp - 0xbaf0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2094], edx
jmp 0x4809e2
xor eax, eax
je 0x480949
jmp 0x480958
jmp 0x4807a2
jmp 0x4807a2
mov ecx, 2
test ecx, ecx
je 0x4809d8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2098], eax
cvtsi2sd xmm0, dword [ebp - 0x2098]
mov eax, dword [ebp - 0x2098]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbaf0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2094], ecx
jmp 0x4809e2
mov dword [ebp - 0x2094], 8
mov edx, dword [ebp - 0x2074]
shl edx, 2
add edx, dword [ebp - 0x2070]
mov eax, dword [ebp - 0x2094]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2074]
shl ecx, 2
add ecx, dword [ebp - 0x2070]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2074]
add edx, 0xffffffc0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbb08], xmm0
xor eax, eax
je 0x480a24
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x480a60
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbb08]
movsd qword [ebp - 0xbb10], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x480c00
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x480c00
mov dword [ebp - 0x209c], 0
jmp 0x480adf
cmp dword [ebp - 0x209c], 0xf
jae 0x480bfb
cvtsi2sd xmm0, dword [ebp - 0x209c]
movsd xmm1, qword [ebp - 0xbb10]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbb18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x480b4e
mov ecx, dword [ebp - 0x209c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbb10]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb10], xmm1
jmp 0x480a4a
cvtsi2sd xmm0, dword [ebp - 0x209c]
movsd xmm1, qword [ebp - 0xbb10]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbb20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x480bab
mov eax, dword [ebp - 0x209c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbb10]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb10], xmm1
jmp 0x480bc4
mov ecx, 1
test ecx, ecx
je 0x480bc0
jmp 0x480c80
jmp 0x480be7
cvtsi2sd xmm0, dword [ebp - 0x209c]
movsd xmm1, qword [ebp - 0xbb10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x20a0], edx
jmp 0x480c8a
xor eax, eax
je 0x480bf1
jmp 0x480c00
jmp 0x480a4a
jmp 0x480a4a
mov ecx, 2
test ecx, ecx
je 0x480c80
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x20a4], eax
cvtsi2sd xmm0, dword [ebp - 0x20a4]
mov eax, dword [ebp - 0x20a4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbb10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x20a0], ecx
jmp 0x480c8a
mov dword [ebp - 0x20a0], 8
mov edx, dword [ebp - 0x2074]
add edx, 0xffffffc0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbb28], xmm0
xor eax, eax
je 0x480ca4
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x480ce0
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbb28]
movsd qword [ebp - 0xbb30], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x480e80
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x480e80
mov dword [ebp - 0x20a8], 0
jmp 0x480d5f
cmp dword [ebp - 0x20a8], 0xf
jae 0x480e7b
cvtsi2sd xmm0, dword [ebp - 0x20a8]
movsd xmm1, qword [ebp - 0xbb30]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbb38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x480dce
mov ecx, dword [ebp - 0x20a8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbb30]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb30], xmm1
jmp 0x480cca
cvtsi2sd xmm0, dword [ebp - 0x20a8]
movsd xmm1, qword [ebp - 0xbb30]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbb40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x480e2b
mov eax, dword [ebp - 0x20a8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbb30]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb30], xmm1
jmp 0x480e44
mov ecx, 1
test ecx, ecx
je 0x480e40
jmp 0x480f00
jmp 0x480e67
cvtsi2sd xmm0, dword [ebp - 0x20a8]
movsd xmm1, qword [ebp - 0xbb30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x20ac], edx
jmp 0x480f0a
xor eax, eax
je 0x480e71
jmp 0x480e80
jmp 0x480cca
jmp 0x480cca
mov ecx, 2
test ecx, ecx
je 0x480f00
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x20b0], eax
cvtsi2sd xmm0, dword [ebp - 0x20b0]
mov eax, dword [ebp - 0x20b0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbb30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x20ac], ecx
jmp 0x480f0a
mov dword [ebp - 0x20ac], 8
mov edx, dword [ebp - 0x2074]
shl edx, 2
add edx, dword [ebp - 0x2070]
mov eax, dword [ebp - 0x20a0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2074]
shl ecx, 2
add ecx, dword [ebp - 0x2070]
mov edx, dword [ebp - 0x20ac]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2074]
shl ecx, 2
add ecx, dword [ebp - 0x2070]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x481218
xor eax, eax
je 0x480f8a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x480fc6
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd8]
movsd qword [ebp - 0xbb48], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x481166
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x481166
mov dword [ebp - 0x20b4], 0
jmp 0x481045
cmp dword [ebp - 0x20b4], 0xf
jae 0x481161
cvtsi2sd xmm0, dword [ebp - 0x20b4]
movsd xmm1, qword [ebp - 0xbb48]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb50], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbb50]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4810b4
mov ecx, dword [ebp - 0x20b4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbb48]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb48], xmm1
jmp 0x480fb0
cvtsi2sd xmm0, dword [ebp - 0x20b4]
movsd xmm1, qword [ebp - 0xbb48]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb58], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbb58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x481111
mov eax, dword [ebp - 0x20b4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbb48]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb48], xmm1
jmp 0x48112a
mov ecx, 1
test ecx, ecx
je 0x481126
jmp 0x4811e6
jmp 0x48114d
cvtsi2sd xmm0, dword [ebp - 0x20b4]
movsd xmm1, qword [ebp - 0xbb48]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x20b8], edx
jmp 0x4811f0
xor eax, eax
je 0x481157
jmp 0x481166
jmp 0x480fb0
jmp 0x480fb0
mov ecx, 2
test ecx, ecx
je 0x4811e6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x20bc], eax
cvtsi2sd xmm0, dword [ebp - 0x20bc]
mov eax, dword [ebp - 0x20bc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbb48]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x20b8], ecx
jmp 0x4811f0
mov dword [ebp - 0x20b8], 8
mov edx, dword [ebp - 0x2074]
shl edx, 2
add edx, dword [ebp - 0x2070]
mov eax, dword [ebp - 0x20b8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2074]
shl ecx, 2
add ecx, dword [ebp - 0x2070]
mov dword [ecx], eax
jmp 0x480148
mov edx, dword [ebp - 0x206c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x206c]
mov dword [ebp - 0x20c0], eax
mov ecx, dword [ebp - 0x20c0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x20c4], ecx
mov edx, dword [ebp - 0x20c4]
mov dword [ebp - 0x20c8], edx
mov eax, dword [ebp - 0x2068]
mov dword [ebp - 0x2008], eax
cmp dword [ebp - 0x2008], 0
je 0x4823ba
xor ecx, ecx
mov byte [ebp - 0x59], cl
lea ecx, [ebp - 0x59]
call fcn.004251d0
mov dword [ebp - 0x20cc], eax
mov edx, dword [ebp - 0x20cc]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x482381
mov ecx, dword [ebp - 0x20cc]
mov dword [ebp - 0x20d0], ecx
mov dword [ebp - 0x20d4], 0
jmp 0x4812bb
mov edx, dword [ebp - 0x20d4]
add edx, 1
mov dword [ebp - 0x20d4], edx
cmp dword [ebp - 0x20d4], 1
jae 0x482381
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x481593
xor eax, eax
je 0x481305
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x481341
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736de8]
movsd qword [ebp - 0xbb60], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4814e1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4814e1
mov dword [ebp - 0x20d8], 0
jmp 0x4813c0
cmp dword [ebp - 0x20d8], 0xf
jae 0x4814dc
cvtsi2sd xmm0, dword [ebp - 0x20d8]
movsd xmm1, qword [ebp - 0xbb60]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb68], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbb68]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48142f
mov ecx, dword [ebp - 0x20d8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbb60]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb60], xmm1
jmp 0x48132b
cvtsi2sd xmm0, dword [ebp - 0x20d8]
movsd xmm1, qword [ebp - 0xbb60]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb70], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbb70]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48148c
mov eax, dword [ebp - 0x20d8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbb60]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb60], xmm1
jmp 0x4814a5
mov ecx, 1
test ecx, ecx
je 0x4814a1
jmp 0x481561
jmp 0x4814c8
cvtsi2sd xmm0, dword [ebp - 0x20d8]
movsd xmm1, qword [ebp - 0xbb60]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x20dc], edx
jmp 0x48156b
xor eax, eax
je 0x4814d2
jmp 0x4814e1
jmp 0x48132b
jmp 0x48132b
mov ecx, 2
test ecx, ecx
je 0x481561
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x20e0], eax
cvtsi2sd xmm0, dword [ebp - 0x20e0]
mov eax, dword [ebp - 0x20e0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbb60]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x20dc], ecx
jmp 0x48156b
mov dword [ebp - 0x20dc], 8
mov edx, dword [ebp - 0x20d4]
shl edx, 2
add edx, dword [ebp - 0x20d0]
mov eax, dword [ebp - 0x20dc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x20d4]
shl ecx, 2
add ecx, dword [ebp - 0x20d0]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4820b1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4818a3
xor eax, eax
je 0x481615
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x481651
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de0]
movsd qword [ebp - 0xbb78], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4817f1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4817f1
mov dword [ebp - 0x20e4], 0
jmp 0x4816d0
cmp dword [ebp - 0x20e4], 0xf
jae 0x4817ec
cvtsi2sd xmm0, dword [ebp - 0x20e4]
movsd xmm1, qword [ebp - 0xbb78]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb80], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbb80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48173f
mov ecx, dword [ebp - 0x20e4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbb78]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb78], xmm1
jmp 0x48163b
cvtsi2sd xmm0, dword [ebp - 0x20e4]
movsd xmm1, qword [ebp - 0xbb78]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb88], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbb88]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48179c
mov eax, dword [ebp - 0x20e4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbb78]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb78], xmm1
jmp 0x4817b5
mov ecx, 1
test ecx, ecx
je 0x4817b1
jmp 0x481871
jmp 0x4817d8
cvtsi2sd xmm0, dword [ebp - 0x20e4]
movsd xmm1, qword [ebp - 0xbb78]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x20e8], edx
jmp 0x48187b
xor eax, eax
je 0x4817e2
jmp 0x4817f1
jmp 0x48163b
jmp 0x48163b
mov ecx, 2
test ecx, ecx
je 0x481871
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x20ec], eax
cvtsi2sd xmm0, dword [ebp - 0x20ec]
mov eax, dword [ebp - 0x20ec]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbb78]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x20e8], ecx
jmp 0x48187b
mov dword [ebp - 0x20e8], 8
mov edx, dword [ebp - 0x20d4]
shl edx, 2
add edx, dword [ebp - 0x20d0]
mov eax, dword [ebp - 0x20e8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x20d4]
shl ecx, 2
add ecx, dword [ebp - 0x20d0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x481b6e
xor eax, eax
je 0x4818e0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48191c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd8]
movsd qword [ebp - 0xbb90], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x481abc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x481abc
mov dword [ebp - 0x20f0], 0
jmp 0x48199b
cmp dword [ebp - 0x20f0], 0xf
jae 0x481ab7
cvtsi2sd xmm0, dword [ebp - 0x20f0]
movsd xmm1, qword [ebp - 0xbb90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbb98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x481a0a
mov ecx, dword [ebp - 0x20f0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbb90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb90], xmm1
jmp 0x481906
cvtsi2sd xmm0, dword [ebp - 0x20f0]
movsd xmm1, qword [ebp - 0xbb90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbba0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbba0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x481a67
mov eax, dword [ebp - 0x20f0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbb90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbb90], xmm1
jmp 0x481a80
mov ecx, 1
test ecx, ecx
je 0x481a7c
jmp 0x481b3c
jmp 0x481aa3
cvtsi2sd xmm0, dword [ebp - 0x20f0]
movsd xmm1, qword [ebp - 0xbb90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x20f4], edx
jmp 0x481b46
xor eax, eax
je 0x481aad
jmp 0x481abc
jmp 0x481906
jmp 0x481906
mov ecx, 2
test ecx, ecx
je 0x481b3c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x20f8], eax
cvtsi2sd xmm0, dword [ebp - 0x20f8]
mov eax, dword [ebp - 0x20f8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbb90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x20f4], ecx
jmp 0x481b46
mov dword [ebp - 0x20f4], 8
mov edx, dword [ebp - 0x20d4]
shl edx, 2
add edx, dword [ebp - 0x20d0]
mov eax, dword [ebp - 0x20f4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x20d4]
shl ecx, 2
add ecx, dword [ebp - 0x20d0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x20d4]
add edx, 0xffffffc1
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbba8], xmm0
xor eax, eax
je 0x481b88
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x481bc4
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbba8]
movsd qword [ebp - 0xbbb0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x481d64
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x481d64
mov dword [ebp - 0x20fc], 0
jmp 0x481c43
cmp dword [ebp - 0x20fc], 0xf
jae 0x481d5f
cvtsi2sd xmm0, dword [ebp - 0x20fc]
movsd xmm1, qword [ebp - 0xbbb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbbb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbbb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x481cb2
mov ecx, dword [ebp - 0x20fc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbbb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbbb0], xmm1
jmp 0x481bae
cvtsi2sd xmm0, dword [ebp - 0x20fc]
movsd xmm1, qword [ebp - 0xbbb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbbc0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbbc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x481d0f
mov eax, dword [ebp - 0x20fc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbbb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbbb0], xmm1
jmp 0x481d28
mov ecx, 1
test ecx, ecx
je 0x481d24
jmp 0x481de4
jmp 0x481d4b
cvtsi2sd xmm0, dword [ebp - 0x20fc]
movsd xmm1, qword [ebp - 0xbbb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2100], edx
jmp 0x481dee
xor eax, eax
je 0x481d55
jmp 0x481d64
jmp 0x481bae
jmp 0x481bae
mov ecx, 2
test ecx, ecx
je 0x481de4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2104], eax
cvtsi2sd xmm0, dword [ebp - 0x2104]
mov eax, dword [ebp - 0x2104]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbbb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2100], ecx
jmp 0x481dee
mov dword [ebp - 0x2100], 8
mov edx, dword [ebp - 0x20d4]
add edx, 0xffffffc1
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbbc8], xmm0
xor eax, eax
je 0x481e08
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x481e44
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbbc8]
movsd qword [ebp - 0xbbd0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x481fe4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x481fe4
mov dword [ebp - 0x2108], 0
jmp 0x481ec3
cmp dword [ebp - 0x2108], 0xf
jae 0x481fdf
cvtsi2sd xmm0, dword [ebp - 0x2108]
movsd xmm1, qword [ebp - 0xbbd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbbd8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbbd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x481f32
mov ecx, dword [ebp - 0x2108]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbbd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbbd0], xmm1
jmp 0x481e2e
cvtsi2sd xmm0, dword [ebp - 0x2108]
movsd xmm1, qword [ebp - 0xbbd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbbe0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbbe0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x481f8f
mov eax, dword [ebp - 0x2108]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbbd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbbd0], xmm1
jmp 0x481fa8
mov ecx, 1
test ecx, ecx
je 0x481fa4
jmp 0x482064
jmp 0x481fcb
cvtsi2sd xmm0, dword [ebp - 0x2108]
movsd xmm1, qword [ebp - 0xbbd0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x210c], edx
jmp 0x48206e
xor eax, eax
je 0x481fd5
jmp 0x481fe4
jmp 0x481e2e
jmp 0x481e2e
mov ecx, 2
test ecx, ecx
je 0x482064
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2110], eax
cvtsi2sd xmm0, dword [ebp - 0x2110]
mov eax, dword [ebp - 0x2110]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbbd0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x210c], ecx
jmp 0x48206e
mov dword [ebp - 0x210c], 8
mov edx, dword [ebp - 0x20d4]
shl edx, 2
add edx, dword [ebp - 0x20d0]
mov eax, dword [ebp - 0x2100]
add eax, dword [edx]
mov ecx, dword [ebp - 0x20d4]
shl ecx, 2
add ecx, dword [ebp - 0x20d0]
mov edx, dword [ebp - 0x210c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x20d4]
shl ecx, 2
add ecx, dword [ebp - 0x20d0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48237c
xor eax, eax
je 0x4820ee
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48212a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd0]
movsd qword [ebp - 0xbbe8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4822ca
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4822ca
mov dword [ebp - 0x2114], 0
jmp 0x4821a9
cmp dword [ebp - 0x2114], 0xf
jae 0x4822c5
cvtsi2sd xmm0, dword [ebp - 0x2114]
movsd xmm1, qword [ebp - 0xbbe8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbbf0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbbf0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x482218
mov ecx, dword [ebp - 0x2114]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbbe8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbbe8], xmm1
jmp 0x482114
cvtsi2sd xmm0, dword [ebp - 0x2114]
movsd xmm1, qword [ebp - 0xbbe8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbbf8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbbf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x482275
mov eax, dword [ebp - 0x2114]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbbe8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbbe8], xmm1
jmp 0x48228e
mov ecx, 1
test ecx, ecx
je 0x48228a
jmp 0x48234a
jmp 0x4822b1
cvtsi2sd xmm0, dword [ebp - 0x2114]
movsd xmm1, qword [ebp - 0xbbe8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2118], edx
jmp 0x482354
xor eax, eax
je 0x4822bb
jmp 0x4822ca
jmp 0x482114
jmp 0x482114
mov ecx, 2
test ecx, ecx
je 0x48234a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x211c], eax
cvtsi2sd xmm0, dword [ebp - 0x211c]
mov eax, dword [ebp - 0x211c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbbe8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2118], ecx
jmp 0x482354
mov dword [ebp - 0x2118], 8
mov edx, dword [ebp - 0x20d4]
shl edx, 2
add edx, dword [ebp - 0x20d0]
mov eax, dword [ebp - 0x2118]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x20d4]
shl ecx, 2
add ecx, dword [ebp - 0x20d0]
mov dword [ecx], eax
jmp 0x4812ac
mov edx, dword [ebp - 0x20cc]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x20cc]
mov dword [ebp - 0x2120], eax
mov ecx, dword [ebp - 0x2120]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2124], ecx
mov edx, dword [ebp - 0x2124]
mov dword [ebp - 0x20c8], edx
mov eax, dword [ebp - 0x16620]
mov dword [ebp - 0x2128], eax
push 0x173
push 0xe8d11b2d
push 0xf
push 0
call fcn.005d0d50
add esp, 0x10
mov dword [ebp - 0x212c], eax
lea ecx, [ebp - 0x2130]
push ecx
mov edx, dword [ebp - 0x2128]
push edx
call dword [ebp - 0x212c]
nop
xor eax, eax
mov byte [ebp - 0x5a], al
lea ecx, [ebp - 0x5a]
call fcn.004251a0
mov dword [ebp - 0x2134], eax
mov ecx, dword [ebp - 0x2134]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x483509
mov eax, dword [ebp - 0x2134]
mov dword [ebp - 0x2138], eax
mov dword [ebp - 0x213c], 0
jmp 0x482443
mov ecx, dword [ebp - 0x213c]
add ecx, 1
mov dword [ebp - 0x213c], ecx
cmp dword [ebp - 0x213c], 1
jae 0x483509
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48271b
xor eax, eax
je 0x48248d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4824c9
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de8]
movsd qword [ebp - 0xbc00], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x482669
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x482669
mov dword [ebp - 0x2140], 0
jmp 0x482548
cmp dword [ebp - 0x2140], 0xf
jae 0x482664
cvtsi2sd xmm0, dword [ebp - 0x2140]
movsd xmm1, qword [ebp - 0xbc00]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc08], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbc08]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4825b7
mov ecx, dword [ebp - 0x2140]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbc00]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc00], xmm1
jmp 0x4824b3
cvtsi2sd xmm0, dword [ebp - 0x2140]
movsd xmm1, qword [ebp - 0xbc00]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc10], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbc10]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x482614
mov eax, dword [ebp - 0x2140]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbc00]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc00], xmm1
jmp 0x48262d
mov ecx, 1
test ecx, ecx
je 0x482629
jmp 0x4826e9
jmp 0x482650
cvtsi2sd xmm0, dword [ebp - 0x2140]
movsd xmm1, qword [ebp - 0xbc00]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2144], edx
jmp 0x4826f3
xor eax, eax
je 0x48265a
jmp 0x482669
jmp 0x4824b3
jmp 0x4824b3
mov ecx, 2
test ecx, ecx
je 0x4826e9
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2148], eax
cvtsi2sd xmm0, dword [ebp - 0x2148]
mov eax, dword [ebp - 0x2148]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbc00]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2144], ecx
jmp 0x4826f3
mov dword [ebp - 0x2144], 8
mov edx, dword [ebp - 0x213c]
shl edx, 2
add edx, dword [ebp - 0x2138]
mov eax, dword [ebp - 0x2144]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x213c]
shl ecx, 2
add ecx, dword [ebp - 0x2138]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x483239
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x482a2b
xor eax, eax
je 0x48279d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4827d9
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de0]
movsd qword [ebp - 0xbc18], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x482979
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x482979
mov dword [ebp - 0x214c], 0
jmp 0x482858
cmp dword [ebp - 0x214c], 0xf
jae 0x482974
cvtsi2sd xmm0, dword [ebp - 0x214c]
movsd xmm1, qword [ebp - 0xbc18]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc20], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbc20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4828c7
mov ecx, dword [ebp - 0x214c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbc18]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc18], xmm1
jmp 0x4827c3
cvtsi2sd xmm0, dword [ebp - 0x214c]
movsd xmm1, qword [ebp - 0xbc18]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc28], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbc28]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x482924
mov eax, dword [ebp - 0x214c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbc18]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc18], xmm1
jmp 0x48293d
mov ecx, 1
test ecx, ecx
je 0x482939
jmp 0x4829f9
jmp 0x482960
cvtsi2sd xmm0, dword [ebp - 0x214c]
movsd xmm1, qword [ebp - 0xbc18]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2150], edx
jmp 0x482a03
xor eax, eax
je 0x48296a
jmp 0x482979
jmp 0x4827c3
jmp 0x4827c3
mov ecx, 2
test ecx, ecx
je 0x4829f9
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2154], eax
cvtsi2sd xmm0, dword [ebp - 0x2154]
mov eax, dword [ebp - 0x2154]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbc18]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2150], ecx
jmp 0x482a03
mov dword [ebp - 0x2150], 8
mov edx, dword [ebp - 0x213c]
shl edx, 2
add edx, dword [ebp - 0x2138]
mov eax, dword [ebp - 0x2150]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x213c]
shl ecx, 2
add ecx, dword [ebp - 0x2138]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x482cf6
xor eax, eax
je 0x482a68
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x482aa4
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd8]
movsd qword [ebp - 0xbc30], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x482c44
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x482c44
mov dword [ebp - 0x2158], 0
jmp 0x482b23
cmp dword [ebp - 0x2158], 0xf
jae 0x482c3f
cvtsi2sd xmm0, dword [ebp - 0x2158]
movsd xmm1, qword [ebp - 0xbc30]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbc38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x482b92
mov ecx, dword [ebp - 0x2158]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbc30]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc30], xmm1
jmp 0x482a8e
cvtsi2sd xmm0, dword [ebp - 0x2158]
movsd xmm1, qword [ebp - 0xbc30]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbc40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x482bef
mov eax, dword [ebp - 0x2158]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbc30]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc30], xmm1
jmp 0x482c08
mov ecx, 1
test ecx, ecx
je 0x482c04
jmp 0x482cc4
jmp 0x482c2b
cvtsi2sd xmm0, dword [ebp - 0x2158]
movsd xmm1, qword [ebp - 0xbc30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x215c], edx
jmp 0x482cce
xor eax, eax
je 0x482c35
jmp 0x482c44
jmp 0x482a8e
jmp 0x482a8e
mov ecx, 2
test ecx, ecx
je 0x482cc4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2160], eax
cvtsi2sd xmm0, dword [ebp - 0x2160]
mov eax, dword [ebp - 0x2160]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbc30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x215c], ecx
jmp 0x482cce
mov dword [ebp - 0x215c], 8
mov edx, dword [ebp - 0x213c]
shl edx, 2
add edx, dword [ebp - 0x2138]
mov eax, dword [ebp - 0x215c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x213c]
shl ecx, 2
add ecx, dword [ebp - 0x2138]
mov dword [ecx], eax
mov edx, dword [ebp - 0x213c]
add edx, 0xffffffc1
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbc48], xmm0
xor eax, eax
je 0x482d10
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x482d4c
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbc48]
movsd qword [ebp - 0xbc50], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x482eec
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x482eec
mov dword [ebp - 0x2164], 0
jmp 0x482dcb
cmp dword [ebp - 0x2164], 0xf
jae 0x482ee7
cvtsi2sd xmm0, dword [ebp - 0x2164]
movsd xmm1, qword [ebp - 0xbc50]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbc58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x482e3a
mov ecx, dword [ebp - 0x2164]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbc50]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc50], xmm1
jmp 0x482d36
cvtsi2sd xmm0, dword [ebp - 0x2164]
movsd xmm1, qword [ebp - 0xbc50]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbc60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x482e97
mov eax, dword [ebp - 0x2164]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbc50]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc50], xmm1
jmp 0x482eb0
mov ecx, 1
test ecx, ecx
je 0x482eac
jmp 0x482f6c
jmp 0x482ed3
cvtsi2sd xmm0, dword [ebp - 0x2164]
movsd xmm1, qword [ebp - 0xbc50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2168], edx
jmp 0x482f76
xor eax, eax
je 0x482edd
jmp 0x482eec
jmp 0x482d36
jmp 0x482d36
mov ecx, 2
test ecx, ecx
je 0x482f6c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x216c], eax
cvtsi2sd xmm0, dword [ebp - 0x216c]
mov eax, dword [ebp - 0x216c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbc50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2168], ecx
jmp 0x482f76
mov dword [ebp - 0x2168], 8
mov edx, dword [ebp - 0x213c]
add edx, 0xffffffc1
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbc68], xmm0
xor eax, eax
je 0x482f90
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x482fcc
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbc68]
movsd qword [ebp - 0xbc70], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48316c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48316c
mov dword [ebp - 0x2170], 0
jmp 0x48304b
cmp dword [ebp - 0x2170], 0xf
jae 0x483167
cvtsi2sd xmm0, dword [ebp - 0x2170]
movsd xmm1, qword [ebp - 0xbc70]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbc78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4830ba
mov ecx, dword [ebp - 0x2170]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbc70]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc70], xmm1
jmp 0x482fb6
cvtsi2sd xmm0, dword [ebp - 0x2170]
movsd xmm1, qword [ebp - 0xbc70]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbc80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x483117
mov eax, dword [ebp - 0x2170]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbc70]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc70], xmm1
jmp 0x483130
mov ecx, 1
test ecx, ecx
je 0x48312c
jmp 0x4831ec
jmp 0x483153
cvtsi2sd xmm0, dword [ebp - 0x2170]
movsd xmm1, qword [ebp - 0xbc70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2174], edx
jmp 0x4831f6
xor eax, eax
je 0x48315d
jmp 0x48316c
jmp 0x482fb6
jmp 0x482fb6
mov ecx, 2
test ecx, ecx
je 0x4831ec
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2178], eax
cvtsi2sd xmm0, dword [ebp - 0x2178]
mov eax, dword [ebp - 0x2178]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbc70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2174], ecx
jmp 0x4831f6
mov dword [ebp - 0x2174], 8
mov edx, dword [ebp - 0x213c]
shl edx, 2
add edx, dword [ebp - 0x2138]
mov eax, dword [ebp - 0x2168]
add eax, dword [edx]
mov ecx, dword [ebp - 0x213c]
shl ecx, 2
add ecx, dword [ebp - 0x2138]
mov edx, dword [ebp - 0x2174]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x213c]
shl ecx, 2
add ecx, dword [ebp - 0x2138]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x483504
xor eax, eax
je 0x483276
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4832b2
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd0]
movsd qword [ebp - 0xbc88], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x483452
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x483452
mov dword [ebp - 0x217c], 0
jmp 0x483331
cmp dword [ebp - 0x217c], 0xf
jae 0x48344d
cvtsi2sd xmm0, dword [ebp - 0x217c]
movsd xmm1, qword [ebp - 0xbc88]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc90], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbc90]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4833a0
mov ecx, dword [ebp - 0x217c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbc88]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc88], xmm1
jmp 0x48329c
cvtsi2sd xmm0, dword [ebp - 0x217c]
movsd xmm1, qword [ebp - 0xbc88]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc98], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbc98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4833fd
mov eax, dword [ebp - 0x217c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbc88]
addsd xmm1, xmm0
movsd qword [ebp - 0xbc88], xmm1
jmp 0x483416
mov ecx, 1
test ecx, ecx
je 0x483412
jmp 0x4834d2
jmp 0x483439
cvtsi2sd xmm0, dword [ebp - 0x217c]
movsd xmm1, qword [ebp - 0xbc88]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2180], edx
jmp 0x4834dc
xor eax, eax
je 0x483443
jmp 0x483452
jmp 0x48329c
jmp 0x48329c
mov ecx, 2
test ecx, ecx
je 0x4834d2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2184], eax
cvtsi2sd xmm0, dword [ebp - 0x2184]
mov eax, dword [ebp - 0x2184]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbc88]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2180], ecx
jmp 0x4834dc
mov dword [ebp - 0x2180], 8
mov edx, dword [ebp - 0x213c]
shl edx, 2
add edx, dword [ebp - 0x2138]
mov eax, dword [ebp - 0x2180]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x213c]
shl ecx, 2
add ecx, dword [ebp - 0x2138]
mov dword [ecx], eax
jmp 0x482434
mov edx, dword [ebp - 0x2134]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2134]
mov dword [ebp - 0x2188], eax
mov ecx, dword [ebp - 0x2188]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x218c], ecx
mov edx, dword [ebp - 0x218c]
mov dword [ebp - 0x2190], edx
xor eax, eax
mov byte [ebp - 0x5b], al
lea ecx, [ebp - 0x5b]
call fcn.00425170
mov dword [ebp - 0x2194], eax
mov ecx, dword [ebp - 0x2194]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x484654
mov eax, dword [ebp - 0x2194]
mov dword [ebp - 0x2198], eax
mov dword [ebp - 0x219c], 0
jmp 0x48358e
mov ecx, dword [ebp - 0x219c]
add ecx, 1
mov dword [ebp - 0x219c], ecx
cmp dword [ebp - 0x219c], 1
jae 0x484654
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x483866
xor eax, eax
je 0x4835d8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x483614
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de0]
movsd qword [ebp - 0xbca0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4837b4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4837b4
mov dword [ebp - 0x21a0], 0
jmp 0x483693
cmp dword [ebp - 0x21a0], 0xf
jae 0x4837af
cvtsi2sd xmm0, dword [ebp - 0x21a0]
movsd xmm1, qword [ebp - 0xbca0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbca8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbca8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x483702
mov ecx, dword [ebp - 0x21a0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbca0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbca0], xmm1
jmp 0x4835fe
cvtsi2sd xmm0, dword [ebp - 0x21a0]
movsd xmm1, qword [ebp - 0xbca0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbcb0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbcb0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48375f
mov eax, dword [ebp - 0x21a0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbca0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbca0], xmm1
jmp 0x483778
mov ecx, 1
test ecx, ecx
je 0x483774
jmp 0x483834
jmp 0x48379b
cvtsi2sd xmm0, dword [ebp - 0x21a0]
movsd xmm1, qword [ebp - 0xbca0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x21a4], edx
jmp 0x48383e
xor eax, eax
je 0x4837a5
jmp 0x4837b4
jmp 0x4835fe
jmp 0x4835fe
mov ecx, 2
test ecx, ecx
je 0x483834
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x21a8], eax
cvtsi2sd xmm0, dword [ebp - 0x21a8]
mov eax, dword [ebp - 0x21a8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbca0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x21a4], ecx
jmp 0x48383e
mov dword [ebp - 0x21a4], 8
mov edx, dword [ebp - 0x219c]
shl edx, 2
add edx, dword [ebp - 0x2198]
mov eax, dword [ebp - 0x21a4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x219c]
shl ecx, 2
add ecx, dword [ebp - 0x2198]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x484384
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x483b76
xor eax, eax
je 0x4838e8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x483924
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd8]
movsd qword [ebp - 0xbcb8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x483ac4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x483ac4
mov dword [ebp - 0x21ac], 0
jmp 0x4839a3
cmp dword [ebp - 0x21ac], 0xf
jae 0x483abf
cvtsi2sd xmm0, dword [ebp - 0x21ac]
movsd xmm1, qword [ebp - 0xbcb8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbcc0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbcc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x483a12
mov ecx, dword [ebp - 0x21ac]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbcb8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbcb8], xmm1
jmp 0x48390e
cvtsi2sd xmm0, dword [ebp - 0x21ac]
movsd xmm1, qword [ebp - 0xbcb8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbcc8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbcc8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x483a6f
mov eax, dword [ebp - 0x21ac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbcb8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbcb8], xmm1
jmp 0x483a88
mov ecx, 1
test ecx, ecx
je 0x483a84
jmp 0x483b44
jmp 0x483aab
cvtsi2sd xmm0, dword [ebp - 0x21ac]
movsd xmm1, qword [ebp - 0xbcb8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x21b0], edx
jmp 0x483b4e
xor eax, eax
je 0x483ab5
jmp 0x483ac4
jmp 0x48390e
jmp 0x48390e
mov ecx, 2
test ecx, ecx
je 0x483b44
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x21b4], eax
cvtsi2sd xmm0, dword [ebp - 0x21b4]
mov eax, dword [ebp - 0x21b4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbcb8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x21b0], ecx
jmp 0x483b4e
mov dword [ebp - 0x21b0], 8
mov edx, dword [ebp - 0x219c]
shl edx, 2
add edx, dword [ebp - 0x2198]
mov eax, dword [ebp - 0x21b0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x219c]
shl ecx, 2
add ecx, dword [ebp - 0x2198]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x483e41
xor eax, eax
je 0x483bb3
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x483bef
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd0]
movsd qword [ebp - 0xbcd0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x483d8f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x483d8f
mov dword [ebp - 0x21b8], 0
jmp 0x483c6e
cmp dword [ebp - 0x21b8], 0xf
jae 0x483d8a
cvtsi2sd xmm0, dword [ebp - 0x21b8]
movsd xmm1, qword [ebp - 0xbcd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbcd8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbcd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x483cdd
mov ecx, dword [ebp - 0x21b8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbcd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbcd0], xmm1
jmp 0x483bd9
cvtsi2sd xmm0, dword [ebp - 0x21b8]
movsd xmm1, qword [ebp - 0xbcd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbce0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbce0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x483d3a
mov eax, dword [ebp - 0x21b8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbcd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbcd0], xmm1
jmp 0x483d53
mov ecx, 1
test ecx, ecx
je 0x483d4f
jmp 0x483e0f
jmp 0x483d76
cvtsi2sd xmm0, dword [ebp - 0x21b8]
movsd xmm1, qword [ebp - 0xbcd0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x21bc], edx
jmp 0x483e19
xor eax, eax
je 0x483d80
jmp 0x483d8f
jmp 0x483bd9
jmp 0x483bd9
mov ecx, 2
test ecx, ecx
je 0x483e0f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x21c0], eax
cvtsi2sd xmm0, dword [ebp - 0x21c0]
mov eax, dword [ebp - 0x21c0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbcd0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x21bc], ecx
jmp 0x483e19
mov dword [ebp - 0x21bc], 8
mov edx, dword [ebp - 0x219c]
shl edx, 2
add edx, dword [ebp - 0x2198]
mov eax, dword [ebp - 0x21bc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x219c]
shl ecx, 2
add ecx, dword [ebp - 0x2198]
mov dword [ecx], eax
mov edx, dword [ebp - 0x219c]
add edx, 0xffffffc2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbce8], xmm0
xor eax, eax
je 0x483e5b
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x483e97
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbce8]
movsd qword [ebp - 0xbcf0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x484037
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x484037
mov dword [ebp - 0x21c4], 0
jmp 0x483f16
cmp dword [ebp - 0x21c4], 0xf
jae 0x484032
cvtsi2sd xmm0, dword [ebp - 0x21c4]
movsd xmm1, qword [ebp - 0xbcf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbcf8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbcf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x483f85
mov ecx, dword [ebp - 0x21c4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbcf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbcf0], xmm1
jmp 0x483e81
cvtsi2sd xmm0, dword [ebp - 0x21c4]
movsd xmm1, qword [ebp - 0xbcf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbd00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x483fe2
mov eax, dword [ebp - 0x21c4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbcf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbcf0], xmm1
jmp 0x483ffb
mov ecx, 1
test ecx, ecx
je 0x483ff7
jmp 0x4840b7
jmp 0x48401e
cvtsi2sd xmm0, dword [ebp - 0x21c4]
movsd xmm1, qword [ebp - 0xbcf0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x21c8], edx
jmp 0x4840c1
xor eax, eax
je 0x484028
jmp 0x484037
jmp 0x483e81
jmp 0x483e81
mov ecx, 2
test ecx, ecx
je 0x4840b7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x21cc], eax
cvtsi2sd xmm0, dword [ebp - 0x21cc]
mov eax, dword [ebp - 0x21cc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbcf0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x21c8], ecx
jmp 0x4840c1
mov dword [ebp - 0x21c8], 8
mov edx, dword [ebp - 0x219c]
add edx, 0xffffffc2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbd08], xmm0
xor eax, eax
je 0x4840db
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x484117
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbd08]
movsd qword [ebp - 0xbd10], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4842b7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4842b7
mov dword [ebp - 0x21d0], 0
jmp 0x484196
cmp dword [ebp - 0x21d0], 0xf
jae 0x4842b2
cvtsi2sd xmm0, dword [ebp - 0x21d0]
movsd xmm1, qword [ebp - 0xbd10]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbd18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x484205
mov ecx, dword [ebp - 0x21d0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbd10]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd10], xmm1
jmp 0x484101
cvtsi2sd xmm0, dword [ebp - 0x21d0]
movsd xmm1, qword [ebp - 0xbd10]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbd20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x484262
mov eax, dword [ebp - 0x21d0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbd10]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd10], xmm1
jmp 0x48427b
mov ecx, 1
test ecx, ecx
je 0x484277
jmp 0x484337
jmp 0x48429e
cvtsi2sd xmm0, dword [ebp - 0x21d0]
movsd xmm1, qword [ebp - 0xbd10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x21d4], edx
jmp 0x484341
xor eax, eax
je 0x4842a8
jmp 0x4842b7
jmp 0x484101
jmp 0x484101
mov ecx, 2
test ecx, ecx
je 0x484337
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x21d8], eax
cvtsi2sd xmm0, dword [ebp - 0x21d8]
mov eax, dword [ebp - 0x21d8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbd10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x21d4], ecx
jmp 0x484341
mov dword [ebp - 0x21d4], 8
mov edx, dword [ebp - 0x219c]
shl edx, 2
add edx, dword [ebp - 0x2198]
mov eax, dword [ebp - 0x21c8]
add eax, dword [edx]
mov ecx, dword [ebp - 0x219c]
shl ecx, 2
add ecx, dword [ebp - 0x2198]
mov edx, dword [ebp - 0x21d4]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x219c]
shl ecx, 2
add ecx, dword [ebp - 0x2198]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48464f
xor eax, eax
je 0x4843c1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4843fd
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc8]
movsd qword [ebp - 0xbd28], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48459d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48459d
mov dword [ebp - 0x21dc], 0
jmp 0x48447c
cmp dword [ebp - 0x21dc], 0xf
jae 0x484598
cvtsi2sd xmm0, dword [ebp - 0x21dc]
movsd xmm1, qword [ebp - 0xbd28]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd30], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbd30]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4844eb
mov ecx, dword [ebp - 0x21dc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbd28]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd28], xmm1
jmp 0x4843e7
cvtsi2sd xmm0, dword [ebp - 0x21dc]
movsd xmm1, qword [ebp - 0xbd28]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd38], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbd38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x484548
mov eax, dword [ebp - 0x21dc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbd28]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd28], xmm1
jmp 0x484561
mov ecx, 1
test ecx, ecx
je 0x48455d
jmp 0x48461d
jmp 0x484584
cvtsi2sd xmm0, dword [ebp - 0x21dc]
movsd xmm1, qword [ebp - 0xbd28]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x21e0], edx
jmp 0x484627
xor eax, eax
je 0x48458e
jmp 0x48459d
jmp 0x4843e7
jmp 0x4843e7
mov ecx, 2
test ecx, ecx
je 0x48461d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x21e4], eax
cvtsi2sd xmm0, dword [ebp - 0x21e4]
mov eax, dword [ebp - 0x21e4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbd28]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x21e0], ecx
jmp 0x484627
mov dword [ebp - 0x21e0], 8
mov edx, dword [ebp - 0x219c]
shl edx, 2
add edx, dword [ebp - 0x2198]
mov eax, dword [ebp - 0x21e0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x219c]
shl ecx, 2
add ecx, dword [ebp - 0x2198]
mov dword [ecx], eax
jmp 0x48357f
mov edx, dword [ebp - 0x2194]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2194]
mov dword [ebp - 0x21e8], eax
mov ecx, dword [ebp - 0x21e8]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x21ec], ecx
mov edx, dword [ebp - 0x21ec]
mov dword [ebp - 0x21f0], edx
xor eax, eax
mov byte [ebp - 0x5c], al
lea ecx, [ebp - 0x5c]
call fcn.00425140
mov dword [ebp - 0x21f4], eax
mov ecx, dword [ebp - 0x21f4]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x48579f
mov eax, dword [ebp - 0x21f4]
mov dword [ebp - 0x21f8], eax
mov dword [ebp - 0x21fc], 0
jmp 0x4846d9
mov ecx, dword [ebp - 0x21fc]
add ecx, 1
mov dword [ebp - 0x21fc], ecx
cmp dword [ebp - 0x21fc], 1
jae 0x48579f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4849b1
xor eax, eax
je 0x484723
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48475f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736de0]
movsd qword [ebp - 0xbd40], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4848ff
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4848ff
mov dword [ebp - 0x2200], 0
jmp 0x4847de
cmp dword [ebp - 0x2200], 0xf
jae 0x4848fa
cvtsi2sd xmm0, dword [ebp - 0x2200]
movsd xmm1, qword [ebp - 0xbd40]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd48], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbd48]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48484d
mov ecx, dword [ebp - 0x2200]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbd40]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd40], xmm1
jmp 0x484749
cvtsi2sd xmm0, dword [ebp - 0x2200]
movsd xmm1, qword [ebp - 0xbd40]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd50], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbd50]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4848aa
mov eax, dword [ebp - 0x2200]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbd40]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd40], xmm1
jmp 0x4848c3
mov ecx, 1
test ecx, ecx
je 0x4848bf
jmp 0x48497f
jmp 0x4848e6
cvtsi2sd xmm0, dword [ebp - 0x2200]
movsd xmm1, qword [ebp - 0xbd40]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2204], edx
jmp 0x484989
xor eax, eax
je 0x4848f0
jmp 0x4848ff
jmp 0x484749
jmp 0x484749
mov ecx, 2
test ecx, ecx
je 0x48497f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2208], eax
cvtsi2sd xmm0, dword [ebp - 0x2208]
mov eax, dword [ebp - 0x2208]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbd40]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2204], ecx
jmp 0x484989
mov dword [ebp - 0x2204], 8
mov edx, dword [ebp - 0x21fc]
shl edx, 2
add edx, dword [ebp - 0x21f8]
mov eax, dword [ebp - 0x2204]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x21fc]
shl ecx, 2
add ecx, dword [ebp - 0x21f8]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4854cf
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x484cc1
xor eax, eax
je 0x484a33
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x484a6f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd8]
movsd qword [ebp - 0xbd58], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x484c0f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x484c0f
mov dword [ebp - 0x220c], 0
jmp 0x484aee
cmp dword [ebp - 0x220c], 0xf
jae 0x484c0a
cvtsi2sd xmm0, dword [ebp - 0x220c]
movsd xmm1, qword [ebp - 0xbd58]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd60], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbd60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x484b5d
mov ecx, dword [ebp - 0x220c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbd58]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd58], xmm1
jmp 0x484a59
cvtsi2sd xmm0, dword [ebp - 0x220c]
movsd xmm1, qword [ebp - 0xbd58]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd68], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbd68]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x484bba
mov eax, dword [ebp - 0x220c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbd58]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd58], xmm1
jmp 0x484bd3
mov ecx, 1
test ecx, ecx
je 0x484bcf
jmp 0x484c8f
jmp 0x484bf6
cvtsi2sd xmm0, dword [ebp - 0x220c]
movsd xmm1, qword [ebp - 0xbd58]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2210], edx
jmp 0x484c99
xor eax, eax
je 0x484c00
jmp 0x484c0f
jmp 0x484a59
jmp 0x484a59
mov ecx, 2
test ecx, ecx
je 0x484c8f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2214], eax
cvtsi2sd xmm0, dword [ebp - 0x2214]
mov eax, dword [ebp - 0x2214]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbd58]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2210], ecx
jmp 0x484c99
mov dword [ebp - 0x2210], 8
mov edx, dword [ebp - 0x21fc]
shl edx, 2
add edx, dword [ebp - 0x21f8]
mov eax, dword [ebp - 0x2210]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x21fc]
shl ecx, 2
add ecx, dword [ebp - 0x21f8]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x484f8c
xor eax, eax
je 0x484cfe
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x484d3a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd0]
movsd qword [ebp - 0xbd70], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x484eda
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x484eda
mov dword [ebp - 0x2218], 0
jmp 0x484db9
cmp dword [ebp - 0x2218], 0xf
jae 0x484ed5
cvtsi2sd xmm0, dword [ebp - 0x2218]
movsd xmm1, qword [ebp - 0xbd70]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbd78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x484e28
mov ecx, dword [ebp - 0x2218]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbd70]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd70], xmm1
jmp 0x484d24
cvtsi2sd xmm0, dword [ebp - 0x2218]
movsd xmm1, qword [ebp - 0xbd70]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbd80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x484e85
mov eax, dword [ebp - 0x2218]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbd70]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd70], xmm1
jmp 0x484e9e
mov ecx, 1
test ecx, ecx
je 0x484e9a
jmp 0x484f5a
jmp 0x484ec1
cvtsi2sd xmm0, dword [ebp - 0x2218]
movsd xmm1, qword [ebp - 0xbd70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x221c], edx
jmp 0x484f64
xor eax, eax
je 0x484ecb
jmp 0x484eda
jmp 0x484d24
jmp 0x484d24
mov ecx, 2
test ecx, ecx
je 0x484f5a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2220], eax
cvtsi2sd xmm0, dword [ebp - 0x2220]
mov eax, dword [ebp - 0x2220]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbd70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x221c], ecx
jmp 0x484f64
mov dword [ebp - 0x221c], 8
mov edx, dword [ebp - 0x21fc]
shl edx, 2
add edx, dword [ebp - 0x21f8]
mov eax, dword [ebp - 0x221c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x21fc]
shl ecx, 2
add ecx, dword [ebp - 0x21f8]
mov dword [ecx], eax
mov edx, dword [ebp - 0x21fc]
add edx, 0xffffffc2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbd88], xmm0
xor eax, eax
je 0x484fa6
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x484fe2
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbd88]
movsd qword [ebp - 0xbd90], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x485182
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x485182
mov dword [ebp - 0x2224], 0
jmp 0x485061
cmp dword [ebp - 0x2224], 0xf
jae 0x48517d
cvtsi2sd xmm0, dword [ebp - 0x2224]
movsd xmm1, qword [ebp - 0xbd90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbd98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4850d0
mov ecx, dword [ebp - 0x2224]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbd90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd90], xmm1
jmp 0x484fcc
cvtsi2sd xmm0, dword [ebp - 0x2224]
movsd xmm1, qword [ebp - 0xbd90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbda0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbda0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48512d
mov eax, dword [ebp - 0x2224]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbd90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbd90], xmm1
jmp 0x485146
mov ecx, 1
test ecx, ecx
je 0x485142
jmp 0x485202
jmp 0x485169
cvtsi2sd xmm0, dword [ebp - 0x2224]
movsd xmm1, qword [ebp - 0xbd90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2228], edx
jmp 0x48520c
xor eax, eax
je 0x485173
jmp 0x485182
jmp 0x484fcc
jmp 0x484fcc
mov ecx, 2
test ecx, ecx
je 0x485202
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x222c], eax
cvtsi2sd xmm0, dword [ebp - 0x222c]
mov eax, dword [ebp - 0x222c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbd90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2228], ecx
jmp 0x48520c
mov dword [ebp - 0x2228], 8
mov edx, dword [ebp - 0x21fc]
add edx, 0xffffffc2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbda8], xmm0
xor eax, eax
je 0x485226
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x485262
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbda8]
movsd qword [ebp - 0xbdb0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x485402
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x485402
mov dword [ebp - 0x2230], 0
jmp 0x4852e1
cmp dword [ebp - 0x2230], 0xf
jae 0x4853fd
cvtsi2sd xmm0, dword [ebp - 0x2230]
movsd xmm1, qword [ebp - 0xbdb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbdb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbdb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x485350
mov ecx, dword [ebp - 0x2230]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbdb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbdb0], xmm1
jmp 0x48524c
cvtsi2sd xmm0, dword [ebp - 0x2230]
movsd xmm1, qword [ebp - 0xbdb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbdc0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbdc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4853ad
mov eax, dword [ebp - 0x2230]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbdb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbdb0], xmm1
jmp 0x4853c6
mov ecx, 1
test ecx, ecx
je 0x4853c2
jmp 0x485482
jmp 0x4853e9
cvtsi2sd xmm0, dword [ebp - 0x2230]
movsd xmm1, qword [ebp - 0xbdb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2234], edx
jmp 0x48548c
xor eax, eax
je 0x4853f3
jmp 0x485402
jmp 0x48524c
jmp 0x48524c
mov ecx, 2
test ecx, ecx
je 0x485482
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2238], eax
cvtsi2sd xmm0, dword [ebp - 0x2238]
mov eax, dword [ebp - 0x2238]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbdb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2234], ecx
jmp 0x48548c
mov dword [ebp - 0x2234], 8
mov edx, dword [ebp - 0x21fc]
shl edx, 2
add edx, dword [ebp - 0x21f8]
mov eax, dword [ebp - 0x2228]
add eax, dword [edx]
mov ecx, dword [ebp - 0x21fc]
shl ecx, 2
add ecx, dword [ebp - 0x21f8]
mov edx, dword [ebp - 0x2234]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x21fc]
shl ecx, 2
add ecx, dword [ebp - 0x21f8]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48579a
xor eax, eax
je 0x48550c
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x485548
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc8]
movsd qword [ebp - 0xbdc8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4856e8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4856e8
mov dword [ebp - 0x223c], 0
jmp 0x4855c7
cmp dword [ebp - 0x223c], 0xf
jae 0x4856e3
cvtsi2sd xmm0, dword [ebp - 0x223c]
movsd xmm1, qword [ebp - 0xbdc8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbdd0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbdd0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x485636
mov ecx, dword [ebp - 0x223c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbdc8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbdc8], xmm1
jmp 0x485532
cvtsi2sd xmm0, dword [ebp - 0x223c]
movsd xmm1, qword [ebp - 0xbdc8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbdd8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbdd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x485693
mov eax, dword [ebp - 0x223c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbdc8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbdc8], xmm1
jmp 0x4856ac
mov ecx, 1
test ecx, ecx
je 0x4856a8
jmp 0x485768
jmp 0x4856cf
cvtsi2sd xmm0, dword [ebp - 0x223c]
movsd xmm1, qword [ebp - 0xbdc8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2240], edx
jmp 0x485772
xor eax, eax
je 0x4856d9
jmp 0x4856e8
jmp 0x485532
jmp 0x485532
mov ecx, 2
test ecx, ecx
je 0x485768
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2244], eax
cvtsi2sd xmm0, dword [ebp - 0x2244]
mov eax, dword [ebp - 0x2244]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbdc8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2240], ecx
jmp 0x485772
mov dword [ebp - 0x2240], 8
mov edx, dword [ebp - 0x21fc]
shl edx, 2
add edx, dword [ebp - 0x21f8]
mov eax, dword [ebp - 0x2240]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x21fc]
shl ecx, 2
add ecx, dword [ebp - 0x21f8]
mov dword [ecx], eax
jmp 0x4846ca
mov edx, dword [ebp - 0x21f4]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x21f4]
mov dword [ebp - 0x2248], eax
mov ecx, dword [ebp - 0x2248]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x224c], ecx
mov edx, dword [ebp - 0x224c]
mov dword [ebp - 0x2250], edx
mov eax, dword [ebp - 0x21f0]
mov dword [ebp - 0x2190], eax
cmp dword [ebp - 0x2190], 0
je 0x48693c
xor ecx, ecx
mov byte [ebp - 0x5d], cl
lea ecx, [ebp - 0x5d]
call fcn.00425110
mov dword [ebp - 0x2254], eax
mov edx, dword [ebp - 0x2254]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x486903
mov ecx, dword [ebp - 0x2254]
mov dword [ebp - 0x2258], ecx
mov dword [ebp - 0x225c], 0
jmp 0x48583d
mov edx, dword [ebp - 0x225c]
add edx, 1
mov dword [ebp - 0x225c], edx
cmp dword [ebp - 0x225c], 1
jae 0x486903
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x485b15
xor eax, eax
je 0x485887
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x4858c3
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736de0]
movsd qword [ebp - 0xbde0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x485a63
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x485a63
mov dword [ebp - 0x2260], 0
jmp 0x485942
cmp dword [ebp - 0x2260], 0xf
jae 0x485a5e
cvtsi2sd xmm0, dword [ebp - 0x2260]
movsd xmm1, qword [ebp - 0xbde0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbde8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbde8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4859b1
mov ecx, dword [ebp - 0x2260]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbde0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbde0], xmm1
jmp 0x4858ad
cvtsi2sd xmm0, dword [ebp - 0x2260]
movsd xmm1, qword [ebp - 0xbde0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbdf0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbdf0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x485a0e
mov eax, dword [ebp - 0x2260]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbde0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbde0], xmm1
jmp 0x485a27
mov ecx, 1
test ecx, ecx
je 0x485a23
jmp 0x485ae3
jmp 0x485a4a
cvtsi2sd xmm0, dword [ebp - 0x2260]
movsd xmm1, qword [ebp - 0xbde0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2264], edx
jmp 0x485aed
xor eax, eax
je 0x485a54
jmp 0x485a63
jmp 0x4858ad
jmp 0x4858ad
mov ecx, 2
test ecx, ecx
je 0x485ae3
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2268], eax
cvtsi2sd xmm0, dword [ebp - 0x2268]
mov eax, dword [ebp - 0x2268]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbde0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2264], ecx
jmp 0x485aed
mov dword [ebp - 0x2264], 8
mov edx, dword [ebp - 0x225c]
shl edx, 2
add edx, dword [ebp - 0x2258]
mov eax, dword [ebp - 0x2264]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x225c]
shl ecx, 2
add ecx, dword [ebp - 0x2258]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x486633
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x485e25
xor eax, eax
je 0x485b97
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x485bd3
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd8]
movsd qword [ebp - 0xbdf8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x485d73
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x485d73
mov dword [ebp - 0x226c], 0
jmp 0x485c52
cmp dword [ebp - 0x226c], 0xf
jae 0x485d6e
cvtsi2sd xmm0, dword [ebp - 0x226c]
movsd xmm1, qword [ebp - 0xbdf8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe00], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbe00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x485cc1
mov ecx, dword [ebp - 0x226c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbdf8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbdf8], xmm1
jmp 0x485bbd
cvtsi2sd xmm0, dword [ebp - 0x226c]
movsd xmm1, qword [ebp - 0xbdf8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe08], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbe08]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x485d1e
mov eax, dword [ebp - 0x226c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbdf8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbdf8], xmm1
jmp 0x485d37
mov ecx, 1
test ecx, ecx
je 0x485d33
jmp 0x485df3
jmp 0x485d5a
cvtsi2sd xmm0, dword [ebp - 0x226c]
movsd xmm1, qword [ebp - 0xbdf8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2270], edx
jmp 0x485dfd
xor eax, eax
je 0x485d64
jmp 0x485d73
jmp 0x485bbd
jmp 0x485bbd
mov ecx, 2
test ecx, ecx
je 0x485df3
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2274], eax
cvtsi2sd xmm0, dword [ebp - 0x2274]
mov eax, dword [ebp - 0x2274]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbdf8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2270], ecx
jmp 0x485dfd
mov dword [ebp - 0x2270], 8
mov edx, dword [ebp - 0x225c]
shl edx, 2
add edx, dword [ebp - 0x2258]
mov eax, dword [ebp - 0x2270]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x225c]
shl ecx, 2
add ecx, dword [ebp - 0x2258]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4860f0
xor eax, eax
je 0x485e62
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x485e9e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd0]
movsd qword [ebp - 0xbe10], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48603e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48603e
mov dword [ebp - 0x2278], 0
jmp 0x485f1d
cmp dword [ebp - 0x2278], 0xf
jae 0x486039
cvtsi2sd xmm0, dword [ebp - 0x2278]
movsd xmm1, qword [ebp - 0xbe10]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbe18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x485f8c
mov ecx, dword [ebp - 0x2278]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbe10]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe10], xmm1
jmp 0x485e88
cvtsi2sd xmm0, dword [ebp - 0x2278]
movsd xmm1, qword [ebp - 0xbe10]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbe20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x485fe9
mov eax, dword [ebp - 0x2278]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbe10]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe10], xmm1
jmp 0x486002
mov ecx, 1
test ecx, ecx
je 0x485ffe
jmp 0x4860be
jmp 0x486025
cvtsi2sd xmm0, dword [ebp - 0x2278]
movsd xmm1, qword [ebp - 0xbe10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x227c], edx
jmp 0x4860c8
xor eax, eax
je 0x48602f
jmp 0x48603e
jmp 0x485e88
jmp 0x485e88
mov ecx, 2
test ecx, ecx
je 0x4860be
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2280], eax
cvtsi2sd xmm0, dword [ebp - 0x2280]
mov eax, dword [ebp - 0x2280]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbe10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x227c], ecx
jmp 0x4860c8
mov dword [ebp - 0x227c], 8
mov edx, dword [ebp - 0x225c]
shl edx, 2
add edx, dword [ebp - 0x2258]
mov eax, dword [ebp - 0x227c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x225c]
shl ecx, 2
add ecx, dword [ebp - 0x2258]
mov dword [ecx], eax
mov edx, dword [ebp - 0x225c]
add edx, 0xffffffc2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbe28], xmm0
xor eax, eax
je 0x48610a
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x486146
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbe28]
movsd qword [ebp - 0xbe30], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4862e6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4862e6
mov dword [ebp - 0x2284], 0
jmp 0x4861c5
cmp dword [ebp - 0x2284], 0xf
jae 0x4862e1
cvtsi2sd xmm0, dword [ebp - 0x2284]
movsd xmm1, qword [ebp - 0xbe30]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbe38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x486234
mov ecx, dword [ebp - 0x2284]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbe30]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe30], xmm1
jmp 0x486130
cvtsi2sd xmm0, dword [ebp - 0x2284]
movsd xmm1, qword [ebp - 0xbe30]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbe40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x486291
mov eax, dword [ebp - 0x2284]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbe30]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe30], xmm1
jmp 0x4862aa
mov ecx, 1
test ecx, ecx
je 0x4862a6
jmp 0x486366
jmp 0x4862cd
cvtsi2sd xmm0, dword [ebp - 0x2284]
movsd xmm1, qword [ebp - 0xbe30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2288], edx
jmp 0x486370
xor eax, eax
je 0x4862d7
jmp 0x4862e6
jmp 0x486130
jmp 0x486130
mov ecx, 2
test ecx, ecx
je 0x486366
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x228c], eax
cvtsi2sd xmm0, dword [ebp - 0x228c]
mov eax, dword [ebp - 0x228c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbe30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2288], ecx
jmp 0x486370
mov dword [ebp - 0x2288], 8
mov edx, dword [ebp - 0x225c]
add edx, 0xffffffc2
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbe48], xmm0
xor eax, eax
je 0x48638a
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4863c6
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbe48]
movsd qword [ebp - 0xbe50], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x486566
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x486566
mov dword [ebp - 0x2290], 0
jmp 0x486445
cmp dword [ebp - 0x2290], 0xf
jae 0x486561
cvtsi2sd xmm0, dword [ebp - 0x2290]
movsd xmm1, qword [ebp - 0xbe50]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbe58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4864b4
mov ecx, dword [ebp - 0x2290]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbe50]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe50], xmm1
jmp 0x4863b0
cvtsi2sd xmm0, dword [ebp - 0x2290]
movsd xmm1, qword [ebp - 0xbe50]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbe60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x486511
mov eax, dword [ebp - 0x2290]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbe50]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe50], xmm1
jmp 0x48652a
mov ecx, 1
test ecx, ecx
je 0x486526
jmp 0x4865e6
jmp 0x48654d
cvtsi2sd xmm0, dword [ebp - 0x2290]
movsd xmm1, qword [ebp - 0xbe50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2294], edx
jmp 0x4865f0
xor eax, eax
je 0x486557
jmp 0x486566
jmp 0x4863b0
jmp 0x4863b0
mov ecx, 2
test ecx, ecx
je 0x4865e6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2298], eax
cvtsi2sd xmm0, dword [ebp - 0x2298]
mov eax, dword [ebp - 0x2298]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbe50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2294], ecx
jmp 0x4865f0
mov dword [ebp - 0x2294], 8
mov edx, dword [ebp - 0x225c]
shl edx, 2
add edx, dword [ebp - 0x2258]
mov eax, dword [ebp - 0x2288]
add eax, dword [edx]
mov ecx, dword [ebp - 0x225c]
shl ecx, 2
add ecx, dword [ebp - 0x2258]
mov edx, dword [ebp - 0x2294]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x225c]
shl ecx, 2
add ecx, dword [ebp - 0x2258]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4868fe
xor eax, eax
je 0x486670
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4866ac
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc8]
movsd qword [ebp - 0xbe68], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48684c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48684c
mov dword [ebp - 0x229c], 0
jmp 0x48672b
cmp dword [ebp - 0x229c], 0xf
jae 0x486847
cvtsi2sd xmm0, dword [ebp - 0x229c]
movsd xmm1, qword [ebp - 0xbe68]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe70], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbe70]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48679a
mov ecx, dword [ebp - 0x229c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbe68]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe68], xmm1
jmp 0x486696
cvtsi2sd xmm0, dword [ebp - 0x229c]
movsd xmm1, qword [ebp - 0xbe68]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe78], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbe78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4867f7
mov eax, dword [ebp - 0x229c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbe68]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe68], xmm1
jmp 0x486810
mov ecx, 1
test ecx, ecx
je 0x48680c
jmp 0x4868cc
jmp 0x486833
cvtsi2sd xmm0, dword [ebp - 0x229c]
movsd xmm1, qword [ebp - 0xbe68]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x22a0], edx
jmp 0x4868d6
xor eax, eax
je 0x48683d
jmp 0x48684c
jmp 0x486696
jmp 0x486696
mov ecx, 2
test ecx, ecx
je 0x4868cc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x22a4], eax
cvtsi2sd xmm0, dword [ebp - 0x22a4]
mov eax, dword [ebp - 0x22a4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbe68]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x22a0], ecx
jmp 0x4868d6
mov dword [ebp - 0x22a0], 8
mov edx, dword [ebp - 0x225c]
shl edx, 2
add edx, dword [ebp - 0x2258]
mov eax, dword [ebp - 0x22a0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x225c]
shl ecx, 2
add ecx, dword [ebp - 0x2258]
mov dword [ecx], eax
jmp 0x48582e
mov edx, dword [ebp - 0x2254]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2254]
mov dword [ebp - 0x22a8], eax
mov ecx, dword [ebp - 0x22a8]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x22ac], ecx
mov edx, dword [ebp - 0x22ac]
mov dword [ebp - 0x2250], edx
xor eax, eax
mov byte [ebp - 0x5e], al
lea ecx, [ebp - 0x5e]
call fcn.004250e0
mov dword [ebp - 0x22b0], eax
mov ecx, dword [ebp - 0x22b0]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x487a4e
mov eax, dword [ebp - 0x22b0]
mov dword [ebp - 0x22b4], eax
mov dword [ebp - 0x22b8], 0
jmp 0x486988
mov ecx, dword [ebp - 0x22b8]
add ecx, 1
mov dword [ebp - 0x22b8], ecx
cmp dword [ebp - 0x22b8], 1
jae 0x487a4e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x486c60
xor eax, eax
je 0x4869d2
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x486a0e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd8]
movsd qword [ebp - 0xbe80], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x486bae
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x486bae
mov dword [ebp - 0x22bc], 0
jmp 0x486a8d
cmp dword [ebp - 0x22bc], 0xf
jae 0x486ba9
cvtsi2sd xmm0, dword [ebp - 0x22bc]
movsd xmm1, qword [ebp - 0xbe80]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe88], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbe88]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x486afc
mov ecx, dword [ebp - 0x22bc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbe80]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe80], xmm1
jmp 0x4869f8
cvtsi2sd xmm0, dword [ebp - 0x22bc]
movsd xmm1, qword [ebp - 0xbe80]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe90], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbe90]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x486b59
mov eax, dword [ebp - 0x22bc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbe80]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe80], xmm1
jmp 0x486b72
mov ecx, 1
test ecx, ecx
je 0x486b6e
jmp 0x486c2e
jmp 0x486b95
cvtsi2sd xmm0, dword [ebp - 0x22bc]
movsd xmm1, qword [ebp - 0xbe80]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x22c0], edx
jmp 0x486c38
xor eax, eax
je 0x486b9f
jmp 0x486bae
jmp 0x4869f8
jmp 0x4869f8
mov ecx, 2
test ecx, ecx
je 0x486c2e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x22c4], eax
cvtsi2sd xmm0, dword [ebp - 0x22c4]
mov eax, dword [ebp - 0x22c4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbe80]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x22c0], ecx
jmp 0x486c38
mov dword [ebp - 0x22c0], 8
mov edx, dword [ebp - 0x22b8]
shl edx, 2
add edx, dword [ebp - 0x22b4]
mov eax, dword [ebp - 0x22c0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x22b8]
shl ecx, 2
add ecx, dword [ebp - 0x22b4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48777e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x486f70
xor eax, eax
je 0x486ce2
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x486d1e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd0]
movsd qword [ebp - 0xbe98], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x486ebe
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x486ebe
mov dword [ebp - 0x22c8], 0
jmp 0x486d9d
cmp dword [ebp - 0x22c8], 0xf
jae 0x486eb9
cvtsi2sd xmm0, dword [ebp - 0x22c8]
movsd xmm1, qword [ebp - 0xbe98]
addsd xmm1, xmm0
movsd qword [ebp - 0xbea0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbea0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x486e0c
mov ecx, dword [ebp - 0x22c8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbe98]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe98], xmm1
jmp 0x486d08
cvtsi2sd xmm0, dword [ebp - 0x22c8]
movsd xmm1, qword [ebp - 0xbe98]
addsd xmm1, xmm0
movsd qword [ebp - 0xbea8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbea8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x486e69
mov eax, dword [ebp - 0x22c8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbe98]
addsd xmm1, xmm0
movsd qword [ebp - 0xbe98], xmm1
jmp 0x486e82
mov ecx, 1
test ecx, ecx
je 0x486e7e
jmp 0x486f3e
jmp 0x486ea5
cvtsi2sd xmm0, dword [ebp - 0x22c8]
movsd xmm1, qword [ebp - 0xbe98]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x22cc], edx
jmp 0x486f48
xor eax, eax
je 0x486eaf
jmp 0x486ebe
jmp 0x486d08
jmp 0x486d08
mov ecx, 2
test ecx, ecx
je 0x486f3e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x22d0], eax
cvtsi2sd xmm0, dword [ebp - 0x22d0]
mov eax, dword [ebp - 0x22d0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbe98]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x22cc], ecx
jmp 0x486f48
mov dword [ebp - 0x22cc], 8
mov edx, dword [ebp - 0x22b8]
shl edx, 2
add edx, dword [ebp - 0x22b4]
mov eax, dword [ebp - 0x22cc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x22b8]
shl ecx, 2
add ecx, dword [ebp - 0x22b4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48723b
xor eax, eax
je 0x486fad
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x486fe9
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc8]
movsd qword [ebp - 0xbeb0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x487189
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x487189
mov dword [ebp - 0x22d4], 0
jmp 0x487068
cmp dword [ebp - 0x22d4], 0xf
jae 0x487184
cvtsi2sd xmm0, dword [ebp - 0x22d4]
movsd xmm1, qword [ebp - 0xbeb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbeb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbeb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4870d7
mov ecx, dword [ebp - 0x22d4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbeb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbeb0], xmm1
jmp 0x486fd3
cvtsi2sd xmm0, dword [ebp - 0x22d4]
movsd xmm1, qword [ebp - 0xbeb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbec0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbec0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x487134
mov eax, dword [ebp - 0x22d4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbeb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbeb0], xmm1
jmp 0x48714d
mov ecx, 1
test ecx, ecx
je 0x487149
jmp 0x487209
jmp 0x487170
cvtsi2sd xmm0, dword [ebp - 0x22d4]
movsd xmm1, qword [ebp - 0xbeb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x22d8], edx
jmp 0x487213
xor eax, eax
je 0x48717a
jmp 0x487189
jmp 0x486fd3
jmp 0x486fd3
mov ecx, 2
test ecx, ecx
je 0x487209
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x22dc], eax
cvtsi2sd xmm0, dword [ebp - 0x22dc]
mov eax, dword [ebp - 0x22dc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbeb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x22d8], ecx
jmp 0x487213
mov dword [ebp - 0x22d8], 8
mov edx, dword [ebp - 0x22b8]
shl edx, 2
add edx, dword [ebp - 0x22b4]
mov eax, dword [ebp - 0x22d8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x22b8]
shl ecx, 2
add ecx, dword [ebp - 0x22b4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x22b8]
add edx, 0xffffffc3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbec8], xmm0
xor eax, eax
je 0x487255
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x487291
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbec8]
movsd qword [ebp - 0xbed0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x487431
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x487431
mov dword [ebp - 0x22e0], 0
jmp 0x487310
cmp dword [ebp - 0x22e0], 0xf
jae 0x48742c
cvtsi2sd xmm0, dword [ebp - 0x22e0]
movsd xmm1, qword [ebp - 0xbed0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbed8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbed8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48737f
mov ecx, dword [ebp - 0x22e0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbed0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbed0], xmm1
jmp 0x48727b
cvtsi2sd xmm0, dword [ebp - 0x22e0]
movsd xmm1, qword [ebp - 0xbed0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbee0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbee0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4873dc
mov eax, dword [ebp - 0x22e0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbed0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbed0], xmm1
jmp 0x4873f5
mov ecx, 1
test ecx, ecx
je 0x4873f1
jmp 0x4874b1
jmp 0x487418
cvtsi2sd xmm0, dword [ebp - 0x22e0]
movsd xmm1, qword [ebp - 0xbed0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x22e4], edx
jmp 0x4874bb
xor eax, eax
je 0x487422
jmp 0x487431
jmp 0x48727b
jmp 0x48727b
mov ecx, 2
test ecx, ecx
je 0x4874b1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x22e8], eax
cvtsi2sd xmm0, dword [ebp - 0x22e8]
mov eax, dword [ebp - 0x22e8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbed0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x22e4], ecx
jmp 0x4874bb
mov dword [ebp - 0x22e4], 8
mov edx, dword [ebp - 0x22b8]
add edx, 0xffffffc3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbee8], xmm0
xor eax, eax
je 0x4874d5
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x487511
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbee8]
movsd qword [ebp - 0xbef0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4876b1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4876b1
mov dword [ebp - 0x22ec], 0
jmp 0x487590
cmp dword [ebp - 0x22ec], 0xf
jae 0x4876ac
cvtsi2sd xmm0, dword [ebp - 0x22ec]
movsd xmm1, qword [ebp - 0xbef0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbef8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbef8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4875ff
mov ecx, dword [ebp - 0x22ec]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbef0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbef0], xmm1
jmp 0x4874fb
cvtsi2sd xmm0, dword [ebp - 0x22ec]
movsd xmm1, qword [ebp - 0xbef0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbf00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48765c
mov eax, dword [ebp - 0x22ec]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbef0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbef0], xmm1
jmp 0x487675
mov ecx, 1
test ecx, ecx
je 0x487671
jmp 0x487731
jmp 0x487698
cvtsi2sd xmm0, dword [ebp - 0x22ec]
movsd xmm1, qword [ebp - 0xbef0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x22f0], edx
jmp 0x48773b
xor eax, eax
je 0x4876a2
jmp 0x4876b1
jmp 0x4874fb
jmp 0x4874fb
mov ecx, 2
test ecx, ecx
je 0x487731
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x22f4], eax
cvtsi2sd xmm0, dword [ebp - 0x22f4]
mov eax, dword [ebp - 0x22f4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbef0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x22f0], ecx
jmp 0x48773b
mov dword [ebp - 0x22f0], 8
mov edx, dword [ebp - 0x22b8]
shl edx, 2
add edx, dword [ebp - 0x22b4]
mov eax, dword [ebp - 0x22e4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x22b8]
shl ecx, 2
add ecx, dword [ebp - 0x22b4]
mov edx, dword [ebp - 0x22f0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x22b8]
shl ecx, 2
add ecx, dword [ebp - 0x22b4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x487a49
xor eax, eax
je 0x4877bb
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4877f7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc0]
movsd qword [ebp - 0xbf08], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x487997
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x487997
mov dword [ebp - 0x22f8], 0
jmp 0x487876
cmp dword [ebp - 0x22f8], 0xf
jae 0x487992
cvtsi2sd xmm0, dword [ebp - 0x22f8]
movsd xmm1, qword [ebp - 0xbf08]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf10], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbf10]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4878e5
mov ecx, dword [ebp - 0x22f8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbf08]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf08], xmm1
jmp 0x4877e1
cvtsi2sd xmm0, dword [ebp - 0x22f8]
movsd xmm1, qword [ebp - 0xbf08]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf18], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbf18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x487942
mov eax, dword [ebp - 0x22f8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbf08]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf08], xmm1
jmp 0x48795b
mov ecx, 1
test ecx, ecx
je 0x487957
jmp 0x487a17
jmp 0x48797e
cvtsi2sd xmm0, dword [ebp - 0x22f8]
movsd xmm1, qword [ebp - 0xbf08]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x22fc], edx
jmp 0x487a21
xor eax, eax
je 0x487988
jmp 0x487997
jmp 0x4877e1
jmp 0x4877e1
mov ecx, 2
test ecx, ecx
je 0x487a17
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2300], eax
cvtsi2sd xmm0, dword [ebp - 0x2300]
mov eax, dword [ebp - 0x2300]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbf08]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x22fc], ecx
jmp 0x487a21
mov dword [ebp - 0x22fc], 8
mov edx, dword [ebp - 0x22b8]
shl edx, 2
add edx, dword [ebp - 0x22b4]
mov eax, dword [ebp - 0x22fc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x22b8]
shl ecx, 2
add ecx, dword [ebp - 0x22b4]
mov dword [ecx], eax
jmp 0x486979
mov edx, dword [ebp - 0x22b0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x22b0]
mov dword [ebp - 0x2304], eax
mov ecx, dword [ebp - 0x2304]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2308], ecx
mov edx, dword [ebp - 0x2308]
mov dword [ebp - 0x230c], edx
xor eax, eax
mov byte [ebp - 0x5f], al
lea ecx, [ebp - 0x5f]
call fcn.004250b0
mov dword [ebp - 0x2310], eax
mov ecx, dword [ebp - 0x2310]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x488b99
mov eax, dword [ebp - 0x2310]
mov dword [ebp - 0x2314], eax
mov dword [ebp - 0x2318], 0
jmp 0x487ad3
mov ecx, dword [ebp - 0x2318]
add ecx, 1
mov dword [ebp - 0x2318], ecx
cmp dword [ebp - 0x2318], 1
jae 0x488b99
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x487dab
xor eax, eax
je 0x487b1d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x487b59
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd8]
movsd qword [ebp - 0xbf20], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x487cf9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x487cf9
mov dword [ebp - 0x231c], 0
jmp 0x487bd8
cmp dword [ebp - 0x231c], 0xf
jae 0x487cf4
cvtsi2sd xmm0, dword [ebp - 0x231c]
movsd xmm1, qword [ebp - 0xbf20]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf28], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbf28]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x487c47
mov ecx, dword [ebp - 0x231c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbf20]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf20], xmm1
jmp 0x487b43
cvtsi2sd xmm0, dword [ebp - 0x231c]
movsd xmm1, qword [ebp - 0xbf20]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf30], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbf30]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x487ca4
mov eax, dword [ebp - 0x231c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbf20]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf20], xmm1
jmp 0x487cbd
mov ecx, 1
test ecx, ecx
je 0x487cb9
jmp 0x487d79
jmp 0x487ce0
cvtsi2sd xmm0, dword [ebp - 0x231c]
movsd xmm1, qword [ebp - 0xbf20]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2320], edx
jmp 0x487d83
xor eax, eax
je 0x487cea
jmp 0x487cf9
jmp 0x487b43
jmp 0x487b43
mov ecx, 2
test ecx, ecx
je 0x487d79
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2324], eax
cvtsi2sd xmm0, dword [ebp - 0x2324]
mov eax, dword [ebp - 0x2324]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbf20]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2320], ecx
jmp 0x487d83
mov dword [ebp - 0x2320], 8
mov edx, dword [ebp - 0x2318]
shl edx, 2
add edx, dword [ebp - 0x2314]
mov eax, dword [ebp - 0x2320]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2318]
shl ecx, 2
add ecx, dword [ebp - 0x2314]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4888c9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4880bb
xor eax, eax
je 0x487e2d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x487e69
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd0]
movsd qword [ebp - 0xbf38], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x488009
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x488009
mov dword [ebp - 0x2328], 0
jmp 0x487ee8
cmp dword [ebp - 0x2328], 0xf
jae 0x488004
cvtsi2sd xmm0, dword [ebp - 0x2328]
movsd xmm1, qword [ebp - 0xbf38]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf40], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbf40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x487f57
mov ecx, dword [ebp - 0x2328]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbf38]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf38], xmm1
jmp 0x487e53
cvtsi2sd xmm0, dword [ebp - 0x2328]
movsd xmm1, qword [ebp - 0xbf38]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf48], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbf48]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x487fb4
mov eax, dword [ebp - 0x2328]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbf38]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf38], xmm1
jmp 0x487fcd
mov ecx, 1
test ecx, ecx
je 0x487fc9
jmp 0x488089
jmp 0x487ff0
cvtsi2sd xmm0, dword [ebp - 0x2328]
movsd xmm1, qword [ebp - 0xbf38]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x232c], edx
jmp 0x488093
xor eax, eax
je 0x487ffa
jmp 0x488009
jmp 0x487e53
jmp 0x487e53
mov ecx, 2
test ecx, ecx
je 0x488089
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2330], eax
cvtsi2sd xmm0, dword [ebp - 0x2330]
mov eax, dword [ebp - 0x2330]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbf38]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x232c], ecx
jmp 0x488093
mov dword [ebp - 0x232c], 8
mov edx, dword [ebp - 0x2318]
shl edx, 2
add edx, dword [ebp - 0x2314]
mov eax, dword [ebp - 0x232c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2318]
shl ecx, 2
add ecx, dword [ebp - 0x2314]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x488386
xor eax, eax
je 0x4880f8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x488134
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc8]
movsd qword [ebp - 0xbf50], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4882d4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4882d4
mov dword [ebp - 0x2334], 0
jmp 0x4881b3
cmp dword [ebp - 0x2334], 0xf
jae 0x4882cf
cvtsi2sd xmm0, dword [ebp - 0x2334]
movsd xmm1, qword [ebp - 0xbf50]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbf58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x488222
mov ecx, dword [ebp - 0x2334]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbf50]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf50], xmm1
jmp 0x48811e
cvtsi2sd xmm0, dword [ebp - 0x2334]
movsd xmm1, qword [ebp - 0xbf50]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbf60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48827f
mov eax, dword [ebp - 0x2334]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbf50]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf50], xmm1
jmp 0x488298
mov ecx, 1
test ecx, ecx
je 0x488294
jmp 0x488354
jmp 0x4882bb
cvtsi2sd xmm0, dword [ebp - 0x2334]
movsd xmm1, qword [ebp - 0xbf50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2338], edx
jmp 0x48835e
xor eax, eax
je 0x4882c5
jmp 0x4882d4
jmp 0x48811e
jmp 0x48811e
mov ecx, 2
test ecx, ecx
je 0x488354
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x233c], eax
cvtsi2sd xmm0, dword [ebp - 0x233c]
mov eax, dword [ebp - 0x233c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbf50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2338], ecx
jmp 0x48835e
mov dword [ebp - 0x2338], 8
mov edx, dword [ebp - 0x2318]
shl edx, 2
add edx, dword [ebp - 0x2314]
mov eax, dword [ebp - 0x2338]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2318]
shl ecx, 2
add ecx, dword [ebp - 0x2314]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2318]
add edx, 0xffffffc3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbf68], xmm0
xor eax, eax
je 0x4883a0
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4883dc
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbf68]
movsd qword [ebp - 0xbf70], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48857c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48857c
mov dword [ebp - 0x2340], 0
jmp 0x48845b
cmp dword [ebp - 0x2340], 0xf
jae 0x488577
cvtsi2sd xmm0, dword [ebp - 0x2340]
movsd xmm1, qword [ebp - 0xbf70]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbf78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4884ca
mov ecx, dword [ebp - 0x2340]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbf70]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf70], xmm1
jmp 0x4883c6
cvtsi2sd xmm0, dword [ebp - 0x2340]
movsd xmm1, qword [ebp - 0xbf70]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbf80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x488527
mov eax, dword [ebp - 0x2340]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbf70]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf70], xmm1
jmp 0x488540
mov ecx, 1
test ecx, ecx
je 0x48853c
jmp 0x4885fc
jmp 0x488563
cvtsi2sd xmm0, dword [ebp - 0x2340]
movsd xmm1, qword [ebp - 0xbf70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2344], edx
jmp 0x488606
xor eax, eax
je 0x48856d
jmp 0x48857c
jmp 0x4883c6
jmp 0x4883c6
mov ecx, 2
test ecx, ecx
je 0x4885fc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2348], eax
cvtsi2sd xmm0, dword [ebp - 0x2348]
mov eax, dword [ebp - 0x2348]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbf70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2344], ecx
jmp 0x488606
mov dword [ebp - 0x2344], 8
mov edx, dword [ebp - 0x2318]
add edx, 0xffffffc3
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xbf88], xmm0
xor eax, eax
je 0x488620
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x48865c
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xbf88]
movsd qword [ebp - 0xbf90], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4887fc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4887fc
mov dword [ebp - 0x234c], 0
jmp 0x4886db
cmp dword [ebp - 0x234c], 0xf
jae 0x4887f7
cvtsi2sd xmm0, dword [ebp - 0x234c]
movsd xmm1, qword [ebp - 0xbf90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbf98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48874a
mov ecx, dword [ebp - 0x234c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbf90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf90], xmm1
jmp 0x488646
cvtsi2sd xmm0, dword [ebp - 0x234c]
movsd xmm1, qword [ebp - 0xbf90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfa0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbfa0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4887a7
mov eax, dword [ebp - 0x234c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbf90]
addsd xmm1, xmm0
movsd qword [ebp - 0xbf90], xmm1
jmp 0x4887c0
mov ecx, 1
test ecx, ecx
je 0x4887bc
jmp 0x48887c
jmp 0x4887e3
cvtsi2sd xmm0, dword [ebp - 0x234c]
movsd xmm1, qword [ebp - 0xbf90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2350], edx
jmp 0x488886
xor eax, eax
je 0x4887ed
jmp 0x4887fc
jmp 0x488646
jmp 0x488646
mov ecx, 2
test ecx, ecx
je 0x48887c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2354], eax
cvtsi2sd xmm0, dword [ebp - 0x2354]
mov eax, dword [ebp - 0x2354]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbf90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2350], ecx
jmp 0x488886
mov dword [ebp - 0x2350], 8
mov edx, dword [ebp - 0x2318]
shl edx, 2
add edx, dword [ebp - 0x2314]
mov eax, dword [ebp - 0x2344]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2318]
shl ecx, 2
add ecx, dword [ebp - 0x2314]
mov edx, dword [ebp - 0x2350]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2318]
shl ecx, 2
add ecx, dword [ebp - 0x2314]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x488b94
xor eax, eax
je 0x488906
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x488942
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc0]
movsd qword [ebp - 0xbfa8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x488ae2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x488ae2
mov dword [ebp - 0x2358], 0
jmp 0x4889c1
cmp dword [ebp - 0x2358], 0xf
jae 0x488add
cvtsi2sd xmm0, dword [ebp - 0x2358]
movsd xmm1, qword [ebp - 0xbfa8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfb0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbfb0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x488a30
mov ecx, dword [ebp - 0x2358]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbfa8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfa8], xmm1
jmp 0x48892c
cvtsi2sd xmm0, dword [ebp - 0x2358]
movsd xmm1, qword [ebp - 0xbfa8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfb8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbfb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x488a8d
mov eax, dword [ebp - 0x2358]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbfa8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfa8], xmm1
jmp 0x488aa6
mov ecx, 1
test ecx, ecx
je 0x488aa2
jmp 0x488b62
jmp 0x488ac9
cvtsi2sd xmm0, dword [ebp - 0x2358]
movsd xmm1, qword [ebp - 0xbfa8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x235c], edx
jmp 0x488b6c
xor eax, eax
je 0x488ad3
jmp 0x488ae2
jmp 0x48892c
jmp 0x48892c
mov ecx, 2
test ecx, ecx
je 0x488b62
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2360], eax
cvtsi2sd xmm0, dword [ebp - 0x2360]
mov eax, dword [ebp - 0x2360]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbfa8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x235c], ecx
jmp 0x488b6c
mov dword [ebp - 0x235c], 8
mov edx, dword [ebp - 0x2318]
shl edx, 2
add edx, dword [ebp - 0x2314]
mov eax, dword [ebp - 0x235c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2318]
shl ecx, 2
add ecx, dword [ebp - 0x2314]
mov dword [ecx], eax
jmp 0x487ac4
mov edx, dword [ebp - 0x2310]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2310]
mov dword [ebp - 0x2364], eax
mov ecx, dword [ebp - 0x2364]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2368], ecx
mov edx, dword [ebp - 0x2368]
mov dword [ebp - 0x236c], edx
xor eax, eax
mov byte [ebp - 0x60], al
lea ecx, [ebp - 0x60]
call fcn.00425080
mov dword [ebp - 0x2370], eax
mov ecx, dword [ebp - 0x2370]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x489ce4
mov eax, dword [ebp - 0x2370]
mov dword [ebp - 0x2374], eax
mov dword [ebp - 0x2378], 0
jmp 0x488c1e
mov ecx, dword [ebp - 0x2378]
add ecx, 1
mov dword [ebp - 0x2378], ecx
cmp dword [ebp - 0x2378], 1
jae 0x489ce4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x488ef6
xor eax, eax
je 0x488c68
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x488ca4
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dd0]
movsd qword [ebp - 0xbfc0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x488e44
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x488e44
mov dword [ebp - 0x237c], 0
jmp 0x488d23
cmp dword [ebp - 0x237c], 0xf
jae 0x488e3f
cvtsi2sd xmm0, dword [ebp - 0x237c]
movsd xmm1, qword [ebp - 0xbfc0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfc8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbfc8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x488d92
mov ecx, dword [ebp - 0x237c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbfc0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfc0], xmm1
jmp 0x488c8e
cvtsi2sd xmm0, dword [ebp - 0x237c]
movsd xmm1, qword [ebp - 0xbfc0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfd0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbfd0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x488def
mov eax, dword [ebp - 0x237c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbfc0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfc0], xmm1
jmp 0x488e08
mov ecx, 1
test ecx, ecx
je 0x488e04
jmp 0x488ec4
jmp 0x488e2b
cvtsi2sd xmm0, dword [ebp - 0x237c]
movsd xmm1, qword [ebp - 0xbfc0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2380], edx
jmp 0x488ece
xor eax, eax
je 0x488e35
jmp 0x488e44
jmp 0x488c8e
jmp 0x488c8e
mov ecx, 2
test ecx, ecx
je 0x488ec4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2384], eax
cvtsi2sd xmm0, dword [ebp - 0x2384]
mov eax, dword [ebp - 0x2384]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbfc0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2380], ecx
jmp 0x488ece
mov dword [ebp - 0x2380], 8
mov edx, dword [ebp - 0x2378]
shl edx, 2
add edx, dword [ebp - 0x2374]
mov eax, dword [ebp - 0x2380]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2378]
shl ecx, 2
add ecx, dword [ebp - 0x2374]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x489a14
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x489206
xor eax, eax
je 0x488f78
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x488fb4
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc8]
movsd qword [ebp - 0xbfd8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x489154
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x489154
mov dword [ebp - 0x2388], 0
jmp 0x489033
cmp dword [ebp - 0x2388], 0xf
jae 0x48914f
cvtsi2sd xmm0, dword [ebp - 0x2388]
movsd xmm1, qword [ebp - 0xbfd8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfe0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbfe0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4890a2
mov ecx, dword [ebp - 0x2388]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbfd8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfd8], xmm1
jmp 0x488f9e
cvtsi2sd xmm0, dword [ebp - 0x2388]
movsd xmm1, qword [ebp - 0xbfd8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfe8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xbfe8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4890ff
mov eax, dword [ebp - 0x2388]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbfd8]
addsd xmm1, xmm0
movsd qword [ebp - 0xbfd8], xmm1
jmp 0x489118
mov ecx, 1
test ecx, ecx
je 0x489114
jmp 0x4891d4
jmp 0x48913b
cvtsi2sd xmm0, dword [ebp - 0x2388]
movsd xmm1, qword [ebp - 0xbfd8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x238c], edx
jmp 0x4891de
xor eax, eax
je 0x489145
jmp 0x489154
jmp 0x488f9e
jmp 0x488f9e
mov ecx, 2
test ecx, ecx
je 0x4891d4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2390], eax
cvtsi2sd xmm0, dword [ebp - 0x2390]
mov eax, dword [ebp - 0x2390]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbfd8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x238c], ecx
jmp 0x4891de
mov dword [ebp - 0x238c], 8
mov edx, dword [ebp - 0x2378]
shl edx, 2
add edx, dword [ebp - 0x2374]
mov eax, dword [ebp - 0x238c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2378]
shl ecx, 2
add ecx, dword [ebp - 0x2374]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4894d1
xor eax, eax
je 0x489243
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48927f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc0]
movsd qword [ebp - 0xbff0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48941f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48941f
mov dword [ebp - 0x2394], 0
jmp 0x4892fe
cmp dword [ebp - 0x2394], 0xf
jae 0x48941a
cvtsi2sd xmm0, dword [ebp - 0x2394]
movsd xmm1, qword [ebp - 0xbff0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbff8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbff8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48936d
mov ecx, dword [ebp - 0x2394]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xbff0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbff0], xmm1
jmp 0x489269
cvtsi2sd xmm0, dword [ebp - 0x2394]
movsd xmm1, qword [ebp - 0xbff0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc000], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc000]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4893ca
mov eax, dword [ebp - 0x2394]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xbff0]
addsd xmm1, xmm0
movsd qword [ebp - 0xbff0], xmm1
jmp 0x4893e3
mov ecx, 1
test ecx, ecx
je 0x4893df
jmp 0x48949f
jmp 0x489406
cvtsi2sd xmm0, dword [ebp - 0x2394]
movsd xmm1, qword [ebp - 0xbff0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2398], edx
jmp 0x4894a9
xor eax, eax
je 0x489410
jmp 0x48941f
jmp 0x489269
jmp 0x489269
mov ecx, 2
test ecx, ecx
je 0x48949f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x239c], eax
cvtsi2sd xmm0, dword [ebp - 0x239c]
mov eax, dword [ebp - 0x239c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xbff0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2398], ecx
jmp 0x4894a9
mov dword [ebp - 0x2398], 8
mov edx, dword [ebp - 0x2378]
shl edx, 2
add edx, dword [ebp - 0x2374]
mov eax, dword [ebp - 0x2398]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2378]
shl ecx, 2
add ecx, dword [ebp - 0x2374]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2378]
add edx, 0xffffffc4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc008], xmm0
xor eax, eax
je 0x4894eb
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x489527
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc008]
movsd qword [ebp - 0xc010], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4896c7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4896c7
mov dword [ebp - 0x23a0], 0
jmp 0x4895a6
cmp dword [ebp - 0x23a0], 0xf
jae 0x4896c2
cvtsi2sd xmm0, dword [ebp - 0x23a0]
movsd xmm1, qword [ebp - 0xc010]
addsd xmm1, xmm0
movsd qword [ebp - 0xc018], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc018]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x489615
mov ecx, dword [ebp - 0x23a0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc010]
addsd xmm1, xmm0
movsd qword [ebp - 0xc010], xmm1
jmp 0x489511
cvtsi2sd xmm0, dword [ebp - 0x23a0]
movsd xmm1, qword [ebp - 0xc010]
addsd xmm1, xmm0
movsd qword [ebp - 0xc020], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc020]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x489672
mov eax, dword [ebp - 0x23a0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc010]
addsd xmm1, xmm0
movsd qword [ebp - 0xc010], xmm1
jmp 0x48968b
mov ecx, 1
test ecx, ecx
je 0x489687
jmp 0x489747
jmp 0x4896ae
cvtsi2sd xmm0, dword [ebp - 0x23a0]
movsd xmm1, qword [ebp - 0xc010]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x23a4], edx
jmp 0x489751
xor eax, eax
je 0x4896b8
jmp 0x4896c7
jmp 0x489511
jmp 0x489511
mov ecx, 2
test ecx, ecx
je 0x489747
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x23a8], eax
cvtsi2sd xmm0, dword [ebp - 0x23a8]
mov eax, dword [ebp - 0x23a8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc010]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x23a4], ecx
jmp 0x489751
mov dword [ebp - 0x23a4], 8
mov edx, dword [ebp - 0x2378]
add edx, 0xffffffc4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc028], xmm0
xor eax, eax
je 0x48976b
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4897a7
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc028]
movsd qword [ebp - 0xc030], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x489947
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x489947
mov dword [ebp - 0x23ac], 0
jmp 0x489826
cmp dword [ebp - 0x23ac], 0xf
jae 0x489942
cvtsi2sd xmm0, dword [ebp - 0x23ac]
movsd xmm1, qword [ebp - 0xc030]
addsd xmm1, xmm0
movsd qword [ebp - 0xc038], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc038]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x489895
mov ecx, dword [ebp - 0x23ac]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc030]
addsd xmm1, xmm0
movsd qword [ebp - 0xc030], xmm1
jmp 0x489791
cvtsi2sd xmm0, dword [ebp - 0x23ac]
movsd xmm1, qword [ebp - 0xc030]
addsd xmm1, xmm0
movsd qword [ebp - 0xc040], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc040]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4898f2
mov eax, dword [ebp - 0x23ac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc030]
addsd xmm1, xmm0
movsd qword [ebp - 0xc030], xmm1
jmp 0x48990b
mov ecx, 1
test ecx, ecx
je 0x489907
jmp 0x4899c7
jmp 0x48992e
cvtsi2sd xmm0, dword [ebp - 0x23ac]
movsd xmm1, qword [ebp - 0xc030]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x23b0], edx
jmp 0x4899d1
xor eax, eax
je 0x489938
jmp 0x489947
jmp 0x489791
jmp 0x489791
mov ecx, 2
test ecx, ecx
je 0x4899c7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x23b4], eax
cvtsi2sd xmm0, dword [ebp - 0x23b4]
mov eax, dword [ebp - 0x23b4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc030]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x23b0], ecx
jmp 0x4899d1
mov dword [ebp - 0x23b0], 8
mov edx, dword [ebp - 0x2378]
shl edx, 2
add edx, dword [ebp - 0x2374]
mov eax, dword [ebp - 0x23a4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2378]
shl ecx, 2
add ecx, dword [ebp - 0x2374]
mov edx, dword [ebp - 0x23b0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2378]
shl ecx, 2
add ecx, dword [ebp - 0x2374]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x489cdf
xor eax, eax
je 0x489a51
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x489a8d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db8]
movsd qword [ebp - 0xc048], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x489c2d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x489c2d
mov dword [ebp - 0x23b8], 0
jmp 0x489b0c
cmp dword [ebp - 0x23b8], 0xf
jae 0x489c28
cvtsi2sd xmm0, dword [ebp - 0x23b8]
movsd xmm1, qword [ebp - 0xc048]
addsd xmm1, xmm0
movsd qword [ebp - 0xc050], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc050]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x489b7b
mov ecx, dword [ebp - 0x23b8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc048]
addsd xmm1, xmm0
movsd qword [ebp - 0xc048], xmm1
jmp 0x489a77
cvtsi2sd xmm0, dword [ebp - 0x23b8]
movsd xmm1, qword [ebp - 0xc048]
addsd xmm1, xmm0
movsd qword [ebp - 0xc058], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc058]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x489bd8
mov eax, dword [ebp - 0x23b8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc048]
addsd xmm1, xmm0
movsd qword [ebp - 0xc048], xmm1
jmp 0x489bf1
mov ecx, 1
test ecx, ecx
je 0x489bed
jmp 0x489cad
jmp 0x489c14
cvtsi2sd xmm0, dword [ebp - 0x23b8]
movsd xmm1, qword [ebp - 0xc048]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x23bc], edx
jmp 0x489cb7
xor eax, eax
je 0x489c1e
jmp 0x489c2d
jmp 0x489a77
jmp 0x489a77
mov ecx, 2
test ecx, ecx
je 0x489cad
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x23c0], eax
cvtsi2sd xmm0, dword [ebp - 0x23c0]
mov eax, dword [ebp - 0x23c0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc048]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x23bc], ecx
jmp 0x489cb7
mov dword [ebp - 0x23bc], 8
mov edx, dword [ebp - 0x2378]
shl edx, 2
add edx, dword [ebp - 0x2374]
mov eax, dword [ebp - 0x23bc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2378]
shl ecx, 2
add ecx, dword [ebp - 0x2374]
mov dword [ecx], eax
jmp 0x488c0f
mov edx, dword [ebp - 0x2370]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2370]
mov dword [ebp - 0x23c4], eax
mov ecx, dword [ebp - 0x23c4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x23c8], ecx
mov edx, dword [ebp - 0x23c8]
mov dword [ebp - 0x23cc], edx
mov eax, dword [ebp - 0x236c]
mov dword [ebp - 0x230c], eax
cmp dword [ebp - 0x230c], 0
je 0x48ae81
xor ecx, ecx
mov byte [ebp - 0x61], cl
lea ecx, [ebp - 0x61]
call fcn.00425050
mov dword [ebp - 0x23d0], eax
mov edx, dword [ebp - 0x23d0]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x48ae48
mov ecx, dword [ebp - 0x23d0]
mov dword [ebp - 0x23d4], ecx
mov dword [ebp - 0x23d8], 0
jmp 0x489d82
mov edx, dword [ebp - 0x23d8]
add edx, 1
mov dword [ebp - 0x23d8], edx
cmp dword [ebp - 0x23d8], 1
jae 0x48ae48
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48a05a
xor eax, eax
je 0x489dcc
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x489e08
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736dd0]
movsd qword [ebp - 0xc060], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x489fa8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x489fa8
mov dword [ebp - 0x23dc], 0
jmp 0x489e87
cmp dword [ebp - 0x23dc], 0xf
jae 0x489fa3
cvtsi2sd xmm0, dword [ebp - 0x23dc]
movsd xmm1, qword [ebp - 0xc060]
addsd xmm1, xmm0
movsd qword [ebp - 0xc068], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc068]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x489ef6
mov ecx, dword [ebp - 0x23dc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc060]
addsd xmm1, xmm0
movsd qword [ebp - 0xc060], xmm1
jmp 0x489df2
cvtsi2sd xmm0, dword [ebp - 0x23dc]
movsd xmm1, qword [ebp - 0xc060]
addsd xmm1, xmm0
movsd qword [ebp - 0xc070], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc070]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x489f53
mov eax, dword [ebp - 0x23dc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc060]
addsd xmm1, xmm0
movsd qword [ebp - 0xc060], xmm1
jmp 0x489f6c
mov ecx, 1
test ecx, ecx
je 0x489f68
jmp 0x48a028
jmp 0x489f8f
cvtsi2sd xmm0, dword [ebp - 0x23dc]
movsd xmm1, qword [ebp - 0xc060]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x23e0], edx
jmp 0x48a032
xor eax, eax
je 0x489f99
jmp 0x489fa8
jmp 0x489df2
jmp 0x489df2
mov ecx, 2
test ecx, ecx
je 0x48a028
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x23e4], eax
cvtsi2sd xmm0, dword [ebp - 0x23e4]
mov eax, dword [ebp - 0x23e4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc060]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x23e0], ecx
jmp 0x48a032
mov dword [ebp - 0x23e0], 8
mov edx, dword [ebp - 0x23d8]
shl edx, 2
add edx, dword [ebp - 0x23d4]
mov eax, dword [ebp - 0x23e0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x23d8]
shl ecx, 2
add ecx, dword [ebp - 0x23d4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48ab78
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48a36a
xor eax, eax
je 0x48a0dc
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48a118
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc8]
movsd qword [ebp - 0xc078], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48a2b8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48a2b8
mov dword [ebp - 0x23e8], 0
jmp 0x48a197
cmp dword [ebp - 0x23e8], 0xf
jae 0x48a2b3
cvtsi2sd xmm0, dword [ebp - 0x23e8]
movsd xmm1, qword [ebp - 0xc078]
addsd xmm1, xmm0
movsd qword [ebp - 0xc080], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc080]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48a206
mov ecx, dword [ebp - 0x23e8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc078]
addsd xmm1, xmm0
movsd qword [ebp - 0xc078], xmm1
jmp 0x48a102
cvtsi2sd xmm0, dword [ebp - 0x23e8]
movsd xmm1, qword [ebp - 0xc078]
addsd xmm1, xmm0
movsd qword [ebp - 0xc088], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc088]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48a263
mov eax, dword [ebp - 0x23e8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc078]
addsd xmm1, xmm0
movsd qword [ebp - 0xc078], xmm1
jmp 0x48a27c
mov ecx, 1
test ecx, ecx
je 0x48a278
jmp 0x48a338
jmp 0x48a29f
cvtsi2sd xmm0, dword [ebp - 0x23e8]
movsd xmm1, qword [ebp - 0xc078]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x23ec], edx
jmp 0x48a342
xor eax, eax
je 0x48a2a9
jmp 0x48a2b8
jmp 0x48a102
jmp 0x48a102
mov ecx, 2
test ecx, ecx
je 0x48a338
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x23f0], eax
cvtsi2sd xmm0, dword [ebp - 0x23f0]
mov eax, dword [ebp - 0x23f0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc078]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x23ec], ecx
jmp 0x48a342
mov dword [ebp - 0x23ec], 8
mov edx, dword [ebp - 0x23d8]
shl edx, 2
add edx, dword [ebp - 0x23d4]
mov eax, dword [ebp - 0x23ec]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x23d8]
shl ecx, 2
add ecx, dword [ebp - 0x23d4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48a635
xor eax, eax
je 0x48a3a7
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48a3e3
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc0]
movsd qword [ebp - 0xc090], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48a583
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48a583
mov dword [ebp - 0x23f4], 0
jmp 0x48a462
cmp dword [ebp - 0x23f4], 0xf
jae 0x48a57e
cvtsi2sd xmm0, dword [ebp - 0x23f4]
movsd xmm1, qword [ebp - 0xc090]
addsd xmm1, xmm0
movsd qword [ebp - 0xc098], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc098]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48a4d1
mov ecx, dword [ebp - 0x23f4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc090]
addsd xmm1, xmm0
movsd qword [ebp - 0xc090], xmm1
jmp 0x48a3cd
cvtsi2sd xmm0, dword [ebp - 0x23f4]
movsd xmm1, qword [ebp - 0xc090]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc0a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48a52e
mov eax, dword [ebp - 0x23f4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc090]
addsd xmm1, xmm0
movsd qword [ebp - 0xc090], xmm1
jmp 0x48a547
mov ecx, 1
test ecx, ecx
je 0x48a543
jmp 0x48a603
jmp 0x48a56a
cvtsi2sd xmm0, dword [ebp - 0x23f4]
movsd xmm1, qword [ebp - 0xc090]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x23f8], edx
jmp 0x48a60d
xor eax, eax
je 0x48a574
jmp 0x48a583
jmp 0x48a3cd
jmp 0x48a3cd
mov ecx, 2
test ecx, ecx
je 0x48a603
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x23fc], eax
cvtsi2sd xmm0, dword [ebp - 0x23fc]
mov eax, dword [ebp - 0x23fc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc090]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x23f8], ecx
jmp 0x48a60d
mov dword [ebp - 0x23f8], 8
mov edx, dword [ebp - 0x23d8]
shl edx, 2
add edx, dword [ebp - 0x23d4]
mov eax, dword [ebp - 0x23f8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x23d8]
shl ecx, 2
add ecx, dword [ebp - 0x23d4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x23d8]
add edx, 0xffffffc4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc0a8], xmm0
xor eax, eax
je 0x48a64f
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x48a68b
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc0a8]
movsd qword [ebp - 0xc0b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48a82b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48a82b
mov dword [ebp - 0x2400], 0
jmp 0x48a70a
cmp dword [ebp - 0x2400], 0xf
jae 0x48a826
cvtsi2sd xmm0, dword [ebp - 0x2400]
movsd xmm1, qword [ebp - 0xc0b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc0b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48a779
mov ecx, dword [ebp - 0x2400]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc0b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0b0], xmm1
jmp 0x48a675
cvtsi2sd xmm0, dword [ebp - 0x2400]
movsd xmm1, qword [ebp - 0xc0b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc0c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48a7d6
mov eax, dword [ebp - 0x2400]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc0b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0b0], xmm1
jmp 0x48a7ef
mov ecx, 1
test ecx, ecx
je 0x48a7eb
jmp 0x48a8ab
jmp 0x48a812
cvtsi2sd xmm0, dword [ebp - 0x2400]
movsd xmm1, qword [ebp - 0xc0b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2404], edx
jmp 0x48a8b5
xor eax, eax
je 0x48a81c
jmp 0x48a82b
jmp 0x48a675
jmp 0x48a675
mov ecx, 2
test ecx, ecx
je 0x48a8ab
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2408], eax
cvtsi2sd xmm0, dword [ebp - 0x2408]
mov eax, dword [ebp - 0x2408]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc0b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2404], ecx
jmp 0x48a8b5
mov dword [ebp - 0x2404], 8
mov edx, dword [ebp - 0x23d8]
add edx, 0xffffffc4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc0c8], xmm0
xor eax, eax
je 0x48a8cf
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x48a90b
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc0c8]
movsd qword [ebp - 0xc0d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48aaab
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48aaab
mov dword [ebp - 0x240c], 0
jmp 0x48a98a
cmp dword [ebp - 0x240c], 0xf
jae 0x48aaa6
cvtsi2sd xmm0, dword [ebp - 0x240c]
movsd xmm1, qword [ebp - 0xc0d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc0d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48a9f9
mov ecx, dword [ebp - 0x240c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc0d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0d0], xmm1
jmp 0x48a8f5
cvtsi2sd xmm0, dword [ebp - 0x240c]
movsd xmm1, qword [ebp - 0xc0d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc0e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48aa56
mov eax, dword [ebp - 0x240c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc0d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0d0], xmm1
jmp 0x48aa6f
mov ecx, 1
test ecx, ecx
je 0x48aa6b
jmp 0x48ab2b
jmp 0x48aa92
cvtsi2sd xmm0, dword [ebp - 0x240c]
movsd xmm1, qword [ebp - 0xc0d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2410], edx
jmp 0x48ab35
xor eax, eax
je 0x48aa9c
jmp 0x48aaab
jmp 0x48a8f5
jmp 0x48a8f5
mov ecx, 2
test ecx, ecx
je 0x48ab2b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2414], eax
cvtsi2sd xmm0, dword [ebp - 0x2414]
mov eax, dword [ebp - 0x2414]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc0d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2410], ecx
jmp 0x48ab35
mov dword [ebp - 0x2410], 8
mov edx, dword [ebp - 0x23d8]
shl edx, 2
add edx, dword [ebp - 0x23d4]
mov eax, dword [ebp - 0x2404]
add eax, dword [edx]
mov ecx, dword [ebp - 0x23d8]
shl ecx, 2
add ecx, dword [ebp - 0x23d4]
mov edx, dword [ebp - 0x2410]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x23d8]
shl ecx, 2
add ecx, dword [ebp - 0x23d4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48ae43
xor eax, eax
je 0x48abb5
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48abf1
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db8]
movsd qword [ebp - 0xc0e8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48ad91
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48ad91
mov dword [ebp - 0x2418], 0
jmp 0x48ac70
cmp dword [ebp - 0x2418], 0xf
jae 0x48ad8c
cvtsi2sd xmm0, dword [ebp - 0x2418]
movsd xmm1, qword [ebp - 0xc0e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0f0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc0f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48acdf
mov ecx, dword [ebp - 0x2418]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc0e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0e8], xmm1
jmp 0x48abdb
cvtsi2sd xmm0, dword [ebp - 0x2418]
movsd xmm1, qword [ebp - 0xc0e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0f8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc0f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48ad3c
mov eax, dword [ebp - 0x2418]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc0e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc0e8], xmm1
jmp 0x48ad55
mov ecx, 1
test ecx, ecx
je 0x48ad51
jmp 0x48ae11
jmp 0x48ad78
cvtsi2sd xmm0, dword [ebp - 0x2418]
movsd xmm1, qword [ebp - 0xc0e8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x241c], edx
jmp 0x48ae1b
xor eax, eax
je 0x48ad82
jmp 0x48ad91
jmp 0x48abdb
jmp 0x48abdb
mov ecx, 2
test ecx, ecx
je 0x48ae11
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2420], eax
cvtsi2sd xmm0, dword [ebp - 0x2420]
mov eax, dword [ebp - 0x2420]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc0e8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x241c], ecx
jmp 0x48ae1b
mov dword [ebp - 0x241c], 8
mov edx, dword [ebp - 0x23d8]
shl edx, 2
add edx, dword [ebp - 0x23d4]
mov eax, dword [ebp - 0x241c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x23d8]
shl ecx, 2
add ecx, dword [ebp - 0x23d4]
mov dword [ecx], eax
jmp 0x489d73
mov edx, dword [ebp - 0x23d0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x23d0]
mov dword [ebp - 0x2424], eax
mov ecx, dword [ebp - 0x2424]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2428], ecx
mov edx, dword [ebp - 0x2428]
mov dword [ebp - 0x23cc], edx
xor eax, eax
mov byte [ebp - 0x62], al
mov ecx, 6
mov esi, 0x5effa4
lea edi, [ebp - 0x16664]
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
xor ecx, ecx
mov byte [ebp - 0x63], cl
lea ecx, [ebp - 0x63]
call fcn.00424ff0
mov dword [ebp - 0x242c], eax
mov edx, dword [ebp - 0x242c]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x48bfac
mov ecx, dword [ebp - 0x242c]
mov dword [ebp - 0x2430], ecx
mov dword [ebp - 0x2434], 0
jmp 0x48aee6
mov edx, dword [ebp - 0x2434]
add edx, 1
mov dword [ebp - 0x2434], edx
cmp dword [ebp - 0x2434], 1
jae 0x48bfac
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48b1be
xor eax, eax
je 0x48af30
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x48af6c
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736dd0]
movsd qword [ebp - 0xc100], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48b10c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48b10c
mov dword [ebp - 0x2438], 0
jmp 0x48afeb
cmp dword [ebp - 0x2438], 0xf
jae 0x48b107
cvtsi2sd xmm0, dword [ebp - 0x2438]
movsd xmm1, qword [ebp - 0xc100]
addsd xmm1, xmm0
movsd qword [ebp - 0xc108], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc108]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48b05a
mov ecx, dword [ebp - 0x2438]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc100]
addsd xmm1, xmm0
movsd qword [ebp - 0xc100], xmm1
jmp 0x48af56
cvtsi2sd xmm0, dword [ebp - 0x2438]
movsd xmm1, qword [ebp - 0xc100]
addsd xmm1, xmm0
movsd qword [ebp - 0xc110], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc110]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48b0b7
mov eax, dword [ebp - 0x2438]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc100]
addsd xmm1, xmm0
movsd qword [ebp - 0xc100], xmm1
jmp 0x48b0d0
mov ecx, 1
test ecx, ecx
je 0x48b0cc
jmp 0x48b18c
jmp 0x48b0f3
cvtsi2sd xmm0, dword [ebp - 0x2438]
movsd xmm1, qword [ebp - 0xc100]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x243c], edx
jmp 0x48b196
xor eax, eax
je 0x48b0fd
jmp 0x48b10c
jmp 0x48af56
jmp 0x48af56
mov ecx, 2
test ecx, ecx
je 0x48b18c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2440], eax
cvtsi2sd xmm0, dword [ebp - 0x2440]
mov eax, dword [ebp - 0x2440]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc100]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x243c], ecx
jmp 0x48b196
mov dword [ebp - 0x243c], 8
mov edx, dword [ebp - 0x2434]
shl edx, 2
add edx, dword [ebp - 0x2430]
mov eax, dword [ebp - 0x243c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2434]
shl ecx, 2
add ecx, dword [ebp - 0x2430]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48bcdc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48b4ce
xor eax, eax
je 0x48b240
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48b27c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc8]
movsd qword [ebp - 0xc118], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48b41c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48b41c
mov dword [ebp - 0x2444], 0
jmp 0x48b2fb
cmp dword [ebp - 0x2444], 0xf
jae 0x48b417
cvtsi2sd xmm0, dword [ebp - 0x2444]
movsd xmm1, qword [ebp - 0xc118]
addsd xmm1, xmm0
movsd qword [ebp - 0xc120], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc120]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48b36a
mov ecx, dword [ebp - 0x2444]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc118]
addsd xmm1, xmm0
movsd qword [ebp - 0xc118], xmm1
jmp 0x48b266
cvtsi2sd xmm0, dword [ebp - 0x2444]
movsd xmm1, qword [ebp - 0xc118]
addsd xmm1, xmm0
movsd qword [ebp - 0xc128], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc128]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48b3c7
mov eax, dword [ebp - 0x2444]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc118]
addsd xmm1, xmm0
movsd qword [ebp - 0xc118], xmm1
jmp 0x48b3e0
mov ecx, 1
test ecx, ecx
je 0x48b3dc
jmp 0x48b49c
jmp 0x48b403
cvtsi2sd xmm0, dword [ebp - 0x2444]
movsd xmm1, qword [ebp - 0xc118]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2448], edx
jmp 0x48b4a6
xor eax, eax
je 0x48b40d
jmp 0x48b41c
jmp 0x48b266
jmp 0x48b266
mov ecx, 2
test ecx, ecx
je 0x48b49c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x244c], eax
cvtsi2sd xmm0, dword [ebp - 0x244c]
mov eax, dword [ebp - 0x244c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc118]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2448], ecx
jmp 0x48b4a6
mov dword [ebp - 0x2448], 8
mov edx, dword [ebp - 0x2434]
shl edx, 2
add edx, dword [ebp - 0x2430]
mov eax, dword [ebp - 0x2448]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2434]
shl ecx, 2
add ecx, dword [ebp - 0x2430]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48b799
xor eax, eax
je 0x48b50b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48b547
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc0]
movsd qword [ebp - 0xc130], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48b6e7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48b6e7
mov dword [ebp - 0x2450], 0
jmp 0x48b5c6
cmp dword [ebp - 0x2450], 0xf
jae 0x48b6e2
cvtsi2sd xmm0, dword [ebp - 0x2450]
movsd xmm1, qword [ebp - 0xc130]
addsd xmm1, xmm0
movsd qword [ebp - 0xc138], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc138]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48b635
mov ecx, dword [ebp - 0x2450]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc130]
addsd xmm1, xmm0
movsd qword [ebp - 0xc130], xmm1
jmp 0x48b531
cvtsi2sd xmm0, dword [ebp - 0x2450]
movsd xmm1, qword [ebp - 0xc130]
addsd xmm1, xmm0
movsd qword [ebp - 0xc140], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc140]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48b692
mov eax, dword [ebp - 0x2450]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc130]
addsd xmm1, xmm0
movsd qword [ebp - 0xc130], xmm1
jmp 0x48b6ab
mov ecx, 1
test ecx, ecx
je 0x48b6a7
jmp 0x48b767
jmp 0x48b6ce
cvtsi2sd xmm0, dword [ebp - 0x2450]
movsd xmm1, qword [ebp - 0xc130]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2454], edx
jmp 0x48b771
xor eax, eax
je 0x48b6d8
jmp 0x48b6e7
jmp 0x48b531
jmp 0x48b531
mov ecx, 2
test ecx, ecx
je 0x48b767
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2458], eax
cvtsi2sd xmm0, dword [ebp - 0x2458]
mov eax, dword [ebp - 0x2458]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc130]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2454], ecx
jmp 0x48b771
mov dword [ebp - 0x2454], 8
mov edx, dword [ebp - 0x2434]
shl edx, 2
add edx, dword [ebp - 0x2430]
mov eax, dword [ebp - 0x2454]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2434]
shl ecx, 2
add ecx, dword [ebp - 0x2430]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2434]
add edx, 0xffffffc4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc148], xmm0
xor eax, eax
je 0x48b7b3
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x48b7ef
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc148]
movsd qword [ebp - 0xc150], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48b98f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48b98f
mov dword [ebp - 0x245c], 0
jmp 0x48b86e
cmp dword [ebp - 0x245c], 0xf
jae 0x48b98a
cvtsi2sd xmm0, dword [ebp - 0x245c]
movsd xmm1, qword [ebp - 0xc150]
addsd xmm1, xmm0
movsd qword [ebp - 0xc158], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc158]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48b8dd
mov ecx, dword [ebp - 0x245c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc150]
addsd xmm1, xmm0
movsd qword [ebp - 0xc150], xmm1
jmp 0x48b7d9
cvtsi2sd xmm0, dword [ebp - 0x245c]
movsd xmm1, qword [ebp - 0xc150]
addsd xmm1, xmm0
movsd qword [ebp - 0xc160], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc160]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48b93a
mov eax, dword [ebp - 0x245c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc150]
addsd xmm1, xmm0
movsd qword [ebp - 0xc150], xmm1
jmp 0x48b953
mov ecx, 1
test ecx, ecx
je 0x48b94f
jmp 0x48ba0f
jmp 0x48b976
cvtsi2sd xmm0, dword [ebp - 0x245c]
movsd xmm1, qword [ebp - 0xc150]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2460], edx
jmp 0x48ba19
xor eax, eax
je 0x48b980
jmp 0x48b98f
jmp 0x48b7d9
jmp 0x48b7d9
mov ecx, 2
test ecx, ecx
je 0x48ba0f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2464], eax
cvtsi2sd xmm0, dword [ebp - 0x2464]
mov eax, dword [ebp - 0x2464]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc150]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2460], ecx
jmp 0x48ba19
mov dword [ebp - 0x2460], 8
mov edx, dword [ebp - 0x2434]
add edx, 0xffffffc4
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc168], xmm0
xor eax, eax
je 0x48ba33
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x48ba6f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc168]
movsd qword [ebp - 0xc170], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48bc0f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48bc0f
mov dword [ebp - 0x2468], 0
jmp 0x48baee
cmp dword [ebp - 0x2468], 0xf
jae 0x48bc0a
cvtsi2sd xmm0, dword [ebp - 0x2468]
movsd xmm1, qword [ebp - 0xc170]
addsd xmm1, xmm0
movsd qword [ebp - 0xc178], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc178]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48bb5d
mov ecx, dword [ebp - 0x2468]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc170]
addsd xmm1, xmm0
movsd qword [ebp - 0xc170], xmm1
jmp 0x48ba59
cvtsi2sd xmm0, dword [ebp - 0x2468]
movsd xmm1, qword [ebp - 0xc170]
addsd xmm1, xmm0
movsd qword [ebp - 0xc180], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc180]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48bbba
mov eax, dword [ebp - 0x2468]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc170]
addsd xmm1, xmm0
movsd qword [ebp - 0xc170], xmm1
jmp 0x48bbd3
mov ecx, 1
test ecx, ecx
je 0x48bbcf
jmp 0x48bc8f
jmp 0x48bbf6
cvtsi2sd xmm0, dword [ebp - 0x2468]
movsd xmm1, qword [ebp - 0xc170]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x246c], edx
jmp 0x48bc99
xor eax, eax
je 0x48bc00
jmp 0x48bc0f
jmp 0x48ba59
jmp 0x48ba59
mov ecx, 2
test ecx, ecx
je 0x48bc8f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2470], eax
cvtsi2sd xmm0, dword [ebp - 0x2470]
mov eax, dword [ebp - 0x2470]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc170]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x246c], ecx
jmp 0x48bc99
mov dword [ebp - 0x246c], 8
mov edx, dword [ebp - 0x2434]
shl edx, 2
add edx, dword [ebp - 0x2430]
mov eax, dword [ebp - 0x2460]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2434]
shl ecx, 2
add ecx, dword [ebp - 0x2430]
mov edx, dword [ebp - 0x246c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2434]
shl ecx, 2
add ecx, dword [ebp - 0x2430]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48bfa7
xor eax, eax
je 0x48bd19
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48bd55
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db8]
movsd qword [ebp - 0xc188], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48bef5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48bef5
mov dword [ebp - 0x2474], 0
jmp 0x48bdd4
cmp dword [ebp - 0x2474], 0xf
jae 0x48bef0
cvtsi2sd xmm0, dword [ebp - 0x2474]
movsd xmm1, qword [ebp - 0xc188]
addsd xmm1, xmm0
movsd qword [ebp - 0xc190], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc190]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48be43
mov ecx, dword [ebp - 0x2474]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc188]
addsd xmm1, xmm0
movsd qword [ebp - 0xc188], xmm1
jmp 0x48bd3f
cvtsi2sd xmm0, dword [ebp - 0x2474]
movsd xmm1, qword [ebp - 0xc188]
addsd xmm1, xmm0
movsd qword [ebp - 0xc198], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc198]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48bea0
mov eax, dword [ebp - 0x2474]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc188]
addsd xmm1, xmm0
movsd qword [ebp - 0xc188], xmm1
jmp 0x48beb9
mov ecx, 1
test ecx, ecx
je 0x48beb5
jmp 0x48bf75
jmp 0x48bedc
cvtsi2sd xmm0, dword [ebp - 0x2474]
movsd xmm1, qword [ebp - 0xc188]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2478], edx
jmp 0x48bf7f
xor eax, eax
je 0x48bee6
jmp 0x48bef5
jmp 0x48bd3f
jmp 0x48bd3f
mov ecx, 2
test ecx, ecx
je 0x48bf75
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x247c], eax
cvtsi2sd xmm0, dword [ebp - 0x247c]
mov eax, dword [ebp - 0x247c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc188]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2478], ecx
jmp 0x48bf7f
mov dword [ebp - 0x2478], 8
mov edx, dword [ebp - 0x2434]
shl edx, 2
add edx, dword [ebp - 0x2430]
mov eax, dword [ebp - 0x2478]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2434]
shl ecx, 2
add ecx, dword [ebp - 0x2430]
mov dword [ecx], eax
jmp 0x48aed7
mov edx, dword [ebp - 0x242c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x242c]
mov dword [ebp - 0x2480], eax
mov ecx, dword [ebp - 0x2480]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2484], ecx
mov edx, dword [ebp - 0x2484]
mov dword [ebp - 0x2488], edx
xor eax, eax
mov byte [ebp - 0x64], al
lea ecx, [ebp - 0x64]
call fcn.00424fc0
mov dword [ebp - 0x248c], eax
mov ecx, dword [ebp - 0x248c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x48d0f7
mov eax, dword [ebp - 0x248c]
mov dword [ebp - 0x2490], eax
mov dword [ebp - 0x2494], 0
jmp 0x48c031
mov ecx, dword [ebp - 0x2494]
add ecx, 1
mov dword [ebp - 0x2494], ecx
cmp dword [ebp - 0x2494], 1
jae 0x48d0f7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48c309
xor eax, eax
je 0x48c07b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48c0b7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc8]
movsd qword [ebp - 0xc1a0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48c257
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48c257
mov dword [ebp - 0x2498], 0
jmp 0x48c136
cmp dword [ebp - 0x2498], 0xf
jae 0x48c252
cvtsi2sd xmm0, dword [ebp - 0x2498]
movsd xmm1, qword [ebp - 0xc1a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1a8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc1a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48c1a5
mov ecx, dword [ebp - 0x2498]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc1a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1a0], xmm1
jmp 0x48c0a1
cvtsi2sd xmm0, dword [ebp - 0x2498]
movsd xmm1, qword [ebp - 0xc1a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1b0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc1b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48c202
mov eax, dword [ebp - 0x2498]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc1a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1a0], xmm1
jmp 0x48c21b
mov ecx, 1
test ecx, ecx
je 0x48c217
jmp 0x48c2d7
jmp 0x48c23e
cvtsi2sd xmm0, dword [ebp - 0x2498]
movsd xmm1, qword [ebp - 0xc1a0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x249c], edx
jmp 0x48c2e1
xor eax, eax
je 0x48c248
jmp 0x48c257
jmp 0x48c0a1
jmp 0x48c0a1
mov ecx, 2
test ecx, ecx
je 0x48c2d7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x24a0], eax
cvtsi2sd xmm0, dword [ebp - 0x24a0]
mov eax, dword [ebp - 0x24a0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc1a0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x249c], ecx
jmp 0x48c2e1
mov dword [ebp - 0x249c], 8
mov edx, dword [ebp - 0x2494]
shl edx, 2
add edx, dword [ebp - 0x2490]
mov eax, dword [ebp - 0x249c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2494]
shl ecx, 2
add ecx, dword [ebp - 0x2490]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48ce27
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48c619
xor eax, eax
je 0x48c38b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48c3c7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc0]
movsd qword [ebp - 0xc1b8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48c567
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48c567
mov dword [ebp - 0x24a4], 0
jmp 0x48c446
cmp dword [ebp - 0x24a4], 0xf
jae 0x48c562
cvtsi2sd xmm0, dword [ebp - 0x24a4]
movsd xmm1, qword [ebp - 0xc1b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1c0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc1c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48c4b5
mov ecx, dword [ebp - 0x24a4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc1b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1b8], xmm1
jmp 0x48c3b1
cvtsi2sd xmm0, dword [ebp - 0x24a4]
movsd xmm1, qword [ebp - 0xc1b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1c8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc1c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48c512
mov eax, dword [ebp - 0x24a4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc1b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1b8], xmm1
jmp 0x48c52b
mov ecx, 1
test ecx, ecx
je 0x48c527
jmp 0x48c5e7
jmp 0x48c54e
cvtsi2sd xmm0, dword [ebp - 0x24a4]
movsd xmm1, qword [ebp - 0xc1b8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x24a8], edx
jmp 0x48c5f1
xor eax, eax
je 0x48c558
jmp 0x48c567
jmp 0x48c3b1
jmp 0x48c3b1
mov ecx, 2
test ecx, ecx
je 0x48c5e7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x24ac], eax
cvtsi2sd xmm0, dword [ebp - 0x24ac]
mov eax, dword [ebp - 0x24ac]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc1b8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x24a8], ecx
jmp 0x48c5f1
mov dword [ebp - 0x24a8], 8
mov edx, dword [ebp - 0x2494]
shl edx, 2
add edx, dword [ebp - 0x2490]
mov eax, dword [ebp - 0x24a8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2494]
shl ecx, 2
add ecx, dword [ebp - 0x2490]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48c8e4
xor eax, eax
je 0x48c656
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48c692
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db8]
movsd qword [ebp - 0xc1d0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48c832
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48c832
mov dword [ebp - 0x24b0], 0
jmp 0x48c711
cmp dword [ebp - 0x24b0], 0xf
jae 0x48c82d
cvtsi2sd xmm0, dword [ebp - 0x24b0]
movsd xmm1, qword [ebp - 0xc1d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc1d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48c780
mov ecx, dword [ebp - 0x24b0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc1d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1d0], xmm1
jmp 0x48c67c
cvtsi2sd xmm0, dword [ebp - 0x24b0]
movsd xmm1, qword [ebp - 0xc1d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc1e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48c7dd
mov eax, dword [ebp - 0x24b0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc1d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1d0], xmm1
jmp 0x48c7f6
mov ecx, 1
test ecx, ecx
je 0x48c7f2
jmp 0x48c8b2
jmp 0x48c819
cvtsi2sd xmm0, dword [ebp - 0x24b0]
movsd xmm1, qword [ebp - 0xc1d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x24b4], edx
jmp 0x48c8bc
xor eax, eax
je 0x48c823
jmp 0x48c832
jmp 0x48c67c
jmp 0x48c67c
mov ecx, 2
test ecx, ecx
je 0x48c8b2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x24b8], eax
cvtsi2sd xmm0, dword [ebp - 0x24b8]
mov eax, dword [ebp - 0x24b8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc1d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x24b4], ecx
jmp 0x48c8bc
mov dword [ebp - 0x24b4], 8
mov edx, dword [ebp - 0x2494]
shl edx, 2
add edx, dword [ebp - 0x2490]
mov eax, dword [ebp - 0x24b4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2494]
shl ecx, 2
add ecx, dword [ebp - 0x2490]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2494]
add edx, 0xffffffc5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc1e8], xmm0
xor eax, eax
je 0x48c8fe
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x48c93a
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc1e8]
movsd qword [ebp - 0xc1f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48cada
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48cada
mov dword [ebp - 0x24bc], 0
jmp 0x48c9b9
cmp dword [ebp - 0x24bc], 0xf
jae 0x48cad5
cvtsi2sd xmm0, dword [ebp - 0x24bc]
movsd xmm1, qword [ebp - 0xc1f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc1f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48ca28
mov ecx, dword [ebp - 0x24bc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc1f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1f0], xmm1
jmp 0x48c924
cvtsi2sd xmm0, dword [ebp - 0x24bc]
movsd xmm1, qword [ebp - 0xc1f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc200], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc200]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48ca85
mov eax, dword [ebp - 0x24bc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc1f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc1f0], xmm1
jmp 0x48ca9e
mov ecx, 1
test ecx, ecx
je 0x48ca9a
jmp 0x48cb5a
jmp 0x48cac1
cvtsi2sd xmm0, dword [ebp - 0x24bc]
movsd xmm1, qword [ebp - 0xc1f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x24c0], edx
jmp 0x48cb64
xor eax, eax
je 0x48cacb
jmp 0x48cada
jmp 0x48c924
jmp 0x48c924
mov ecx, 2
test ecx, ecx
je 0x48cb5a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x24c4], eax
cvtsi2sd xmm0, dword [ebp - 0x24c4]
mov eax, dword [ebp - 0x24c4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc1f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x24c0], ecx
jmp 0x48cb64
mov dword [ebp - 0x24c0], 8
mov edx, dword [ebp - 0x2494]
add edx, 0xffffffc5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc208], xmm0
xor eax, eax
je 0x48cb7e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x48cbba
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc208]
movsd qword [ebp - 0xc210], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48cd5a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48cd5a
mov dword [ebp - 0x24c8], 0
jmp 0x48cc39
cmp dword [ebp - 0x24c8], 0xf
jae 0x48cd55
cvtsi2sd xmm0, dword [ebp - 0x24c8]
movsd xmm1, qword [ebp - 0xc210]
addsd xmm1, xmm0
movsd qword [ebp - 0xc218], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc218]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48cca8
mov ecx, dword [ebp - 0x24c8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc210]
addsd xmm1, xmm0
movsd qword [ebp - 0xc210], xmm1
jmp 0x48cba4
cvtsi2sd xmm0, dword [ebp - 0x24c8]
movsd xmm1, qword [ebp - 0xc210]
addsd xmm1, xmm0
movsd qword [ebp - 0xc220], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc220]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48cd05
mov eax, dword [ebp - 0x24c8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc210]
addsd xmm1, xmm0
movsd qword [ebp - 0xc210], xmm1
jmp 0x48cd1e
mov ecx, 1
test ecx, ecx
je 0x48cd1a
jmp 0x48cdda
jmp 0x48cd41
cvtsi2sd xmm0, dword [ebp - 0x24c8]
movsd xmm1, qword [ebp - 0xc210]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x24cc], edx
jmp 0x48cde4
xor eax, eax
je 0x48cd4b
jmp 0x48cd5a
jmp 0x48cba4
jmp 0x48cba4
mov ecx, 2
test ecx, ecx
je 0x48cdda
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x24d0], eax
cvtsi2sd xmm0, dword [ebp - 0x24d0]
mov eax, dword [ebp - 0x24d0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc210]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x24cc], ecx
jmp 0x48cde4
mov dword [ebp - 0x24cc], 8
mov edx, dword [ebp - 0x2494]
shl edx, 2
add edx, dword [ebp - 0x2490]
mov eax, dword [ebp - 0x24c0]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2494]
shl ecx, 2
add ecx, dword [ebp - 0x2490]
mov edx, dword [ebp - 0x24cc]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2494]
shl ecx, 2
add ecx, dword [ebp - 0x2490]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48d0f2
xor eax, eax
je 0x48ce64
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48cea0
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db0]
movsd qword [ebp - 0xc228], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48d040
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48d040
mov dword [ebp - 0x24d4], 0
jmp 0x48cf1f
cmp dword [ebp - 0x24d4], 0xf
jae 0x48d03b
cvtsi2sd xmm0, dword [ebp - 0x24d4]
movsd xmm1, qword [ebp - 0xc228]
addsd xmm1, xmm0
movsd qword [ebp - 0xc230], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc230]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48cf8e
mov ecx, dword [ebp - 0x24d4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc228]
addsd xmm1, xmm0
movsd qword [ebp - 0xc228], xmm1
jmp 0x48ce8a
cvtsi2sd xmm0, dword [ebp - 0x24d4]
movsd xmm1, qword [ebp - 0xc228]
addsd xmm1, xmm0
movsd qword [ebp - 0xc238], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc238]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48cfeb
mov eax, dword [ebp - 0x24d4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc228]
addsd xmm1, xmm0
movsd qword [ebp - 0xc228], xmm1
jmp 0x48d004
mov ecx, 1
test ecx, ecx
je 0x48d000
jmp 0x48d0c0
jmp 0x48d027
cvtsi2sd xmm0, dword [ebp - 0x24d4]
movsd xmm1, qword [ebp - 0xc228]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x24d8], edx
jmp 0x48d0ca
xor eax, eax
je 0x48d031
jmp 0x48d040
jmp 0x48ce8a
jmp 0x48ce8a
mov ecx, 2
test ecx, ecx
je 0x48d0c0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x24dc], eax
cvtsi2sd xmm0, dword [ebp - 0x24dc]
mov eax, dword [ebp - 0x24dc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc228]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x24d8], ecx
jmp 0x48d0ca
mov dword [ebp - 0x24d8], 8
mov edx, dword [ebp - 0x2494]
shl edx, 2
add edx, dword [ebp - 0x2490]
mov eax, dword [ebp - 0x24d8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2494]
shl ecx, 2
add ecx, dword [ebp - 0x2490]
mov dword [ecx], eax
jmp 0x48c022
mov edx, dword [ebp - 0x248c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x248c]
mov dword [ebp - 0x24e0], eax
mov ecx, dword [ebp - 0x24e0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x24e4], ecx
mov edx, dword [ebp - 0x24e4]
mov dword [ebp - 0x24e8], edx
xor eax, eax
mov byte [ebp - 0x65], al
lea ecx, [ebp - 0x65]
call fcn.00424f90
mov dword [ebp - 0x24ec], eax
mov ecx, dword [ebp - 0x24ec]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x48e242
mov eax, dword [ebp - 0x24ec]
mov dword [ebp - 0x24f0], eax
mov dword [ebp - 0x24f4], 0
jmp 0x48d17c
mov ecx, dword [ebp - 0x24f4]
add ecx, 1
mov dword [ebp - 0x24f4], ecx
cmp dword [ebp - 0x24f4], 1
jae 0x48e242
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48d454
xor eax, eax
je 0x48d1c6
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48d202
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc8]
movsd qword [ebp - 0xc240], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48d3a2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48d3a2
mov dword [ebp - 0x24f8], 0
jmp 0x48d281
cmp dword [ebp - 0x24f8], 0xf
jae 0x48d39d
cvtsi2sd xmm0, dword [ebp - 0x24f8]
movsd xmm1, qword [ebp - 0xc240]
addsd xmm1, xmm0
movsd qword [ebp - 0xc248], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc248]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48d2f0
mov ecx, dword [ebp - 0x24f8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc240]
addsd xmm1, xmm0
movsd qword [ebp - 0xc240], xmm1
jmp 0x48d1ec
cvtsi2sd xmm0, dword [ebp - 0x24f8]
movsd xmm1, qword [ebp - 0xc240]
addsd xmm1, xmm0
movsd qword [ebp - 0xc250], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc250]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48d34d
mov eax, dword [ebp - 0x24f8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc240]
addsd xmm1, xmm0
movsd qword [ebp - 0xc240], xmm1
jmp 0x48d366
mov ecx, 1
test ecx, ecx
je 0x48d362
jmp 0x48d422
jmp 0x48d389
cvtsi2sd xmm0, dword [ebp - 0x24f8]
movsd xmm1, qword [ebp - 0xc240]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x24fc], edx
jmp 0x48d42c
xor eax, eax
je 0x48d393
jmp 0x48d3a2
jmp 0x48d1ec
jmp 0x48d1ec
mov ecx, 2
test ecx, ecx
je 0x48d422
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2500], eax
cvtsi2sd xmm0, dword [ebp - 0x2500]
mov eax, dword [ebp - 0x2500]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc240]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x24fc], ecx
jmp 0x48d42c
mov dword [ebp - 0x24fc], 8
mov edx, dword [ebp - 0x24f4]
shl edx, 2
add edx, dword [ebp - 0x24f0]
mov eax, dword [ebp - 0x24fc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x24f4]
shl ecx, 2
add ecx, dword [ebp - 0x24f0]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48df72
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48d764
xor eax, eax
je 0x48d4d6
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48d512
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc0]
movsd qword [ebp - 0xc258], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48d6b2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48d6b2
mov dword [ebp - 0x2504], 0
jmp 0x48d591
cmp dword [ebp - 0x2504], 0xf
jae 0x48d6ad
cvtsi2sd xmm0, dword [ebp - 0x2504]
movsd xmm1, qword [ebp - 0xc258]
addsd xmm1, xmm0
movsd qword [ebp - 0xc260], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc260]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48d600
mov ecx, dword [ebp - 0x2504]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc258]
addsd xmm1, xmm0
movsd qword [ebp - 0xc258], xmm1
jmp 0x48d4fc
cvtsi2sd xmm0, dword [ebp - 0x2504]
movsd xmm1, qword [ebp - 0xc258]
addsd xmm1, xmm0
movsd qword [ebp - 0xc268], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc268]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48d65d
mov eax, dword [ebp - 0x2504]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc258]
addsd xmm1, xmm0
movsd qword [ebp - 0xc258], xmm1
jmp 0x48d676
mov ecx, 1
test ecx, ecx
je 0x48d672
jmp 0x48d732
jmp 0x48d699
cvtsi2sd xmm0, dword [ebp - 0x2504]
movsd xmm1, qword [ebp - 0xc258]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2508], edx
jmp 0x48d73c
xor eax, eax
je 0x48d6a3
jmp 0x48d6b2
jmp 0x48d4fc
jmp 0x48d4fc
mov ecx, 2
test ecx, ecx
je 0x48d732
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x250c], eax
cvtsi2sd xmm0, dword [ebp - 0x250c]
mov eax, dword [ebp - 0x250c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc258]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2508], ecx
jmp 0x48d73c
mov dword [ebp - 0x2508], 8
mov edx, dword [ebp - 0x24f4]
shl edx, 2
add edx, dword [ebp - 0x24f0]
mov eax, dword [ebp - 0x2508]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x24f4]
shl ecx, 2
add ecx, dword [ebp - 0x24f0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48da2f
xor eax, eax
je 0x48d7a1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48d7dd
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db8]
movsd qword [ebp - 0xc270], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48d97d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48d97d
mov dword [ebp - 0x2510], 0
jmp 0x48d85c
cmp dword [ebp - 0x2510], 0xf
jae 0x48d978
cvtsi2sd xmm0, dword [ebp - 0x2510]
movsd xmm1, qword [ebp - 0xc270]
addsd xmm1, xmm0
movsd qword [ebp - 0xc278], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc278]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48d8cb
mov ecx, dword [ebp - 0x2510]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc270]
addsd xmm1, xmm0
movsd qword [ebp - 0xc270], xmm1
jmp 0x48d7c7
cvtsi2sd xmm0, dword [ebp - 0x2510]
movsd xmm1, qword [ebp - 0xc270]
addsd xmm1, xmm0
movsd qword [ebp - 0xc280], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc280]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48d928
mov eax, dword [ebp - 0x2510]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc270]
addsd xmm1, xmm0
movsd qword [ebp - 0xc270], xmm1
jmp 0x48d941
mov ecx, 1
test ecx, ecx
je 0x48d93d
jmp 0x48d9fd
jmp 0x48d964
cvtsi2sd xmm0, dword [ebp - 0x2510]
movsd xmm1, qword [ebp - 0xc270]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2514], edx
jmp 0x48da07
xor eax, eax
je 0x48d96e
jmp 0x48d97d
jmp 0x48d7c7
jmp 0x48d7c7
mov ecx, 2
test ecx, ecx
je 0x48d9fd
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2518], eax
cvtsi2sd xmm0, dword [ebp - 0x2518]
mov eax, dword [ebp - 0x2518]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc270]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2514], ecx
jmp 0x48da07
mov dword [ebp - 0x2514], 8
mov edx, dword [ebp - 0x24f4]
shl edx, 2
add edx, dword [ebp - 0x24f0]
mov eax, dword [ebp - 0x2514]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x24f4]
shl ecx, 2
add ecx, dword [ebp - 0x24f0]
mov dword [ecx], eax
mov edx, dword [ebp - 0x24f4]
add edx, 0xffffffc5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc288], xmm0
xor eax, eax
je 0x48da49
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x48da85
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc288]
movsd qword [ebp - 0xc290], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48dc25
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48dc25
mov dword [ebp - 0x251c], 0
jmp 0x48db04
cmp dword [ebp - 0x251c], 0xf
jae 0x48dc20
cvtsi2sd xmm0, dword [ebp - 0x251c]
movsd xmm1, qword [ebp - 0xc290]
addsd xmm1, xmm0
movsd qword [ebp - 0xc298], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc298]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48db73
mov ecx, dword [ebp - 0x251c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc290]
addsd xmm1, xmm0
movsd qword [ebp - 0xc290], xmm1
jmp 0x48da6f
cvtsi2sd xmm0, dword [ebp - 0x251c]
movsd xmm1, qword [ebp - 0xc290]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc2a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48dbd0
mov eax, dword [ebp - 0x251c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc290]
addsd xmm1, xmm0
movsd qword [ebp - 0xc290], xmm1
jmp 0x48dbe9
mov ecx, 1
test ecx, ecx
je 0x48dbe5
jmp 0x48dca5
jmp 0x48dc0c
cvtsi2sd xmm0, dword [ebp - 0x251c]
movsd xmm1, qword [ebp - 0xc290]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2520], edx
jmp 0x48dcaf
xor eax, eax
je 0x48dc16
jmp 0x48dc25
jmp 0x48da6f
jmp 0x48da6f
mov ecx, 2
test ecx, ecx
je 0x48dca5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2524], eax
cvtsi2sd xmm0, dword [ebp - 0x2524]
mov eax, dword [ebp - 0x2524]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc290]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2520], ecx
jmp 0x48dcaf
mov dword [ebp - 0x2520], 8
mov edx, dword [ebp - 0x24f4]
add edx, 0xffffffc5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc2a8], xmm0
xor eax, eax
je 0x48dcc9
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x48dd05
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc2a8]
movsd qword [ebp - 0xc2b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48dea5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48dea5
mov dword [ebp - 0x2528], 0
jmp 0x48dd84
cmp dword [ebp - 0x2528], 0xf
jae 0x48dea0
cvtsi2sd xmm0, dword [ebp - 0x2528]
movsd xmm1, qword [ebp - 0xc2b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc2b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48ddf3
mov ecx, dword [ebp - 0x2528]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc2b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2b0], xmm1
jmp 0x48dcef
cvtsi2sd xmm0, dword [ebp - 0x2528]
movsd xmm1, qword [ebp - 0xc2b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc2c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48de50
mov eax, dword [ebp - 0x2528]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc2b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2b0], xmm1
jmp 0x48de69
mov ecx, 1
test ecx, ecx
je 0x48de65
jmp 0x48df25
jmp 0x48de8c
cvtsi2sd xmm0, dword [ebp - 0x2528]
movsd xmm1, qword [ebp - 0xc2b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x252c], edx
jmp 0x48df2f
xor eax, eax
je 0x48de96
jmp 0x48dea5
jmp 0x48dcef
jmp 0x48dcef
mov ecx, 2
test ecx, ecx
je 0x48df25
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2530], eax
cvtsi2sd xmm0, dword [ebp - 0x2530]
mov eax, dword [ebp - 0x2530]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc2b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x252c], ecx
jmp 0x48df2f
mov dword [ebp - 0x252c], 8
mov edx, dword [ebp - 0x24f4]
shl edx, 2
add edx, dword [ebp - 0x24f0]
mov eax, dword [ebp - 0x2520]
add eax, dword [edx]
mov ecx, dword [ebp - 0x24f4]
shl ecx, 2
add ecx, dword [ebp - 0x24f0]
mov edx, dword [ebp - 0x252c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x24f4]
shl ecx, 2
add ecx, dword [ebp - 0x24f0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48e23d
xor eax, eax
je 0x48dfaf
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48dfeb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db0]
movsd qword [ebp - 0xc2c8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48e18b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48e18b
mov dword [ebp - 0x2534], 0
jmp 0x48e06a
cmp dword [ebp - 0x2534], 0xf
jae 0x48e186
cvtsi2sd xmm0, dword [ebp - 0x2534]
movsd xmm1, qword [ebp - 0xc2c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2d0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc2d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48e0d9
mov ecx, dword [ebp - 0x2534]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc2c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2c8], xmm1
jmp 0x48dfd5
cvtsi2sd xmm0, dword [ebp - 0x2534]
movsd xmm1, qword [ebp - 0xc2c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2d8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc2d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48e136
mov eax, dword [ebp - 0x2534]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc2c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2c8], xmm1
jmp 0x48e14f
mov ecx, 1
test ecx, ecx
je 0x48e14b
jmp 0x48e20b
jmp 0x48e172
cvtsi2sd xmm0, dword [ebp - 0x2534]
movsd xmm1, qword [ebp - 0xc2c8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2538], edx
jmp 0x48e215
xor eax, eax
je 0x48e17c
jmp 0x48e18b
jmp 0x48dfd5
jmp 0x48dfd5
mov ecx, 2
test ecx, ecx
je 0x48e20b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x253c], eax
cvtsi2sd xmm0, dword [ebp - 0x253c]
mov eax, dword [ebp - 0x253c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc2c8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2538], ecx
jmp 0x48e215
mov dword [ebp - 0x2538], 8
mov edx, dword [ebp - 0x24f4]
shl edx, 2
add edx, dword [ebp - 0x24f0]
mov eax, dword [ebp - 0x2538]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x24f4]
shl ecx, 2
add ecx, dword [ebp - 0x24f0]
mov dword [ecx], eax
jmp 0x48d16d
mov edx, dword [ebp - 0x24ec]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x24ec]
mov dword [ebp - 0x2540], eax
mov ecx, dword [ebp - 0x2540]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2544], ecx
mov edx, dword [ebp - 0x2544]
mov dword [ebp - 0x2548], edx
mov eax, dword [ebp - 0x24e8]
mov dword [ebp - 0x2488], eax
cmp dword [ebp - 0x2488], 0
je 0x48f3df
xor ecx, ecx
mov byte [ebp - 0x66], cl
lea ecx, [ebp - 0x66]
call fcn.00424f60
mov dword [ebp - 0x254c], eax
mov edx, dword [ebp - 0x254c]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x48f3a6
mov ecx, dword [ebp - 0x254c]
mov dword [ebp - 0x2550], ecx
mov dword [ebp - 0x2554], 0
jmp 0x48e2e0
mov edx, dword [ebp - 0x2554]
add edx, 1
mov dword [ebp - 0x2554], edx
cmp dword [ebp - 0x2554], 1
jae 0x48f3a6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48e5b8
xor eax, eax
je 0x48e32a
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x48e366
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736dc8]
movsd qword [ebp - 0xc2e0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48e506
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48e506
mov dword [ebp - 0x2558], 0
jmp 0x48e3e5
cmp dword [ebp - 0x2558], 0xf
jae 0x48e501
cvtsi2sd xmm0, dword [ebp - 0x2558]
movsd xmm1, qword [ebp - 0xc2e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2e8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc2e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48e454
mov ecx, dword [ebp - 0x2558]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc2e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2e0], xmm1
jmp 0x48e350
cvtsi2sd xmm0, dword [ebp - 0x2558]
movsd xmm1, qword [ebp - 0xc2e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2f0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc2f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48e4b1
mov eax, dword [ebp - 0x2558]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc2e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2e0], xmm1
jmp 0x48e4ca
mov ecx, 1
test ecx, ecx
je 0x48e4c6
jmp 0x48e586
jmp 0x48e4ed
cvtsi2sd xmm0, dword [ebp - 0x2558]
movsd xmm1, qword [ebp - 0xc2e0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x255c], edx
jmp 0x48e590
xor eax, eax
je 0x48e4f7
jmp 0x48e506
jmp 0x48e350
jmp 0x48e350
mov ecx, 2
test ecx, ecx
je 0x48e586
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2560], eax
cvtsi2sd xmm0, dword [ebp - 0x2560]
mov eax, dword [ebp - 0x2560]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc2e0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x255c], ecx
jmp 0x48e590
mov dword [ebp - 0x255c], 8
mov edx, dword [ebp - 0x2554]
shl edx, 2
add edx, dword [ebp - 0x2550]
mov eax, dword [ebp - 0x255c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2554]
shl ecx, 2
add ecx, dword [ebp - 0x2550]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48f0d6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48e8c8
xor eax, eax
je 0x48e63a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48e676
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736dc0]
movsd qword [ebp - 0xc2f8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48e816
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48e816
mov dword [ebp - 0x2564], 0
jmp 0x48e6f5
cmp dword [ebp - 0x2564], 0xf
jae 0x48e811
cvtsi2sd xmm0, dword [ebp - 0x2564]
movsd xmm1, qword [ebp - 0xc2f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc300], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc300]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48e764
mov ecx, dword [ebp - 0x2564]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc2f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2f8], xmm1
jmp 0x48e660
cvtsi2sd xmm0, dword [ebp - 0x2564]
movsd xmm1, qword [ebp - 0xc2f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc308], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc308]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48e7c1
mov eax, dword [ebp - 0x2564]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc2f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc2f8], xmm1
jmp 0x48e7da
mov ecx, 1
test ecx, ecx
je 0x48e7d6
jmp 0x48e896
jmp 0x48e7fd
cvtsi2sd xmm0, dword [ebp - 0x2564]
movsd xmm1, qword [ebp - 0xc2f8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2568], edx
jmp 0x48e8a0
xor eax, eax
je 0x48e807
jmp 0x48e816
jmp 0x48e660
jmp 0x48e660
mov ecx, 2
test ecx, ecx
je 0x48e896
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x256c], eax
cvtsi2sd xmm0, dword [ebp - 0x256c]
mov eax, dword [ebp - 0x256c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc2f8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2568], ecx
jmp 0x48e8a0
mov dword [ebp - 0x2568], 8
mov edx, dword [ebp - 0x2554]
shl edx, 2
add edx, dword [ebp - 0x2550]
mov eax, dword [ebp - 0x2568]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2554]
shl ecx, 2
add ecx, dword [ebp - 0x2550]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48eb93
xor eax, eax
je 0x48e905
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48e941
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db8]
movsd qword [ebp - 0xc310], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48eae1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48eae1
mov dword [ebp - 0x2570], 0
jmp 0x48e9c0
cmp dword [ebp - 0x2570], 0xf
jae 0x48eadc
cvtsi2sd xmm0, dword [ebp - 0x2570]
movsd xmm1, qword [ebp - 0xc310]
addsd xmm1, xmm0
movsd qword [ebp - 0xc318], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc318]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48ea2f
mov ecx, dword [ebp - 0x2570]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc310]
addsd xmm1, xmm0
movsd qword [ebp - 0xc310], xmm1
jmp 0x48e92b
cvtsi2sd xmm0, dword [ebp - 0x2570]
movsd xmm1, qword [ebp - 0xc310]
addsd xmm1, xmm0
movsd qword [ebp - 0xc320], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc320]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48ea8c
mov eax, dword [ebp - 0x2570]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc310]
addsd xmm1, xmm0
movsd qword [ebp - 0xc310], xmm1
jmp 0x48eaa5
mov ecx, 1
test ecx, ecx
je 0x48eaa1
jmp 0x48eb61
jmp 0x48eac8
cvtsi2sd xmm0, dword [ebp - 0x2570]
movsd xmm1, qword [ebp - 0xc310]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2574], edx
jmp 0x48eb6b
xor eax, eax
je 0x48ead2
jmp 0x48eae1
jmp 0x48e92b
jmp 0x48e92b
mov ecx, 2
test ecx, ecx
je 0x48eb61
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2578], eax
cvtsi2sd xmm0, dword [ebp - 0x2578]
mov eax, dword [ebp - 0x2578]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc310]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2574], ecx
jmp 0x48eb6b
mov dword [ebp - 0x2574], 8
mov edx, dword [ebp - 0x2554]
shl edx, 2
add edx, dword [ebp - 0x2550]
mov eax, dword [ebp - 0x2574]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2554]
shl ecx, 2
add ecx, dword [ebp - 0x2550]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2554]
add edx, 0xffffffc5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc328], xmm0
xor eax, eax
je 0x48ebad
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x48ebe9
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc328]
movsd qword [ebp - 0xc330], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48ed89
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48ed89
mov dword [ebp - 0x257c], 0
jmp 0x48ec68
cmp dword [ebp - 0x257c], 0xf
jae 0x48ed84
cvtsi2sd xmm0, dword [ebp - 0x257c]
movsd xmm1, qword [ebp - 0xc330]
addsd xmm1, xmm0
movsd qword [ebp - 0xc338], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc338]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48ecd7
mov ecx, dword [ebp - 0x257c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc330]
addsd xmm1, xmm0
movsd qword [ebp - 0xc330], xmm1
jmp 0x48ebd3
cvtsi2sd xmm0, dword [ebp - 0x257c]
movsd xmm1, qword [ebp - 0xc330]
addsd xmm1, xmm0
movsd qword [ebp - 0xc340], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc340]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48ed34
mov eax, dword [ebp - 0x257c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc330]
addsd xmm1, xmm0
movsd qword [ebp - 0xc330], xmm1
jmp 0x48ed4d
mov ecx, 1
test ecx, ecx
je 0x48ed49
jmp 0x48ee09
jmp 0x48ed70
cvtsi2sd xmm0, dword [ebp - 0x257c]
movsd xmm1, qword [ebp - 0xc330]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2580], edx
jmp 0x48ee13
xor eax, eax
je 0x48ed7a
jmp 0x48ed89
jmp 0x48ebd3
jmp 0x48ebd3
mov ecx, 2
test ecx, ecx
je 0x48ee09
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2584], eax
cvtsi2sd xmm0, dword [ebp - 0x2584]
mov eax, dword [ebp - 0x2584]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc330]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2580], ecx
jmp 0x48ee13
mov dword [ebp - 0x2580], 8
mov edx, dword [ebp - 0x2554]
add edx, 0xffffffc5
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc348], xmm0
xor eax, eax
je 0x48ee2d
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x48ee69
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc348]
movsd qword [ebp - 0xc350], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48f009
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48f009
mov dword [ebp - 0x2588], 0
jmp 0x48eee8
cmp dword [ebp - 0x2588], 0xf
jae 0x48f004
cvtsi2sd xmm0, dword [ebp - 0x2588]
movsd xmm1, qword [ebp - 0xc350]
addsd xmm1, xmm0
movsd qword [ebp - 0xc358], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc358]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48ef57
mov ecx, dword [ebp - 0x2588]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc350]
addsd xmm1, xmm0
movsd qword [ebp - 0xc350], xmm1
jmp 0x48ee53
cvtsi2sd xmm0, dword [ebp - 0x2588]
movsd xmm1, qword [ebp - 0xc350]
addsd xmm1, xmm0
movsd qword [ebp - 0xc360], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc360]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48efb4
mov eax, dword [ebp - 0x2588]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc350]
addsd xmm1, xmm0
movsd qword [ebp - 0xc350], xmm1
jmp 0x48efcd
mov ecx, 1
test ecx, ecx
je 0x48efc9
jmp 0x48f089
jmp 0x48eff0
cvtsi2sd xmm0, dword [ebp - 0x2588]
movsd xmm1, qword [ebp - 0xc350]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x258c], edx
jmp 0x48f093
xor eax, eax
je 0x48effa
jmp 0x48f009
jmp 0x48ee53
jmp 0x48ee53
mov ecx, 2
test ecx, ecx
je 0x48f089
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2590], eax
cvtsi2sd xmm0, dword [ebp - 0x2590]
mov eax, dword [ebp - 0x2590]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc350]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x258c], ecx
jmp 0x48f093
mov dword [ebp - 0x258c], 8
mov edx, dword [ebp - 0x2554]
shl edx, 2
add edx, dword [ebp - 0x2550]
mov eax, dword [ebp - 0x2580]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2554]
shl ecx, 2
add ecx, dword [ebp - 0x2550]
mov edx, dword [ebp - 0x258c]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2554]
shl ecx, 2
add ecx, dword [ebp - 0x2550]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48f3a1
xor eax, eax
je 0x48f113
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48f14f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db0]
movsd qword [ebp - 0xc368], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48f2ef
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48f2ef
mov dword [ebp - 0x2594], 0
jmp 0x48f1ce
cmp dword [ebp - 0x2594], 0xf
jae 0x48f2ea
cvtsi2sd xmm0, dword [ebp - 0x2594]
movsd xmm1, qword [ebp - 0xc368]
addsd xmm1, xmm0
movsd qword [ebp - 0xc370], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc370]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48f23d
mov ecx, dword [ebp - 0x2594]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc368]
addsd xmm1, xmm0
movsd qword [ebp - 0xc368], xmm1
jmp 0x48f139
cvtsi2sd xmm0, dword [ebp - 0x2594]
movsd xmm1, qword [ebp - 0xc368]
addsd xmm1, xmm0
movsd qword [ebp - 0xc378], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc378]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48f29a
mov eax, dword [ebp - 0x2594]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc368]
addsd xmm1, xmm0
movsd qword [ebp - 0xc368], xmm1
jmp 0x48f2b3
mov ecx, 1
test ecx, ecx
je 0x48f2af
jmp 0x48f36f
jmp 0x48f2d6
cvtsi2sd xmm0, dword [ebp - 0x2594]
movsd xmm1, qword [ebp - 0xc368]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2598], edx
jmp 0x48f379
xor eax, eax
je 0x48f2e0
jmp 0x48f2ef
jmp 0x48f139
jmp 0x48f139
mov ecx, 2
test ecx, ecx
je 0x48f36f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x259c], eax
cvtsi2sd xmm0, dword [ebp - 0x259c]
mov eax, dword [ebp - 0x259c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc368]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2598], ecx
jmp 0x48f379
mov dword [ebp - 0x2598], 8
mov edx, dword [ebp - 0x2554]
shl edx, 2
add edx, dword [ebp - 0x2550]
mov eax, dword [ebp - 0x2598]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2554]
shl ecx, 2
add ecx, dword [ebp - 0x2550]
mov dword [ecx], eax
jmp 0x48e2d1
mov edx, dword [ebp - 0x254c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x254c]
mov dword [ebp - 0x25a0], eax
mov ecx, dword [ebp - 0x25a0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x25a4], ecx
mov edx, dword [ebp - 0x25a4]
mov dword [ebp - 0x2548], edx
xor eax, eax
mov byte [ebp - 0x67], al
lea ecx, [ebp - 0x16664]
mov edx, 2
imul eax, edx, 0xc
movzx ecx, word [ecx + eax]
neg ecx
sbb ecx, ecx
neg ecx
mov byte [ebp - 0x68], cl
movzx edx, byte [ebp - 0x68]
test edx, edx
je 0x48f464
mov dword [ebp - 0x25a8], 0
jmp 0x48f422
mov eax, dword [ebp - 0x25a8]
add eax, 1
mov dword [ebp - 0x25a8], eax
cmp dword [ebp - 0x25a8], 0xd
jge 0x48f464
mov ecx, dword [ebp - 0x25a8]
shl ecx, 1
lea edx, [ebp - 0x16664]
movzx ecx, word [edx + ecx]
mov eax, dword [ebp - 0x25a8]
cdq
mov esi, 0x36
idiv esi
add edx, 0x38
xor ecx, edx
lea edx, [ebp - 0x16664]
mov eax, dword [ebp - 0x25a8]
shl eax, 1
mov word [edx + eax], cx
jmp 0x48f413
lea ecx, [ebp - 0x16664]
mov dword [ebp - 0x25ac], ecx
lea ecx, [ebp - 0x67]
call fcn.00424f30
mov dword [ebp - 0x25b0], eax
mov edx, dword [ebp - 0x25b0]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x49057d
mov ecx, dword [ebp - 0x25b0]
mov dword [ebp - 0x25b4], ecx
mov dword [ebp - 0x25b8], 0
jmp 0x48f4b7
mov edx, dword [ebp - 0x25b8]
add edx, 1
mov dword [ebp - 0x25b8], edx
cmp dword [ebp - 0x25b8], 1
jae 0x49057d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48f78f
xor eax, eax
je 0x48f501
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x48f53d
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736dc0]
movsd qword [ebp - 0xc380], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48f6dd
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48f6dd
mov dword [ebp - 0x25bc], 0
jmp 0x48f5bc
cmp dword [ebp - 0x25bc], 0xf
jae 0x48f6d8
cvtsi2sd xmm0, dword [ebp - 0x25bc]
movsd xmm1, qword [ebp - 0xc380]
addsd xmm1, xmm0
movsd qword [ebp - 0xc388], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc388]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48f62b
mov ecx, dword [ebp - 0x25bc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc380]
addsd xmm1, xmm0
movsd qword [ebp - 0xc380], xmm1
jmp 0x48f527
cvtsi2sd xmm0, dword [ebp - 0x25bc]
movsd xmm1, qword [ebp - 0xc380]
addsd xmm1, xmm0
movsd qword [ebp - 0xc390], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc390]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48f688
mov eax, dword [ebp - 0x25bc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc380]
addsd xmm1, xmm0
movsd qword [ebp - 0xc380], xmm1
jmp 0x48f6a1
mov ecx, 1
test ecx, ecx
je 0x48f69d
jmp 0x48f75d
jmp 0x48f6c4
cvtsi2sd xmm0, dword [ebp - 0x25bc]
movsd xmm1, qword [ebp - 0xc380]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x25c0], edx
jmp 0x48f767
xor eax, eax
je 0x48f6ce
jmp 0x48f6dd
jmp 0x48f527
jmp 0x48f527
mov ecx, 2
test ecx, ecx
je 0x48f75d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x25c4], eax
cvtsi2sd xmm0, dword [ebp - 0x25c4]
mov eax, dword [ebp - 0x25c4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc380]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x25c0], ecx
jmp 0x48f767
mov dword [ebp - 0x25c0], 8
mov edx, dword [ebp - 0x25b8]
shl edx, 2
add edx, dword [ebp - 0x25b4]
mov eax, dword [ebp - 0x25c0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x25b8]
shl ecx, 2
add ecx, dword [ebp - 0x25b4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4902ad
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48fa9f
xor eax, eax
je 0x48f811
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48f84d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db8]
movsd qword [ebp - 0xc398], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48f9ed
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48f9ed
mov dword [ebp - 0x25c8], 0
jmp 0x48f8cc
cmp dword [ebp - 0x25c8], 0xf
jae 0x48f9e8
cvtsi2sd xmm0, dword [ebp - 0x25c8]
movsd xmm1, qword [ebp - 0xc398]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3a0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc3a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48f93b
mov ecx, dword [ebp - 0x25c8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc398]
addsd xmm1, xmm0
movsd qword [ebp - 0xc398], xmm1
jmp 0x48f837
cvtsi2sd xmm0, dword [ebp - 0x25c8]
movsd xmm1, qword [ebp - 0xc398]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3a8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc3a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48f998
mov eax, dword [ebp - 0x25c8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc398]
addsd xmm1, xmm0
movsd qword [ebp - 0xc398], xmm1
jmp 0x48f9b1
mov ecx, 1
test ecx, ecx
je 0x48f9ad
jmp 0x48fa6d
jmp 0x48f9d4
cvtsi2sd xmm0, dword [ebp - 0x25c8]
movsd xmm1, qword [ebp - 0xc398]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x25cc], edx
jmp 0x48fa77
xor eax, eax
je 0x48f9de
jmp 0x48f9ed
jmp 0x48f837
jmp 0x48f837
mov ecx, 2
test ecx, ecx
je 0x48fa6d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x25d0], eax
cvtsi2sd xmm0, dword [ebp - 0x25d0]
mov eax, dword [ebp - 0x25d0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc398]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x25cc], ecx
jmp 0x48fa77
mov dword [ebp - 0x25cc], 8
mov edx, dword [ebp - 0x25b8]
shl edx, 2
add edx, dword [ebp - 0x25b4]
mov eax, dword [ebp - 0x25cc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x25b8]
shl ecx, 2
add ecx, dword [ebp - 0x25b4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x48fd6a
xor eax, eax
je 0x48fadc
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x48fb18
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db0]
movsd qword [ebp - 0xc3b0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48fcb8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48fcb8
mov dword [ebp - 0x25d4], 0
jmp 0x48fb97
cmp dword [ebp - 0x25d4], 0xf
jae 0x48fcb3
cvtsi2sd xmm0, dword [ebp - 0x25d4]
movsd xmm1, qword [ebp - 0xc3b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc3b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48fc06
mov ecx, dword [ebp - 0x25d4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc3b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3b0], xmm1
jmp 0x48fb02
cvtsi2sd xmm0, dword [ebp - 0x25d4]
movsd xmm1, qword [ebp - 0xc3b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc3c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48fc63
mov eax, dword [ebp - 0x25d4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc3b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3b0], xmm1
jmp 0x48fc7c
mov ecx, 1
test ecx, ecx
je 0x48fc78
jmp 0x48fd38
jmp 0x48fc9f
cvtsi2sd xmm0, dword [ebp - 0x25d4]
movsd xmm1, qword [ebp - 0xc3b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x25d8], edx
jmp 0x48fd42
xor eax, eax
je 0x48fca9
jmp 0x48fcb8
jmp 0x48fb02
jmp 0x48fb02
mov ecx, 2
test ecx, ecx
je 0x48fd38
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x25dc], eax
cvtsi2sd xmm0, dword [ebp - 0x25dc]
mov eax, dword [ebp - 0x25dc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc3b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x25d8], ecx
jmp 0x48fd42
mov dword [ebp - 0x25d8], 8
mov edx, dword [ebp - 0x25b8]
shl edx, 2
add edx, dword [ebp - 0x25b4]
mov eax, dword [ebp - 0x25d8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x25b8]
shl ecx, 2
add ecx, dword [ebp - 0x25b4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x25b8]
add edx, 0xffffffc6
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc3c8], xmm0
xor eax, eax
je 0x48fd84
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x48fdc0
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc3c8]
movsd qword [ebp - 0xc3d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x48ff60
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x48ff60
mov dword [ebp - 0x25e0], 0
jmp 0x48fe3f
cmp dword [ebp - 0x25e0], 0xf
jae 0x48ff5b
cvtsi2sd xmm0, dword [ebp - 0x25e0]
movsd xmm1, qword [ebp - 0xc3d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc3d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48feae
mov ecx, dword [ebp - 0x25e0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc3d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3d0], xmm1
jmp 0x48fdaa
cvtsi2sd xmm0, dword [ebp - 0x25e0]
movsd xmm1, qword [ebp - 0xc3d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc3e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x48ff0b
mov eax, dword [ebp - 0x25e0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc3d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3d0], xmm1
jmp 0x48ff24
mov ecx, 1
test ecx, ecx
je 0x48ff20
jmp 0x48ffe0
jmp 0x48ff47
cvtsi2sd xmm0, dword [ebp - 0x25e0]
movsd xmm1, qword [ebp - 0xc3d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x25e4], edx
jmp 0x48ffea
xor eax, eax
je 0x48ff51
jmp 0x48ff60
jmp 0x48fdaa
jmp 0x48fdaa
mov ecx, 2
test ecx, ecx
je 0x48ffe0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x25e8], eax
cvtsi2sd xmm0, dword [ebp - 0x25e8]
mov eax, dword [ebp - 0x25e8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc3d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x25e4], ecx
jmp 0x48ffea
mov dword [ebp - 0x25e4], 8
mov edx, dword [ebp - 0x25b8]
add edx, 0xffffffc6
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc3e8], xmm0
xor eax, eax
je 0x490004
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x490040
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc3e8]
movsd qword [ebp - 0xc3f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4901e0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4901e0
mov dword [ebp - 0x25ec], 0
jmp 0x4900bf
cmp dword [ebp - 0x25ec], 0xf
jae 0x4901db
cvtsi2sd xmm0, dword [ebp - 0x25ec]
movsd xmm1, qword [ebp - 0xc3f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc3f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49012e
mov ecx, dword [ebp - 0x25ec]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc3f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3f0], xmm1
jmp 0x49002a
cvtsi2sd xmm0, dword [ebp - 0x25ec]
movsd xmm1, qword [ebp - 0xc3f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc400], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc400]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49018b
mov eax, dword [ebp - 0x25ec]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc3f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc3f0], xmm1
jmp 0x4901a4
mov ecx, 1
test ecx, ecx
je 0x4901a0
jmp 0x490260
jmp 0x4901c7
cvtsi2sd xmm0, dword [ebp - 0x25ec]
movsd xmm1, qword [ebp - 0xc3f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x25f0], edx
jmp 0x49026a
xor eax, eax
je 0x4901d1
jmp 0x4901e0
jmp 0x49002a
jmp 0x49002a
mov ecx, 2
test ecx, ecx
je 0x490260
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x25f4], eax
cvtsi2sd xmm0, dword [ebp - 0x25f4]
mov eax, dword [ebp - 0x25f4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc3f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x25f0], ecx
jmp 0x49026a
mov dword [ebp - 0x25f0], 8
mov edx, dword [ebp - 0x25b8]
shl edx, 2
add edx, dword [ebp - 0x25b4]
mov eax, dword [ebp - 0x25e4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x25b8]
shl ecx, 2
add ecx, dword [ebp - 0x25b4]
mov edx, dword [ebp - 0x25f0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x25b8]
shl ecx, 2
add ecx, dword [ebp - 0x25b4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x490578
xor eax, eax
je 0x4902ea
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x490326
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da8]
movsd qword [ebp - 0xc408], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4904c6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4904c6
mov dword [ebp - 0x25f8], 0
jmp 0x4903a5
cmp dword [ebp - 0x25f8], 0xf
jae 0x4904c1
cvtsi2sd xmm0, dword [ebp - 0x25f8]
movsd xmm1, qword [ebp - 0xc408]
addsd xmm1, xmm0
movsd qword [ebp - 0xc410], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc410]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x490414
mov ecx, dword [ebp - 0x25f8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc408]
addsd xmm1, xmm0
movsd qword [ebp - 0xc408], xmm1
jmp 0x490310
cvtsi2sd xmm0, dword [ebp - 0x25f8]
movsd xmm1, qword [ebp - 0xc408]
addsd xmm1, xmm0
movsd qword [ebp - 0xc418], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc418]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x490471
mov eax, dword [ebp - 0x25f8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc408]
addsd xmm1, xmm0
movsd qword [ebp - 0xc408], xmm1
jmp 0x49048a
mov ecx, 1
test ecx, ecx
je 0x490486
jmp 0x490546
jmp 0x4904ad
cvtsi2sd xmm0, dword [ebp - 0x25f8]
movsd xmm1, qword [ebp - 0xc408]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x25fc], edx
jmp 0x490550
xor eax, eax
je 0x4904b7
jmp 0x4904c6
jmp 0x490310
jmp 0x490310
mov ecx, 2
test ecx, ecx
je 0x490546
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2600], eax
cvtsi2sd xmm0, dword [ebp - 0x2600]
mov eax, dword [ebp - 0x2600]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc408]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x25fc], ecx
jmp 0x490550
mov dword [ebp - 0x25fc], 8
mov edx, dword [ebp - 0x25b8]
shl edx, 2
add edx, dword [ebp - 0x25b4]
mov eax, dword [ebp - 0x25fc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x25b8]
shl ecx, 2
add ecx, dword [ebp - 0x25b4]
mov dword [ecx], eax
jmp 0x48f4a8
mov edx, dword [ebp - 0x25b0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x25b0]
mov dword [ebp - 0x2604], eax
mov ecx, dword [ebp - 0x2604]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2608], ecx
mov edx, dword [ebp - 0x25ac]
push edx
mov eax, dword [ebp - 0x2608]
shl eax, 2
add eax, 0x784ef4
mov ecx, dword [eax]
call ecx
mov dword [ebp - 0x260c], eax
cmp dword [ebp - 0x260c], 0
jne 0x4905d9
xor al, al
jmp 0x5a9e46
mov edx, dword [sym.imp.KERNEL32.dll_DeleteVolumeMountPointW]
mov dword [ebp - 0x16738], edx
mov eax, dword [sym.imp.KERNEL32.dll_lstrcatW]
mov dword [ebp - 0x16734], eax
mov ecx, dword [sym.imp.USER32.dll_EndPaint]
mov dword [ebp - 0x16730], ecx
mov edx, dword [sym.imp.SHELL32.dll_ExtractIconExW]
mov dword [ebp - 0x1672c], edx
mov eax, dword [sym.imp.KERNEL32.dll_HeapSize]
mov dword [ebp - 0x16728], eax
mov ecx, dword [sym.imp.USER32.dll_MessageBoxExW]
mov dword [ebp - 0x16724], ecx
mov edx, dword [sym.imp.KERNEL32.dll_FindClose]
mov dword [ebp - 0x16720], edx
mov eax, dword [sym.imp.USER32.dll_OpenWindowStationW]
mov dword [ebp - 0x1671c], eax
mov ecx, dword [sym.imp.USER32.dll_ShowWindow]
mov dword [ebp - 0x16718], ecx
mov edx, dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0x16714], edx
mov eax, dword [sym.imp.KERNEL32.dll_CreateThreadpool]
mov dword [ebp - 0x16710], eax
mov ecx, dword [sym.imp.KERNEL32.dll_WaitForThreadpoolWorkCallbacks]
mov dword [ebp - 0x1670c], ecx
mov edx, dword [sym.imp.USER32.dll_IntersectRect]
mov dword [ebp - 0x16708], edx
xor eax, eax
mov byte [ebp - 0x69], al
lea ecx, [ebp - 0x69]
call fcn.00424f00
mov dword [ebp - 0x2610], eax
mov ecx, dword [ebp - 0x2610]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x491783
mov eax, dword [ebp - 0x2610]
mov dword [ebp - 0x2614], eax
mov dword [ebp - 0x2618], 0
jmp 0x4906bd
mov ecx, dword [ebp - 0x2618]
add ecx, 1
mov dword [ebp - 0x2618], ecx
cmp dword [ebp - 0x2618], 1
jae 0x491783
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x490995
xor eax, eax
je 0x490707
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x490743
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db8]
movsd qword [ebp - 0xc420], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4908e3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4908e3
mov dword [ebp - 0x261c], 0
jmp 0x4907c2
cmp dword [ebp - 0x261c], 0xf
jae 0x4908de
cvtsi2sd xmm0, dword [ebp - 0x261c]
movsd xmm1, qword [ebp - 0xc420]
addsd xmm1, xmm0
movsd qword [ebp - 0xc428], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc428]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x490831
mov ecx, dword [ebp - 0x261c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc420]
addsd xmm1, xmm0
movsd qword [ebp - 0xc420], xmm1
jmp 0x49072d
cvtsi2sd xmm0, dword [ebp - 0x261c]
movsd xmm1, qword [ebp - 0xc420]
addsd xmm1, xmm0
movsd qword [ebp - 0xc430], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc430]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49088e
mov eax, dword [ebp - 0x261c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc420]
addsd xmm1, xmm0
movsd qword [ebp - 0xc420], xmm1
jmp 0x4908a7
mov ecx, 1
test ecx, ecx
je 0x4908a3
jmp 0x490963
jmp 0x4908ca
cvtsi2sd xmm0, dword [ebp - 0x261c]
movsd xmm1, qword [ebp - 0xc420]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2620], edx
jmp 0x49096d
xor eax, eax
je 0x4908d4
jmp 0x4908e3
jmp 0x49072d
jmp 0x49072d
mov ecx, 2
test ecx, ecx
je 0x490963
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2624], eax
cvtsi2sd xmm0, dword [ebp - 0x2624]
mov eax, dword [ebp - 0x2624]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc420]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2620], ecx
jmp 0x49096d
mov dword [ebp - 0x2620], 8
mov edx, dword [ebp - 0x2618]
shl edx, 2
add edx, dword [ebp - 0x2614]
mov eax, dword [ebp - 0x2620]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2618]
shl ecx, 2
add ecx, dword [ebp - 0x2614]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4914b3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x490ca5
xor eax, eax
je 0x490a17
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x490a53
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db0]
movsd qword [ebp - 0xc438], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x490bf3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x490bf3
mov dword [ebp - 0x2628], 0
jmp 0x490ad2
cmp dword [ebp - 0x2628], 0xf
jae 0x490bee
cvtsi2sd xmm0, dword [ebp - 0x2628]
movsd xmm1, qword [ebp - 0xc438]
addsd xmm1, xmm0
movsd qword [ebp - 0xc440], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc440]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x490b41
mov ecx, dword [ebp - 0x2628]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc438]
addsd xmm1, xmm0
movsd qword [ebp - 0xc438], xmm1
jmp 0x490a3d
cvtsi2sd xmm0, dword [ebp - 0x2628]
movsd xmm1, qword [ebp - 0xc438]
addsd xmm1, xmm0
movsd qword [ebp - 0xc448], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc448]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x490b9e
mov eax, dword [ebp - 0x2628]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc438]
addsd xmm1, xmm0
movsd qword [ebp - 0xc438], xmm1
jmp 0x490bb7
mov ecx, 1
test ecx, ecx
je 0x490bb3
jmp 0x490c73
jmp 0x490bda
cvtsi2sd xmm0, dword [ebp - 0x2628]
movsd xmm1, qword [ebp - 0xc438]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x262c], edx
jmp 0x490c7d
xor eax, eax
je 0x490be4
jmp 0x490bf3
jmp 0x490a3d
jmp 0x490a3d
mov ecx, 2
test ecx, ecx
je 0x490c73
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2630], eax
cvtsi2sd xmm0, dword [ebp - 0x2630]
mov eax, dword [ebp - 0x2630]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc438]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x262c], ecx
jmp 0x490c7d
mov dword [ebp - 0x262c], 8
mov edx, dword [ebp - 0x2618]
shl edx, 2
add edx, dword [ebp - 0x2614]
mov eax, dword [ebp - 0x262c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2618]
shl ecx, 2
add ecx, dword [ebp - 0x2614]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x490f70
xor eax, eax
je 0x490ce2
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x490d1e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da8]
movsd qword [ebp - 0xc450], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x490ebe
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x490ebe
mov dword [ebp - 0x2634], 0
jmp 0x490d9d
cmp dword [ebp - 0x2634], 0xf
jae 0x490eb9
cvtsi2sd xmm0, dword [ebp - 0x2634]
movsd xmm1, qword [ebp - 0xc450]
addsd xmm1, xmm0
movsd qword [ebp - 0xc458], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc458]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x490e0c
mov ecx, dword [ebp - 0x2634]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc450]
addsd xmm1, xmm0
movsd qword [ebp - 0xc450], xmm1
jmp 0x490d08
cvtsi2sd xmm0, dword [ebp - 0x2634]
movsd xmm1, qword [ebp - 0xc450]
addsd xmm1, xmm0
movsd qword [ebp - 0xc460], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc460]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x490e69
mov eax, dword [ebp - 0x2634]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc450]
addsd xmm1, xmm0
movsd qword [ebp - 0xc450], xmm1
jmp 0x490e82
mov ecx, 1
test ecx, ecx
je 0x490e7e
jmp 0x490f3e
jmp 0x490ea5
cvtsi2sd xmm0, dword [ebp - 0x2634]
movsd xmm1, qword [ebp - 0xc450]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2638], edx
jmp 0x490f48
xor eax, eax
je 0x490eaf
jmp 0x490ebe
jmp 0x490d08
jmp 0x490d08
mov ecx, 2
test ecx, ecx
je 0x490f3e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x263c], eax
cvtsi2sd xmm0, dword [ebp - 0x263c]
mov eax, dword [ebp - 0x263c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc450]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2638], ecx
jmp 0x490f48
mov dword [ebp - 0x2638], 8
mov edx, dword [ebp - 0x2618]
shl edx, 2
add edx, dword [ebp - 0x2614]
mov eax, dword [ebp - 0x2638]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2618]
shl ecx, 2
add ecx, dword [ebp - 0x2614]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2618]
add edx, 0xffffffc7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc468], xmm0
xor eax, eax
je 0x490f8a
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x490fc6
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc468]
movsd qword [ebp - 0xc470], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x491166
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x491166
mov dword [ebp - 0x2640], 0
jmp 0x491045
cmp dword [ebp - 0x2640], 0xf
jae 0x491161
cvtsi2sd xmm0, dword [ebp - 0x2640]
movsd xmm1, qword [ebp - 0xc470]
addsd xmm1, xmm0
movsd qword [ebp - 0xc478], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc478]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4910b4
mov ecx, dword [ebp - 0x2640]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc470]
addsd xmm1, xmm0
movsd qword [ebp - 0xc470], xmm1
jmp 0x490fb0
cvtsi2sd xmm0, dword [ebp - 0x2640]
movsd xmm1, qword [ebp - 0xc470]
addsd xmm1, xmm0
movsd qword [ebp - 0xc480], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc480]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x491111
mov eax, dword [ebp - 0x2640]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc470]
addsd xmm1, xmm0
movsd qword [ebp - 0xc470], xmm1
jmp 0x49112a
mov ecx, 1
test ecx, ecx
je 0x491126
jmp 0x4911e6
jmp 0x49114d
cvtsi2sd xmm0, dword [ebp - 0x2640]
movsd xmm1, qword [ebp - 0xc470]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2644], edx
jmp 0x4911f0
xor eax, eax
je 0x491157
jmp 0x491166
jmp 0x490fb0
jmp 0x490fb0
mov ecx, 2
test ecx, ecx
je 0x4911e6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2648], eax
cvtsi2sd xmm0, dword [ebp - 0x2648]
mov eax, dword [ebp - 0x2648]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc470]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2644], ecx
jmp 0x4911f0
mov dword [ebp - 0x2644], 8
mov edx, dword [ebp - 0x2618]
add edx, 0xffffffc7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc488], xmm0
xor eax, eax
je 0x49120a
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x491246
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc488]
movsd qword [ebp - 0xc490], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4913e6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4913e6
mov dword [ebp - 0x264c], 0
jmp 0x4912c5
cmp dword [ebp - 0x264c], 0xf
jae 0x4913e1
cvtsi2sd xmm0, dword [ebp - 0x264c]
movsd xmm1, qword [ebp - 0xc490]
addsd xmm1, xmm0
movsd qword [ebp - 0xc498], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc498]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x491334
mov ecx, dword [ebp - 0x264c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc490]
addsd xmm1, xmm0
movsd qword [ebp - 0xc490], xmm1
jmp 0x491230
cvtsi2sd xmm0, dword [ebp - 0x264c]
movsd xmm1, qword [ebp - 0xc490]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc4a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x491391
mov eax, dword [ebp - 0x264c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc490]
addsd xmm1, xmm0
movsd qword [ebp - 0xc490], xmm1
jmp 0x4913aa
mov ecx, 1
test ecx, ecx
je 0x4913a6
jmp 0x491466
jmp 0x4913cd
cvtsi2sd xmm0, dword [ebp - 0x264c]
movsd xmm1, qword [ebp - 0xc490]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2650], edx
jmp 0x491470
xor eax, eax
je 0x4913d7
jmp 0x4913e6
jmp 0x491230
jmp 0x491230
mov ecx, 2
test ecx, ecx
je 0x491466
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2654], eax
cvtsi2sd xmm0, dword [ebp - 0x2654]
mov eax, dword [ebp - 0x2654]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc490]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2650], ecx
jmp 0x491470
mov dword [ebp - 0x2650], 8
mov edx, dword [ebp - 0x2618]
shl edx, 2
add edx, dword [ebp - 0x2614]
mov eax, dword [ebp - 0x2644]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2618]
shl ecx, 2
add ecx, dword [ebp - 0x2614]
mov edx, dword [ebp - 0x2650]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2618]
shl ecx, 2
add ecx, dword [ebp - 0x2614]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49177e
xor eax, eax
je 0x4914f0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49152c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da0]
movsd qword [ebp - 0xc4a8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4916cc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4916cc
mov dword [ebp - 0x2658], 0
jmp 0x4915ab
cmp dword [ebp - 0x2658], 0xf
jae 0x4916c7
cvtsi2sd xmm0, dword [ebp - 0x2658]
movsd xmm1, qword [ebp - 0xc4a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4b0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc4b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49161a
mov ecx, dword [ebp - 0x2658]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc4a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4a8], xmm1
jmp 0x491516
cvtsi2sd xmm0, dword [ebp - 0x2658]
movsd xmm1, qword [ebp - 0xc4a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4b8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc4b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x491677
mov eax, dword [ebp - 0x2658]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc4a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4a8], xmm1
jmp 0x491690
mov ecx, 1
test ecx, ecx
je 0x49168c
jmp 0x49174c
jmp 0x4916b3
cvtsi2sd xmm0, dword [ebp - 0x2658]
movsd xmm1, qword [ebp - 0xc4a8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x265c], edx
jmp 0x491756
xor eax, eax
je 0x4916bd
jmp 0x4916cc
jmp 0x491516
jmp 0x491516
mov ecx, 2
test ecx, ecx
je 0x49174c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2660], eax
cvtsi2sd xmm0, dword [ebp - 0x2660]
mov eax, dword [ebp - 0x2660]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc4a8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x265c], ecx
jmp 0x491756
mov dword [ebp - 0x265c], 8
mov edx, dword [ebp - 0x2618]
shl edx, 2
add edx, dword [ebp - 0x2614]
mov eax, dword [ebp - 0x265c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2618]
shl ecx, 2
add ecx, dword [ebp - 0x2614]
mov dword [ecx], eax
jmp 0x4906ae
mov edx, dword [ebp - 0x2610]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2610]
mov dword [ebp - 0x2664], eax
mov ecx, dword [ebp - 0x2664]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2668], ecx
mov edx, dword [ebp - 0x2668]
mov dword [ebp - 0x266c], edx
xor eax, eax
mov byte [ebp - 0x6a], al
lea ecx, [ebp - 0x6a]
call fcn.00424ed0
mov dword [ebp - 0x2670], eax
mov ecx, dword [ebp - 0x2670]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4928ce
mov eax, dword [ebp - 0x2670]
mov dword [ebp - 0x2674], eax
mov dword [ebp - 0x2678], 0
jmp 0x491808
mov ecx, dword [ebp - 0x2678]
add ecx, 1
mov dword [ebp - 0x2678], ecx
cmp dword [ebp - 0x2678], 1
jae 0x4928ce
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x491ae0
xor eax, eax
je 0x491852
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49188e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db8]
movsd qword [ebp - 0xc4c0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x491a2e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x491a2e
mov dword [ebp - 0x267c], 0
jmp 0x49190d
cmp dword [ebp - 0x267c], 0xf
jae 0x491a29
cvtsi2sd xmm0, dword [ebp - 0x267c]
movsd xmm1, qword [ebp - 0xc4c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4c8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc4c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49197c
mov ecx, dword [ebp - 0x267c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc4c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4c0], xmm1
jmp 0x491878
cvtsi2sd xmm0, dword [ebp - 0x267c]
movsd xmm1, qword [ebp - 0xc4c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4d0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc4d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4919d9
mov eax, dword [ebp - 0x267c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc4c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4c0], xmm1
jmp 0x4919f2
mov ecx, 1
test ecx, ecx
je 0x4919ee
jmp 0x491aae
jmp 0x491a15
cvtsi2sd xmm0, dword [ebp - 0x267c]
movsd xmm1, qword [ebp - 0xc4c0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2680], edx
jmp 0x491ab8
xor eax, eax
je 0x491a1f
jmp 0x491a2e
jmp 0x491878
jmp 0x491878
mov ecx, 2
test ecx, ecx
je 0x491aae
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2684], eax
cvtsi2sd xmm0, dword [ebp - 0x2684]
mov eax, dword [ebp - 0x2684]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc4c0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2680], ecx
jmp 0x491ab8
mov dword [ebp - 0x2680], 8
mov edx, dword [ebp - 0x2678]
shl edx, 2
add edx, dword [ebp - 0x2674]
mov eax, dword [ebp - 0x2680]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2678]
shl ecx, 2
add ecx, dword [ebp - 0x2674]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4925fe
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x491df0
xor eax, eax
je 0x491b62
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x491b9e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db0]
movsd qword [ebp - 0xc4d8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x491d3e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x491d3e
mov dword [ebp - 0x2688], 0
jmp 0x491c1d
cmp dword [ebp - 0x2688], 0xf
jae 0x491d39
cvtsi2sd xmm0, dword [ebp - 0x2688]
movsd xmm1, qword [ebp - 0xc4d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4e0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc4e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x491c8c
mov ecx, dword [ebp - 0x2688]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc4d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4d8], xmm1
jmp 0x491b88
cvtsi2sd xmm0, dword [ebp - 0x2688]
movsd xmm1, qword [ebp - 0xc4d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4e8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc4e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x491ce9
mov eax, dword [ebp - 0x2688]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc4d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4d8], xmm1
jmp 0x491d02
mov ecx, 1
test ecx, ecx
je 0x491cfe
jmp 0x491dbe
jmp 0x491d25
cvtsi2sd xmm0, dword [ebp - 0x2688]
movsd xmm1, qword [ebp - 0xc4d8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x268c], edx
jmp 0x491dc8
xor eax, eax
je 0x491d2f
jmp 0x491d3e
jmp 0x491b88
jmp 0x491b88
mov ecx, 2
test ecx, ecx
je 0x491dbe
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2690], eax
cvtsi2sd xmm0, dword [ebp - 0x2690]
mov eax, dword [ebp - 0x2690]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc4d8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x268c], ecx
jmp 0x491dc8
mov dword [ebp - 0x268c], 8
mov edx, dword [ebp - 0x2678]
shl edx, 2
add edx, dword [ebp - 0x2674]
mov eax, dword [ebp - 0x268c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2678]
shl ecx, 2
add ecx, dword [ebp - 0x2674]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4920bb
xor eax, eax
je 0x491e2d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x491e69
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da8]
movsd qword [ebp - 0xc4f0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x492009
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x492009
mov dword [ebp - 0x2694], 0
jmp 0x491ee8
cmp dword [ebp - 0x2694], 0xf
jae 0x492004
cvtsi2sd xmm0, dword [ebp - 0x2694]
movsd xmm1, qword [ebp - 0xc4f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc4f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x491f57
mov ecx, dword [ebp - 0x2694]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc4f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4f0], xmm1
jmp 0x491e53
cvtsi2sd xmm0, dword [ebp - 0x2694]
movsd xmm1, qword [ebp - 0xc4f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc500], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc500]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x491fb4
mov eax, dword [ebp - 0x2694]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc4f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc4f0], xmm1
jmp 0x491fcd
mov ecx, 1
test ecx, ecx
je 0x491fc9
jmp 0x492089
jmp 0x491ff0
cvtsi2sd xmm0, dword [ebp - 0x2694]
movsd xmm1, qword [ebp - 0xc4f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2698], edx
jmp 0x492093
xor eax, eax
je 0x491ffa
jmp 0x492009
jmp 0x491e53
jmp 0x491e53
mov ecx, 2
test ecx, ecx
je 0x492089
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x269c], eax
cvtsi2sd xmm0, dword [ebp - 0x269c]
mov eax, dword [ebp - 0x269c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc4f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2698], ecx
jmp 0x492093
mov dword [ebp - 0x2698], 8
mov edx, dword [ebp - 0x2678]
shl edx, 2
add edx, dword [ebp - 0x2674]
mov eax, dword [ebp - 0x2698]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2678]
shl ecx, 2
add ecx, dword [ebp - 0x2674]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2678]
add edx, 0xffffffc7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc508], xmm0
xor eax, eax
je 0x4920d5
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x492111
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc508]
movsd qword [ebp - 0xc510], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4922b1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4922b1
mov dword [ebp - 0x26a0], 0
jmp 0x492190
cmp dword [ebp - 0x26a0], 0xf
jae 0x4922ac
cvtsi2sd xmm0, dword [ebp - 0x26a0]
movsd xmm1, qword [ebp - 0xc510]
addsd xmm1, xmm0
movsd qword [ebp - 0xc518], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc518]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4921ff
mov ecx, dword [ebp - 0x26a0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc510]
addsd xmm1, xmm0
movsd qword [ebp - 0xc510], xmm1
jmp 0x4920fb
cvtsi2sd xmm0, dword [ebp - 0x26a0]
movsd xmm1, qword [ebp - 0xc510]
addsd xmm1, xmm0
movsd qword [ebp - 0xc520], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc520]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49225c
mov eax, dword [ebp - 0x26a0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc510]
addsd xmm1, xmm0
movsd qword [ebp - 0xc510], xmm1
jmp 0x492275
mov ecx, 1
test ecx, ecx
je 0x492271
jmp 0x492331
jmp 0x492298
cvtsi2sd xmm0, dword [ebp - 0x26a0]
movsd xmm1, qword [ebp - 0xc510]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x26a4], edx
jmp 0x49233b
xor eax, eax
je 0x4922a2
jmp 0x4922b1
jmp 0x4920fb
jmp 0x4920fb
mov ecx, 2
test ecx, ecx
je 0x492331
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x26a8], eax
cvtsi2sd xmm0, dword [ebp - 0x26a8]
mov eax, dword [ebp - 0x26a8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc510]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x26a4], ecx
jmp 0x49233b
mov dword [ebp - 0x26a4], 8
mov edx, dword [ebp - 0x2678]
add edx, 0xffffffc7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc528], xmm0
xor eax, eax
je 0x492355
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x492391
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc528]
movsd qword [ebp - 0xc530], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x492531
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x492531
mov dword [ebp - 0x26ac], 0
jmp 0x492410
cmp dword [ebp - 0x26ac], 0xf
jae 0x49252c
cvtsi2sd xmm0, dword [ebp - 0x26ac]
movsd xmm1, qword [ebp - 0xc530]
addsd xmm1, xmm0
movsd qword [ebp - 0xc538], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc538]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49247f
mov ecx, dword [ebp - 0x26ac]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc530]
addsd xmm1, xmm0
movsd qword [ebp - 0xc530], xmm1
jmp 0x49237b
cvtsi2sd xmm0, dword [ebp - 0x26ac]
movsd xmm1, qword [ebp - 0xc530]
addsd xmm1, xmm0
movsd qword [ebp - 0xc540], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc540]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4924dc
mov eax, dword [ebp - 0x26ac]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc530]
addsd xmm1, xmm0
movsd qword [ebp - 0xc530], xmm1
jmp 0x4924f5
mov ecx, 1
test ecx, ecx
je 0x4924f1
jmp 0x4925b1
jmp 0x492518
cvtsi2sd xmm0, dword [ebp - 0x26ac]
movsd xmm1, qword [ebp - 0xc530]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x26b0], edx
jmp 0x4925bb
xor eax, eax
je 0x492522
jmp 0x492531
jmp 0x49237b
jmp 0x49237b
mov ecx, 2
test ecx, ecx
je 0x4925b1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x26b4], eax
cvtsi2sd xmm0, dword [ebp - 0x26b4]
mov eax, dword [ebp - 0x26b4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc530]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x26b0], ecx
jmp 0x4925bb
mov dword [ebp - 0x26b0], 8
mov edx, dword [ebp - 0x2678]
shl edx, 2
add edx, dword [ebp - 0x2674]
mov eax, dword [ebp - 0x26a4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2678]
shl ecx, 2
add ecx, dword [ebp - 0x2674]
mov edx, dword [ebp - 0x26b0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2678]
shl ecx, 2
add ecx, dword [ebp - 0x2674]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4928c9
xor eax, eax
je 0x49263b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x492677
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da0]
movsd qword [ebp - 0xc548], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x492817
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x492817
mov dword [ebp - 0x26b8], 0
jmp 0x4926f6
cmp dword [ebp - 0x26b8], 0xf
jae 0x492812
cvtsi2sd xmm0, dword [ebp - 0x26b8]
movsd xmm1, qword [ebp - 0xc548]
addsd xmm1, xmm0
movsd qword [ebp - 0xc550], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc550]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x492765
mov ecx, dword [ebp - 0x26b8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc548]
addsd xmm1, xmm0
movsd qword [ebp - 0xc548], xmm1
jmp 0x492661
cvtsi2sd xmm0, dword [ebp - 0x26b8]
movsd xmm1, qword [ebp - 0xc548]
addsd xmm1, xmm0
movsd qword [ebp - 0xc558], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc558]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4927c2
mov eax, dword [ebp - 0x26b8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc548]
addsd xmm1, xmm0
movsd qword [ebp - 0xc548], xmm1
jmp 0x4927db
mov ecx, 1
test ecx, ecx
je 0x4927d7
jmp 0x492897
jmp 0x4927fe
cvtsi2sd xmm0, dword [ebp - 0x26b8]
movsd xmm1, qword [ebp - 0xc548]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x26bc], edx
jmp 0x4928a1
xor eax, eax
je 0x492808
jmp 0x492817
jmp 0x492661
jmp 0x492661
mov ecx, 2
test ecx, ecx
je 0x492897
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x26c0], eax
cvtsi2sd xmm0, dword [ebp - 0x26c0]
mov eax, dword [ebp - 0x26c0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc548]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x26bc], ecx
jmp 0x4928a1
mov dword [ebp - 0x26bc], 8
mov edx, dword [ebp - 0x2678]
shl edx, 2
add edx, dword [ebp - 0x2674]
mov eax, dword [ebp - 0x26bc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2678]
shl ecx, 2
add ecx, dword [ebp - 0x2674]
mov dword [ecx], eax
jmp 0x4917f9
mov edx, dword [ebp - 0x2670]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2670]
mov dword [ebp - 0x26c4], eax
mov ecx, dword [ebp - 0x26c4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x26c8], ecx
mov edx, dword [ebp - 0x26c8]
mov dword [ebp - 0x26cc], edx
xor eax, eax
mov byte [ebp - 0x6b], al
lea ecx, [ebp - 0x6b]
call fcn.00424ea0
mov dword [ebp - 0x26d0], eax
mov ecx, dword [ebp - 0x26d0]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x493a19
mov eax, dword [ebp - 0x26d0]
mov dword [ebp - 0x26d4], eax
mov dword [ebp - 0x26d8], 0
jmp 0x492953
mov ecx, dword [ebp - 0x26d8]
add ecx, 1
mov dword [ebp - 0x26d8], ecx
cmp dword [ebp - 0x26d8], 1
jae 0x493a19
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x492c2b
xor eax, eax
je 0x49299d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4929d9
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db8]
movsd qword [ebp - 0xc560], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x492b79
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x492b79
mov dword [ebp - 0x26dc], 0
jmp 0x492a58
cmp dword [ebp - 0x26dc], 0xf
jae 0x492b74
cvtsi2sd xmm0, dword [ebp - 0x26dc]
movsd xmm1, qword [ebp - 0xc560]
addsd xmm1, xmm0
movsd qword [ebp - 0xc568], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc568]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x492ac7
mov ecx, dword [ebp - 0x26dc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc560]
addsd xmm1, xmm0
movsd qword [ebp - 0xc560], xmm1
jmp 0x4929c3
cvtsi2sd xmm0, dword [ebp - 0x26dc]
movsd xmm1, qword [ebp - 0xc560]
addsd xmm1, xmm0
movsd qword [ebp - 0xc570], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc570]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x492b24
mov eax, dword [ebp - 0x26dc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc560]
addsd xmm1, xmm0
movsd qword [ebp - 0xc560], xmm1
jmp 0x492b3d
mov ecx, 1
test ecx, ecx
je 0x492b39
jmp 0x492bf9
jmp 0x492b60
cvtsi2sd xmm0, dword [ebp - 0x26dc]
movsd xmm1, qword [ebp - 0xc560]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x26e0], edx
jmp 0x492c03
xor eax, eax
je 0x492b6a
jmp 0x492b79
jmp 0x4929c3
jmp 0x4929c3
mov ecx, 2
test ecx, ecx
je 0x492bf9
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x26e4], eax
cvtsi2sd xmm0, dword [ebp - 0x26e4]
mov eax, dword [ebp - 0x26e4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc560]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x26e0], ecx
jmp 0x492c03
mov dword [ebp - 0x26e0], 8
mov edx, dword [ebp - 0x26d8]
shl edx, 2
add edx, dword [ebp - 0x26d4]
mov eax, dword [ebp - 0x26e0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x26d8]
shl ecx, 2
add ecx, dword [ebp - 0x26d4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x493749
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x492f3b
xor eax, eax
je 0x492cad
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x492ce9
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736db0]
movsd qword [ebp - 0xc578], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x492e89
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x492e89
mov dword [ebp - 0x26e8], 0
jmp 0x492d68
cmp dword [ebp - 0x26e8], 0xf
jae 0x492e84
cvtsi2sd xmm0, dword [ebp - 0x26e8]
movsd xmm1, qword [ebp - 0xc578]
addsd xmm1, xmm0
movsd qword [ebp - 0xc580], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc580]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x492dd7
mov ecx, dword [ebp - 0x26e8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc578]
addsd xmm1, xmm0
movsd qword [ebp - 0xc578], xmm1
jmp 0x492cd3
cvtsi2sd xmm0, dword [ebp - 0x26e8]
movsd xmm1, qword [ebp - 0xc578]
addsd xmm1, xmm0
movsd qword [ebp - 0xc588], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc588]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x492e34
mov eax, dword [ebp - 0x26e8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc578]
addsd xmm1, xmm0
movsd qword [ebp - 0xc578], xmm1
jmp 0x492e4d
mov ecx, 1
test ecx, ecx
je 0x492e49
jmp 0x492f09
jmp 0x492e70
cvtsi2sd xmm0, dword [ebp - 0x26e8]
movsd xmm1, qword [ebp - 0xc578]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x26ec], edx
jmp 0x492f13
xor eax, eax
je 0x492e7a
jmp 0x492e89
jmp 0x492cd3
jmp 0x492cd3
mov ecx, 2
test ecx, ecx
je 0x492f09
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x26f0], eax
cvtsi2sd xmm0, dword [ebp - 0x26f0]
mov eax, dword [ebp - 0x26f0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc578]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x26ec], ecx
jmp 0x492f13
mov dword [ebp - 0x26ec], 8
mov edx, dword [ebp - 0x26d8]
shl edx, 2
add edx, dword [ebp - 0x26d4]
mov eax, dword [ebp - 0x26ec]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x26d8]
shl ecx, 2
add ecx, dword [ebp - 0x26d4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x493206
xor eax, eax
je 0x492f78
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x492fb4
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da8]
movsd qword [ebp - 0xc590], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x493154
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x493154
mov dword [ebp - 0x26f4], 0
jmp 0x493033
cmp dword [ebp - 0x26f4], 0xf
jae 0x49314f
cvtsi2sd xmm0, dword [ebp - 0x26f4]
movsd xmm1, qword [ebp - 0xc590]
addsd xmm1, xmm0
movsd qword [ebp - 0xc598], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc598]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4930a2
mov ecx, dword [ebp - 0x26f4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc590]
addsd xmm1, xmm0
movsd qword [ebp - 0xc590], xmm1
jmp 0x492f9e
cvtsi2sd xmm0, dword [ebp - 0x26f4]
movsd xmm1, qword [ebp - 0xc590]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc5a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4930ff
mov eax, dword [ebp - 0x26f4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc590]
addsd xmm1, xmm0
movsd qword [ebp - 0xc590], xmm1
jmp 0x493118
mov ecx, 1
test ecx, ecx
je 0x493114
jmp 0x4931d4
jmp 0x49313b
cvtsi2sd xmm0, dword [ebp - 0x26f4]
movsd xmm1, qword [ebp - 0xc590]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x26f8], edx
jmp 0x4931de
xor eax, eax
je 0x493145
jmp 0x493154
jmp 0x492f9e
jmp 0x492f9e
mov ecx, 2
test ecx, ecx
je 0x4931d4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x26fc], eax
cvtsi2sd xmm0, dword [ebp - 0x26fc]
mov eax, dword [ebp - 0x26fc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc590]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x26f8], ecx
jmp 0x4931de
mov dword [ebp - 0x26f8], 8
mov edx, dword [ebp - 0x26d8]
shl edx, 2
add edx, dword [ebp - 0x26d4]
mov eax, dword [ebp - 0x26f8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x26d8]
shl ecx, 2
add ecx, dword [ebp - 0x26d4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x26d8]
add edx, 0xffffffc7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc5a8], xmm0
xor eax, eax
je 0x493220
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49325c
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc5a8]
movsd qword [ebp - 0xc5b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4933fc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4933fc
mov dword [ebp - 0x2700], 0
jmp 0x4932db
cmp dword [ebp - 0x2700], 0xf
jae 0x4933f7
cvtsi2sd xmm0, dword [ebp - 0x2700]
movsd xmm1, qword [ebp - 0xc5b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc5b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49334a
mov ecx, dword [ebp - 0x2700]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc5b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5b0], xmm1
jmp 0x493246
cvtsi2sd xmm0, dword [ebp - 0x2700]
movsd xmm1, qword [ebp - 0xc5b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc5c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4933a7
mov eax, dword [ebp - 0x2700]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc5b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5b0], xmm1
jmp 0x4933c0
mov ecx, 1
test ecx, ecx
je 0x4933bc
jmp 0x49347c
jmp 0x4933e3
cvtsi2sd xmm0, dword [ebp - 0x2700]
movsd xmm1, qword [ebp - 0xc5b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2704], edx
jmp 0x493486
xor eax, eax
je 0x4933ed
jmp 0x4933fc
jmp 0x493246
jmp 0x493246
mov ecx, 2
test ecx, ecx
je 0x49347c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2708], eax
cvtsi2sd xmm0, dword [ebp - 0x2708]
mov eax, dword [ebp - 0x2708]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc5b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2704], ecx
jmp 0x493486
mov dword [ebp - 0x2704], 8
mov edx, dword [ebp - 0x26d8]
add edx, 0xffffffc7
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc5c8], xmm0
xor eax, eax
je 0x4934a0
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4934dc
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc5c8]
movsd qword [ebp - 0xc5d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49367c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49367c
mov dword [ebp - 0x270c], 0
jmp 0x49355b
cmp dword [ebp - 0x270c], 0xf
jae 0x493677
cvtsi2sd xmm0, dword [ebp - 0x270c]
movsd xmm1, qword [ebp - 0xc5d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc5d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4935ca
mov ecx, dword [ebp - 0x270c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc5d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5d0], xmm1
jmp 0x4934c6
cvtsi2sd xmm0, dword [ebp - 0x270c]
movsd xmm1, qword [ebp - 0xc5d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc5e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x493627
mov eax, dword [ebp - 0x270c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc5d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5d0], xmm1
jmp 0x493640
mov ecx, 1
test ecx, ecx
je 0x49363c
jmp 0x4936fc
jmp 0x493663
cvtsi2sd xmm0, dword [ebp - 0x270c]
movsd xmm1, qword [ebp - 0xc5d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2710], edx
jmp 0x493706
xor eax, eax
je 0x49366d
jmp 0x49367c
jmp 0x4934c6
jmp 0x4934c6
mov ecx, 2
test ecx, ecx
je 0x4936fc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2714], eax
cvtsi2sd xmm0, dword [ebp - 0x2714]
mov eax, dword [ebp - 0x2714]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc5d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2710], ecx
jmp 0x493706
mov dword [ebp - 0x2710], 8
mov edx, dword [ebp - 0x26d8]
shl edx, 2
add edx, dword [ebp - 0x26d4]
mov eax, dword [ebp - 0x2704]
add eax, dword [edx]
mov ecx, dword [ebp - 0x26d8]
shl ecx, 2
add ecx, dword [ebp - 0x26d4]
mov edx, dword [ebp - 0x2710]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x26d8]
shl ecx, 2
add ecx, dword [ebp - 0x26d4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x493a14
xor eax, eax
je 0x493786
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4937c2
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da0]
movsd qword [ebp - 0xc5e8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x493962
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x493962
mov dword [ebp - 0x2718], 0
jmp 0x493841
cmp dword [ebp - 0x2718], 0xf
jae 0x49395d
cvtsi2sd xmm0, dword [ebp - 0x2718]
movsd xmm1, qword [ebp - 0xc5e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5f0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc5f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4938b0
mov ecx, dword [ebp - 0x2718]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc5e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5e8], xmm1
jmp 0x4937ac
cvtsi2sd xmm0, dword [ebp - 0x2718]
movsd xmm1, qword [ebp - 0xc5e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5f8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc5f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49390d
mov eax, dword [ebp - 0x2718]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc5e8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc5e8], xmm1
jmp 0x493926
mov ecx, 1
test ecx, ecx
je 0x493922
jmp 0x4939e2
jmp 0x493949
cvtsi2sd xmm0, dword [ebp - 0x2718]
movsd xmm1, qword [ebp - 0xc5e8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x271c], edx
jmp 0x4939ec
xor eax, eax
je 0x493953
jmp 0x493962
jmp 0x4937ac
jmp 0x4937ac
mov ecx, 2
test ecx, ecx
je 0x4939e2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2720], eax
cvtsi2sd xmm0, dword [ebp - 0x2720]
mov eax, dword [ebp - 0x2720]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc5e8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x271c], ecx
jmp 0x4939ec
mov dword [ebp - 0x271c], 8
mov edx, dword [ebp - 0x26d8]
shl edx, 2
add edx, dword [ebp - 0x26d4]
mov eax, dword [ebp - 0x271c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x26d8]
shl ecx, 2
add ecx, dword [ebp - 0x26d4]
mov dword [ecx], eax
jmp 0x492944
mov edx, dword [ebp - 0x26d0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x26d0]
mov dword [ebp - 0x2724], eax
mov ecx, dword [ebp - 0x2724]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2728], ecx
mov edx, dword [ebp - 0x2728]
mov dword [ebp - 0x272c], edx
mov eax, dword [ebp - 0x26cc]
mov dword [ebp - 0x266c], eax
cmp dword [ebp - 0x266c], 0
je 0x494bb6
xor ecx, ecx
mov byte [ebp - 0x6c], cl
lea ecx, [ebp - 0x6c]
call fcn.00424e70
mov dword [ebp - 0x2730], eax
mov edx, dword [ebp - 0x2730]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x494b7d
mov ecx, dword [ebp - 0x2730]
mov dword [ebp - 0x2734], ecx
mov dword [ebp - 0x2738], 0
jmp 0x493ab7
mov edx, dword [ebp - 0x2738]
add edx, 1
mov dword [ebp - 0x2738], edx
cmp dword [ebp - 0x2738], 1
jae 0x494b7d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x493d8f
xor eax, eax
je 0x493b01
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x493b3d
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736db0]
movsd qword [ebp - 0xc600], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x493cdd
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x493cdd
mov dword [ebp - 0x273c], 0
jmp 0x493bbc
cmp dword [ebp - 0x273c], 0xf
jae 0x493cd8
cvtsi2sd xmm0, dword [ebp - 0x273c]
movsd xmm1, qword [ebp - 0xc600]
addsd xmm1, xmm0
movsd qword [ebp - 0xc608], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc608]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x493c2b
mov ecx, dword [ebp - 0x273c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc600]
addsd xmm1, xmm0
movsd qword [ebp - 0xc600], xmm1
jmp 0x493b27
cvtsi2sd xmm0, dword [ebp - 0x273c]
movsd xmm1, qword [ebp - 0xc600]
addsd xmm1, xmm0
movsd qword [ebp - 0xc610], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc610]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x493c88
mov eax, dword [ebp - 0x273c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc600]
addsd xmm1, xmm0
movsd qword [ebp - 0xc600], xmm1
jmp 0x493ca1
mov ecx, 1
test ecx, ecx
je 0x493c9d
jmp 0x493d5d
jmp 0x493cc4
cvtsi2sd xmm0, dword [ebp - 0x273c]
movsd xmm1, qword [ebp - 0xc600]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2740], edx
jmp 0x493d67
xor eax, eax
je 0x493cce
jmp 0x493cdd
jmp 0x493b27
jmp 0x493b27
mov ecx, 2
test ecx, ecx
je 0x493d5d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2744], eax
cvtsi2sd xmm0, dword [ebp - 0x2744]
mov eax, dword [ebp - 0x2744]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc600]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2740], ecx
jmp 0x493d67
mov dword [ebp - 0x2740], 8
mov edx, dword [ebp - 0x2738]
shl edx, 2
add edx, dword [ebp - 0x2734]
mov eax, dword [ebp - 0x2740]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2738]
shl ecx, 2
add ecx, dword [ebp - 0x2734]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4948ad
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49409f
xor eax, eax
je 0x493e11
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x493e4d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da8]
movsd qword [ebp - 0xc618], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x493fed
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x493fed
mov dword [ebp - 0x2748], 0
jmp 0x493ecc
cmp dword [ebp - 0x2748], 0xf
jae 0x493fe8
cvtsi2sd xmm0, dword [ebp - 0x2748]
movsd xmm1, qword [ebp - 0xc618]
addsd xmm1, xmm0
movsd qword [ebp - 0xc620], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc620]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x493f3b
mov ecx, dword [ebp - 0x2748]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc618]
addsd xmm1, xmm0
movsd qword [ebp - 0xc618], xmm1
jmp 0x493e37
cvtsi2sd xmm0, dword [ebp - 0x2748]
movsd xmm1, qword [ebp - 0xc618]
addsd xmm1, xmm0
movsd qword [ebp - 0xc628], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc628]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x493f98
mov eax, dword [ebp - 0x2748]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc618]
addsd xmm1, xmm0
movsd qword [ebp - 0xc618], xmm1
jmp 0x493fb1
mov ecx, 1
test ecx, ecx
je 0x493fad
jmp 0x49406d
jmp 0x493fd4
cvtsi2sd xmm0, dword [ebp - 0x2748]
movsd xmm1, qword [ebp - 0xc618]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x274c], edx
jmp 0x494077
xor eax, eax
je 0x493fde
jmp 0x493fed
jmp 0x493e37
jmp 0x493e37
mov ecx, 2
test ecx, ecx
je 0x49406d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2750], eax
cvtsi2sd xmm0, dword [ebp - 0x2750]
mov eax, dword [ebp - 0x2750]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc618]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x274c], ecx
jmp 0x494077
mov dword [ebp - 0x274c], 8
mov edx, dword [ebp - 0x2738]
shl edx, 2
add edx, dword [ebp - 0x2734]
mov eax, dword [ebp - 0x274c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2738]
shl ecx, 2
add ecx, dword [ebp - 0x2734]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49436a
xor eax, eax
je 0x4940dc
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x494118
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da0]
movsd qword [ebp - 0xc630], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4942b8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4942b8
mov dword [ebp - 0x2754], 0
jmp 0x494197
cmp dword [ebp - 0x2754], 0xf
jae 0x4942b3
cvtsi2sd xmm0, dword [ebp - 0x2754]
movsd xmm1, qword [ebp - 0xc630]
addsd xmm1, xmm0
movsd qword [ebp - 0xc638], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc638]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x494206
mov ecx, dword [ebp - 0x2754]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc630]
addsd xmm1, xmm0
movsd qword [ebp - 0xc630], xmm1
jmp 0x494102
cvtsi2sd xmm0, dword [ebp - 0x2754]
movsd xmm1, qword [ebp - 0xc630]
addsd xmm1, xmm0
movsd qword [ebp - 0xc640], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc640]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x494263
mov eax, dword [ebp - 0x2754]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc630]
addsd xmm1, xmm0
movsd qword [ebp - 0xc630], xmm1
jmp 0x49427c
mov ecx, 1
test ecx, ecx
je 0x494278
jmp 0x494338
jmp 0x49429f
cvtsi2sd xmm0, dword [ebp - 0x2754]
movsd xmm1, qword [ebp - 0xc630]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2758], edx
jmp 0x494342
xor eax, eax
je 0x4942a9
jmp 0x4942b8
jmp 0x494102
jmp 0x494102
mov ecx, 2
test ecx, ecx
je 0x494338
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x275c], eax
cvtsi2sd xmm0, dword [ebp - 0x275c]
mov eax, dword [ebp - 0x275c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc630]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2758], ecx
jmp 0x494342
mov dword [ebp - 0x2758], 8
mov edx, dword [ebp - 0x2738]
shl edx, 2
add edx, dword [ebp - 0x2734]
mov eax, dword [ebp - 0x2758]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2738]
shl ecx, 2
add ecx, dword [ebp - 0x2734]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2738]
add edx, 0xffffffc8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc648], xmm0
xor eax, eax
je 0x494384
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4943c0
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc648]
movsd qword [ebp - 0xc650], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x494560
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x494560
mov dword [ebp - 0x2760], 0
jmp 0x49443f
cmp dword [ebp - 0x2760], 0xf
jae 0x49455b
cvtsi2sd xmm0, dword [ebp - 0x2760]
movsd xmm1, qword [ebp - 0xc650]
addsd xmm1, xmm0
movsd qword [ebp - 0xc658], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc658]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4944ae
mov ecx, dword [ebp - 0x2760]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc650]
addsd xmm1, xmm0
movsd qword [ebp - 0xc650], xmm1
jmp 0x4943aa
cvtsi2sd xmm0, dword [ebp - 0x2760]
movsd xmm1, qword [ebp - 0xc650]
addsd xmm1, xmm0
movsd qword [ebp - 0xc660], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc660]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49450b
mov eax, dword [ebp - 0x2760]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc650]
addsd xmm1, xmm0
movsd qword [ebp - 0xc650], xmm1
jmp 0x494524
mov ecx, 1
test ecx, ecx
je 0x494520
jmp 0x4945e0
jmp 0x494547
cvtsi2sd xmm0, dword [ebp - 0x2760]
movsd xmm1, qword [ebp - 0xc650]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2764], edx
jmp 0x4945ea
xor eax, eax
je 0x494551
jmp 0x494560
jmp 0x4943aa
jmp 0x4943aa
mov ecx, 2
test ecx, ecx
je 0x4945e0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2768], eax
cvtsi2sd xmm0, dword [ebp - 0x2768]
mov eax, dword [ebp - 0x2768]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc650]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2764], ecx
jmp 0x4945ea
mov dword [ebp - 0x2764], 8
mov edx, dword [ebp - 0x2738]
add edx, 0xffffffc8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc668], xmm0
xor eax, eax
je 0x494604
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x494640
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc668]
movsd qword [ebp - 0xc670], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4947e0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4947e0
mov dword [ebp - 0x276c], 0
jmp 0x4946bf
cmp dword [ebp - 0x276c], 0xf
jae 0x4947db
cvtsi2sd xmm0, dword [ebp - 0x276c]
movsd xmm1, qword [ebp - 0xc670]
addsd xmm1, xmm0
movsd qword [ebp - 0xc678], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc678]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49472e
mov ecx, dword [ebp - 0x276c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc670]
addsd xmm1, xmm0
movsd qword [ebp - 0xc670], xmm1
jmp 0x49462a
cvtsi2sd xmm0, dword [ebp - 0x276c]
movsd xmm1, qword [ebp - 0xc670]
addsd xmm1, xmm0
movsd qword [ebp - 0xc680], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc680]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49478b
mov eax, dword [ebp - 0x276c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc670]
addsd xmm1, xmm0
movsd qword [ebp - 0xc670], xmm1
jmp 0x4947a4
mov ecx, 1
test ecx, ecx
je 0x4947a0
jmp 0x494860
jmp 0x4947c7
cvtsi2sd xmm0, dword [ebp - 0x276c]
movsd xmm1, qword [ebp - 0xc670]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2770], edx
jmp 0x49486a
xor eax, eax
je 0x4947d1
jmp 0x4947e0
jmp 0x49462a
jmp 0x49462a
mov ecx, 2
test ecx, ecx
je 0x494860
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2774], eax
cvtsi2sd xmm0, dword [ebp - 0x2774]
mov eax, dword [ebp - 0x2774]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc670]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2770], ecx
jmp 0x49486a
mov dword [ebp - 0x2770], 8
mov edx, dword [ebp - 0x2738]
shl edx, 2
add edx, dword [ebp - 0x2734]
mov eax, dword [ebp - 0x2764]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2738]
shl ecx, 2
add ecx, dword [ebp - 0x2734]
mov edx, dword [ebp - 0x2770]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2738]
shl ecx, 2
add ecx, dword [ebp - 0x2734]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x494b78
xor eax, eax
je 0x4948ea
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x494926
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d98]
movsd qword [ebp - 0xc688], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x494ac6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x494ac6
mov dword [ebp - 0x2778], 0
jmp 0x4949a5
cmp dword [ebp - 0x2778], 0xf
jae 0x494ac1
cvtsi2sd xmm0, dword [ebp - 0x2778]
movsd xmm1, qword [ebp - 0xc688]
addsd xmm1, xmm0
movsd qword [ebp - 0xc690], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc690]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x494a14
mov ecx, dword [ebp - 0x2778]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc688]
addsd xmm1, xmm0
movsd qword [ebp - 0xc688], xmm1
jmp 0x494910
cvtsi2sd xmm0, dword [ebp - 0x2778]
movsd xmm1, qword [ebp - 0xc688]
addsd xmm1, xmm0
movsd qword [ebp - 0xc698], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc698]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x494a71
mov eax, dword [ebp - 0x2778]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc688]
addsd xmm1, xmm0
movsd qword [ebp - 0xc688], xmm1
jmp 0x494a8a
mov ecx, 1
test ecx, ecx
je 0x494a86
jmp 0x494b46
jmp 0x494aad
cvtsi2sd xmm0, dword [ebp - 0x2778]
movsd xmm1, qword [ebp - 0xc688]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x277c], edx
jmp 0x494b50
xor eax, eax
je 0x494ab7
jmp 0x494ac6
jmp 0x494910
jmp 0x494910
mov ecx, 2
test ecx, ecx
je 0x494b46
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2780], eax
cvtsi2sd xmm0, dword [ebp - 0x2780]
mov eax, dword [ebp - 0x2780]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc688]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x277c], ecx
jmp 0x494b50
mov dword [ebp - 0x277c], 8
mov edx, dword [ebp - 0x2738]
shl edx, 2
add edx, dword [ebp - 0x2734]
mov eax, dword [ebp - 0x277c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2738]
shl ecx, 2
add ecx, dword [ebp - 0x2734]
mov dword [ecx], eax
jmp 0x493aa8
mov edx, dword [ebp - 0x2730]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2730]
mov dword [ebp - 0x2784], eax
mov ecx, dword [ebp - 0x2784]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2788], ecx
mov edx, dword [ebp - 0x2788]
mov dword [ebp - 0x272c], edx
lea eax, [ebp - 0x16664]
mov ecx, 2
imul edx, ecx, 0xc
movzx eax, word [eax + edx]
neg eax
sbb eax, eax
neg eax
mov byte [ebp - 0x6d], al
movzx ecx, byte [ebp - 0x6d]
test ecx, ecx
jne 0x494c36
mov dword [ebp - 0x278c], 0
jmp 0x494bf4
mov edx, dword [ebp - 0x278c]
add edx, 1
mov dword [ebp - 0x278c], edx
cmp dword [ebp - 0x278c], 0xd
jge 0x494c36
mov eax, dword [ebp - 0x278c]
shl eax, 1
lea ecx, [ebp - 0x16664]
movzx ecx, word [ecx + eax]
mov eax, dword [ebp - 0x278c]
cdq
mov esi, 0x36
idiv esi
add edx, 0x38
xor ecx, edx
lea edx, [ebp - 0x16664]
mov eax, dword [ebp - 0x278c]
shl eax, 1
mov word [edx + eax], cx
jmp 0x494be5
xor ecx, ecx
mov byte [ebp - 0x6e], cl
lea ecx, [ebp - 0x6e]
call fcn.00424e40
mov dword [ebp - 0x2790], eax
mov edx, dword [ebp - 0x2790]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x495d48
mov ecx, dword [ebp - 0x2790]
mov dword [ebp - 0x2794], ecx
mov dword [ebp - 0x2798], 0
jmp 0x494c82
mov edx, dword [ebp - 0x2798]
add edx, 1
mov dword [ebp - 0x2798], edx
cmp dword [ebp - 0x2798], 1
jae 0x495d48
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x494f5a
xor eax, eax
je 0x494ccc
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x494d08
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736db0]
movsd qword [ebp - 0xc6a0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x494ea8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x494ea8
mov dword [ebp - 0x279c], 0
jmp 0x494d87
cmp dword [ebp - 0x279c], 0xf
jae 0x494ea3
cvtsi2sd xmm0, dword [ebp - 0x279c]
movsd xmm1, qword [ebp - 0xc6a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6a8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc6a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x494df6
mov ecx, dword [ebp - 0x279c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc6a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6a0], xmm1
jmp 0x494cf2
cvtsi2sd xmm0, dword [ebp - 0x279c]
movsd xmm1, qword [ebp - 0xc6a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6b0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc6b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x494e53
mov eax, dword [ebp - 0x279c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc6a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6a0], xmm1
jmp 0x494e6c
mov ecx, 1
test ecx, ecx
je 0x494e68
jmp 0x494f28
jmp 0x494e8f
cvtsi2sd xmm0, dword [ebp - 0x279c]
movsd xmm1, qword [ebp - 0xc6a0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x27a0], edx
jmp 0x494f32
xor eax, eax
je 0x494e99
jmp 0x494ea8
jmp 0x494cf2
jmp 0x494cf2
mov ecx, 2
test ecx, ecx
je 0x494f28
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x27a4], eax
cvtsi2sd xmm0, dword [ebp - 0x27a4]
mov eax, dword [ebp - 0x27a4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc6a0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x27a0], ecx
jmp 0x494f32
mov dword [ebp - 0x27a0], 8
mov edx, dword [ebp - 0x2798]
shl edx, 2
add edx, dword [ebp - 0x2794]
mov eax, dword [ebp - 0x27a0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2798]
shl ecx, 2
add ecx, dword [ebp - 0x2794]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x495a78
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49526a
xor eax, eax
je 0x494fdc
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x495018
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da8]
movsd qword [ebp - 0xc6b8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4951b8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4951b8
mov dword [ebp - 0x27a8], 0
jmp 0x495097
cmp dword [ebp - 0x27a8], 0xf
jae 0x4951b3
cvtsi2sd xmm0, dword [ebp - 0x27a8]
movsd xmm1, qword [ebp - 0xc6b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6c0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc6c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x495106
mov ecx, dword [ebp - 0x27a8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc6b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6b8], xmm1
jmp 0x495002
cvtsi2sd xmm0, dword [ebp - 0x27a8]
movsd xmm1, qword [ebp - 0xc6b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6c8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc6c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x495163
mov eax, dword [ebp - 0x27a8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc6b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6b8], xmm1
jmp 0x49517c
mov ecx, 1
test ecx, ecx
je 0x495178
jmp 0x495238
jmp 0x49519f
cvtsi2sd xmm0, dword [ebp - 0x27a8]
movsd xmm1, qword [ebp - 0xc6b8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x27ac], edx
jmp 0x495242
xor eax, eax
je 0x4951a9
jmp 0x4951b8
jmp 0x495002
jmp 0x495002
mov ecx, 2
test ecx, ecx
je 0x495238
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x27b0], eax
cvtsi2sd xmm0, dword [ebp - 0x27b0]
mov eax, dword [ebp - 0x27b0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc6b8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x27ac], ecx
jmp 0x495242
mov dword [ebp - 0x27ac], 8
mov edx, dword [ebp - 0x2798]
shl edx, 2
add edx, dword [ebp - 0x2794]
mov eax, dword [ebp - 0x27ac]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2798]
shl ecx, 2
add ecx, dword [ebp - 0x2794]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x495535
xor eax, eax
je 0x4952a7
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4952e3
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da0]
movsd qword [ebp - 0xc6d0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x495483
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x495483
mov dword [ebp - 0x27b4], 0
jmp 0x495362
cmp dword [ebp - 0x27b4], 0xf
jae 0x49547e
cvtsi2sd xmm0, dword [ebp - 0x27b4]
movsd xmm1, qword [ebp - 0xc6d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc6d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4953d1
mov ecx, dword [ebp - 0x27b4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc6d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6d0], xmm1
jmp 0x4952cd
cvtsi2sd xmm0, dword [ebp - 0x27b4]
movsd xmm1, qword [ebp - 0xc6d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc6e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49542e
mov eax, dword [ebp - 0x27b4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc6d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6d0], xmm1
jmp 0x495447
mov ecx, 1
test ecx, ecx
je 0x495443
jmp 0x495503
jmp 0x49546a
cvtsi2sd xmm0, dword [ebp - 0x27b4]
movsd xmm1, qword [ebp - 0xc6d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x27b8], edx
jmp 0x49550d
xor eax, eax
je 0x495474
jmp 0x495483
jmp 0x4952cd
jmp 0x4952cd
mov ecx, 2
test ecx, ecx
je 0x495503
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x27bc], eax
cvtsi2sd xmm0, dword [ebp - 0x27bc]
mov eax, dword [ebp - 0x27bc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc6d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x27b8], ecx
jmp 0x49550d
mov dword [ebp - 0x27b8], 8
mov edx, dword [ebp - 0x2798]
shl edx, 2
add edx, dword [ebp - 0x2794]
mov eax, dword [ebp - 0x27b8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2798]
shl ecx, 2
add ecx, dword [ebp - 0x2794]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2798]
add edx, 0xffffffc8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc6e8], xmm0
xor eax, eax
je 0x49554f
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49558b
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc6e8]
movsd qword [ebp - 0xc6f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49572b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49572b
mov dword [ebp - 0x27c0], 0
jmp 0x49560a
cmp dword [ebp - 0x27c0], 0xf
jae 0x495726
cvtsi2sd xmm0, dword [ebp - 0x27c0]
movsd xmm1, qword [ebp - 0xc6f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc6f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x495679
mov ecx, dword [ebp - 0x27c0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc6f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6f0], xmm1
jmp 0x495575
cvtsi2sd xmm0, dword [ebp - 0x27c0]
movsd xmm1, qword [ebp - 0xc6f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc700], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc700]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4956d6
mov eax, dword [ebp - 0x27c0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc6f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc6f0], xmm1
jmp 0x4956ef
mov ecx, 1
test ecx, ecx
je 0x4956eb
jmp 0x4957ab
jmp 0x495712
cvtsi2sd xmm0, dword [ebp - 0x27c0]
movsd xmm1, qword [ebp - 0xc6f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x27c4], edx
jmp 0x4957b5
xor eax, eax
je 0x49571c
jmp 0x49572b
jmp 0x495575
jmp 0x495575
mov ecx, 2
test ecx, ecx
je 0x4957ab
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x27c8], eax
cvtsi2sd xmm0, dword [ebp - 0x27c8]
mov eax, dword [ebp - 0x27c8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc6f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x27c4], ecx
jmp 0x4957b5
mov dword [ebp - 0x27c4], 8
mov edx, dword [ebp - 0x2798]
add edx, 0xffffffc8
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc708], xmm0
xor eax, eax
je 0x4957cf
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49580b
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc708]
movsd qword [ebp - 0xc710], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4959ab
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4959ab
mov dword [ebp - 0x27cc], 0
jmp 0x49588a
cmp dword [ebp - 0x27cc], 0xf
jae 0x4959a6
cvtsi2sd xmm0, dword [ebp - 0x27cc]
movsd xmm1, qword [ebp - 0xc710]
addsd xmm1, xmm0
movsd qword [ebp - 0xc718], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc718]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4958f9
mov ecx, dword [ebp - 0x27cc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc710]
addsd xmm1, xmm0
movsd qword [ebp - 0xc710], xmm1
jmp 0x4957f5
cvtsi2sd xmm0, dword [ebp - 0x27cc]
movsd xmm1, qword [ebp - 0xc710]
addsd xmm1, xmm0
movsd qword [ebp - 0xc720], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc720]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x495956
mov eax, dword [ebp - 0x27cc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc710]
addsd xmm1, xmm0
movsd qword [ebp - 0xc710], xmm1
jmp 0x49596f
mov ecx, 1
test ecx, ecx
je 0x49596b
jmp 0x495a2b
jmp 0x495992
cvtsi2sd xmm0, dword [ebp - 0x27cc]
movsd xmm1, qword [ebp - 0xc710]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x27d0], edx
jmp 0x495a35
xor eax, eax
je 0x49599c
jmp 0x4959ab
jmp 0x4957f5
jmp 0x4957f5
mov ecx, 2
test ecx, ecx
je 0x495a2b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x27d4], eax
cvtsi2sd xmm0, dword [ebp - 0x27d4]
mov eax, dword [ebp - 0x27d4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc710]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x27d0], ecx
jmp 0x495a35
mov dword [ebp - 0x27d0], 8
mov edx, dword [ebp - 0x2798]
shl edx, 2
add edx, dword [ebp - 0x2794]
mov eax, dword [ebp - 0x27c4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2798]
shl ecx, 2
add ecx, dword [ebp - 0x2794]
mov edx, dword [ebp - 0x27d0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2798]
shl ecx, 2
add ecx, dword [ebp - 0x2794]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x495d43
xor eax, eax
je 0x495ab5
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x495af1
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d98]
movsd qword [ebp - 0xc728], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x495c91
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x495c91
mov dword [ebp - 0x27d8], 0
jmp 0x495b70
cmp dword [ebp - 0x27d8], 0xf
jae 0x495c8c
cvtsi2sd xmm0, dword [ebp - 0x27d8]
movsd xmm1, qword [ebp - 0xc728]
addsd xmm1, xmm0
movsd qword [ebp - 0xc730], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc730]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x495bdf
mov ecx, dword [ebp - 0x27d8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc728]
addsd xmm1, xmm0
movsd qword [ebp - 0xc728], xmm1
jmp 0x495adb
cvtsi2sd xmm0, dword [ebp - 0x27d8]
movsd xmm1, qword [ebp - 0xc728]
addsd xmm1, xmm0
movsd qword [ebp - 0xc738], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc738]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x495c3c
mov eax, dword [ebp - 0x27d8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc728]
addsd xmm1, xmm0
movsd qword [ebp - 0xc728], xmm1
jmp 0x495c55
mov ecx, 1
test ecx, ecx
je 0x495c51
jmp 0x495d11
jmp 0x495c78
cvtsi2sd xmm0, dword [ebp - 0x27d8]
movsd xmm1, qword [ebp - 0xc728]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x27dc], edx
jmp 0x495d1b
xor eax, eax
je 0x495c82
jmp 0x495c91
jmp 0x495adb
jmp 0x495adb
mov ecx, 2
test ecx, ecx
je 0x495d11
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x27e0], eax
cvtsi2sd xmm0, dword [ebp - 0x27e0]
mov eax, dword [ebp - 0x27e0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc728]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x27dc], ecx
jmp 0x495d1b
mov dword [ebp - 0x27dc], 8
mov edx, dword [ebp - 0x2798]
shl edx, 2
add edx, dword [ebp - 0x2794]
mov eax, dword [ebp - 0x27dc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2798]
shl ecx, 2
add ecx, dword [ebp - 0x2794]
mov dword [ecx], eax
jmp 0x494c73
mov edx, dword [ebp - 0x2790]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2790]
mov dword [ebp - 0x27e4], eax
mov ecx, dword [ebp - 0x27e4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x27e8], ecx
mov edx, dword [ebp - 0x27e8]
mov dword [ebp - 0x27ec], edx
xor eax, eax
mov byte [ebp - 0x6f], al
lea ecx, [ebp - 0x6f]
call fcn.00424e10
mov dword [ebp - 0x27f0], eax
mov ecx, dword [ebp - 0x27f0]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x496e93
mov eax, dword [ebp - 0x27f0]
mov dword [ebp - 0x27f4], eax
mov dword [ebp - 0x27f8], 0
jmp 0x495dcd
mov ecx, dword [ebp - 0x27f8]
add ecx, 1
mov dword [ebp - 0x27f8], ecx
cmp dword [ebp - 0x27f8], 1
jae 0x496e93
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4960a5
xor eax, eax
je 0x495e17
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x495e53
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da8]
movsd qword [ebp - 0xc740], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x495ff3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x495ff3
mov dword [ebp - 0x27fc], 0
jmp 0x495ed2
cmp dword [ebp - 0x27fc], 0xf
jae 0x495fee
cvtsi2sd xmm0, dword [ebp - 0x27fc]
movsd xmm1, qword [ebp - 0xc740]
addsd xmm1, xmm0
movsd qword [ebp - 0xc748], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc748]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x495f41
mov ecx, dword [ebp - 0x27fc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc740]
addsd xmm1, xmm0
movsd qword [ebp - 0xc740], xmm1
jmp 0x495e3d
cvtsi2sd xmm0, dword [ebp - 0x27fc]
movsd xmm1, qword [ebp - 0xc740]
addsd xmm1, xmm0
movsd qword [ebp - 0xc750], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc750]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x495f9e
mov eax, dword [ebp - 0x27fc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc740]
addsd xmm1, xmm0
movsd qword [ebp - 0xc740], xmm1
jmp 0x495fb7
mov ecx, 1
test ecx, ecx
je 0x495fb3
jmp 0x496073
jmp 0x495fda
cvtsi2sd xmm0, dword [ebp - 0x27fc]
movsd xmm1, qword [ebp - 0xc740]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2800], edx
jmp 0x49607d
xor eax, eax
je 0x495fe4
jmp 0x495ff3
jmp 0x495e3d
jmp 0x495e3d
mov ecx, 2
test ecx, ecx
je 0x496073
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2804], eax
cvtsi2sd xmm0, dword [ebp - 0x2804]
mov eax, dword [ebp - 0x2804]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc740]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2800], ecx
jmp 0x49607d
mov dword [ebp - 0x2800], 8
mov edx, dword [ebp - 0x27f8]
shl edx, 2
add edx, dword [ebp - 0x27f4]
mov eax, dword [ebp - 0x2800]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x27f8]
shl ecx, 2
add ecx, dword [ebp - 0x27f4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x496bc3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4963b5
xor eax, eax
je 0x496127
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x496163
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da0]
movsd qword [ebp - 0xc758], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x496303
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x496303
mov dword [ebp - 0x2808], 0
jmp 0x4961e2
cmp dword [ebp - 0x2808], 0xf
jae 0x4962fe
cvtsi2sd xmm0, dword [ebp - 0x2808]
movsd xmm1, qword [ebp - 0xc758]
addsd xmm1, xmm0
movsd qword [ebp - 0xc760], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc760]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x496251
mov ecx, dword [ebp - 0x2808]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc758]
addsd xmm1, xmm0
movsd qword [ebp - 0xc758], xmm1
jmp 0x49614d
cvtsi2sd xmm0, dword [ebp - 0x2808]
movsd xmm1, qword [ebp - 0xc758]
addsd xmm1, xmm0
movsd qword [ebp - 0xc768], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc768]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4962ae
mov eax, dword [ebp - 0x2808]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc758]
addsd xmm1, xmm0
movsd qword [ebp - 0xc758], xmm1
jmp 0x4962c7
mov ecx, 1
test ecx, ecx
je 0x4962c3
jmp 0x496383
jmp 0x4962ea
cvtsi2sd xmm0, dword [ebp - 0x2808]
movsd xmm1, qword [ebp - 0xc758]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x280c], edx
jmp 0x49638d
xor eax, eax
je 0x4962f4
jmp 0x496303
jmp 0x49614d
jmp 0x49614d
mov ecx, 2
test ecx, ecx
je 0x496383
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2810], eax
cvtsi2sd xmm0, dword [ebp - 0x2810]
mov eax, dword [ebp - 0x2810]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc758]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x280c], ecx
jmp 0x49638d
mov dword [ebp - 0x280c], 8
mov edx, dword [ebp - 0x27f8]
shl edx, 2
add edx, dword [ebp - 0x27f4]
mov eax, dword [ebp - 0x280c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x27f8]
shl ecx, 2
add ecx, dword [ebp - 0x27f4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x496680
xor eax, eax
je 0x4963f2
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49642e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d98]
movsd qword [ebp - 0xc770], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4965ce
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4965ce
mov dword [ebp - 0x2814], 0
jmp 0x4964ad
cmp dword [ebp - 0x2814], 0xf
jae 0x4965c9
cvtsi2sd xmm0, dword [ebp - 0x2814]
movsd xmm1, qword [ebp - 0xc770]
addsd xmm1, xmm0
movsd qword [ebp - 0xc778], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc778]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49651c
mov ecx, dword [ebp - 0x2814]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc770]
addsd xmm1, xmm0
movsd qword [ebp - 0xc770], xmm1
jmp 0x496418
cvtsi2sd xmm0, dword [ebp - 0x2814]
movsd xmm1, qword [ebp - 0xc770]
addsd xmm1, xmm0
movsd qword [ebp - 0xc780], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc780]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x496579
mov eax, dword [ebp - 0x2814]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc770]
addsd xmm1, xmm0
movsd qword [ebp - 0xc770], xmm1
jmp 0x496592
mov ecx, 1
test ecx, ecx
je 0x49658e
jmp 0x49664e
jmp 0x4965b5
cvtsi2sd xmm0, dword [ebp - 0x2814]
movsd xmm1, qword [ebp - 0xc770]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2818], edx
jmp 0x496658
xor eax, eax
je 0x4965bf
jmp 0x4965ce
jmp 0x496418
jmp 0x496418
mov ecx, 2
test ecx, ecx
je 0x49664e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x281c], eax
cvtsi2sd xmm0, dword [ebp - 0x281c]
mov eax, dword [ebp - 0x281c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc770]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2818], ecx
jmp 0x496658
mov dword [ebp - 0x2818], 8
mov edx, dword [ebp - 0x27f8]
shl edx, 2
add edx, dword [ebp - 0x27f4]
mov eax, dword [ebp - 0x2818]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x27f8]
shl ecx, 2
add ecx, dword [ebp - 0x27f4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x27f8]
add edx, 0xffffffc9
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc788], xmm0
xor eax, eax
je 0x49669a
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4966d6
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc788]
movsd qword [ebp - 0xc790], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x496876
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x496876
mov dword [ebp - 0x2820], 0
jmp 0x496755
cmp dword [ebp - 0x2820], 0xf
jae 0x496871
cvtsi2sd xmm0, dword [ebp - 0x2820]
movsd xmm1, qword [ebp - 0xc790]
addsd xmm1, xmm0
movsd qword [ebp - 0xc798], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc798]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4967c4
mov ecx, dword [ebp - 0x2820]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc790]
addsd xmm1, xmm0
movsd qword [ebp - 0xc790], xmm1
jmp 0x4966c0
cvtsi2sd xmm0, dword [ebp - 0x2820]
movsd xmm1, qword [ebp - 0xc790]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc7a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x496821
mov eax, dword [ebp - 0x2820]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc790]
addsd xmm1, xmm0
movsd qword [ebp - 0xc790], xmm1
jmp 0x49683a
mov ecx, 1
test ecx, ecx
je 0x496836
jmp 0x4968f6
jmp 0x49685d
cvtsi2sd xmm0, dword [ebp - 0x2820]
movsd xmm1, qword [ebp - 0xc790]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2824], edx
jmp 0x496900
xor eax, eax
je 0x496867
jmp 0x496876
jmp 0x4966c0
jmp 0x4966c0
mov ecx, 2
test ecx, ecx
je 0x4968f6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2828], eax
cvtsi2sd xmm0, dword [ebp - 0x2828]
mov eax, dword [ebp - 0x2828]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc790]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2824], ecx
jmp 0x496900
mov dword [ebp - 0x2824], 8
mov edx, dword [ebp - 0x27f8]
add edx, 0xffffffc9
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc7a8], xmm0
xor eax, eax
je 0x49691a
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x496956
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc7a8]
movsd qword [ebp - 0xc7b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x496af6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x496af6
mov dword [ebp - 0x282c], 0
jmp 0x4969d5
cmp dword [ebp - 0x282c], 0xf
jae 0x496af1
cvtsi2sd xmm0, dword [ebp - 0x282c]
movsd xmm1, qword [ebp - 0xc7b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc7b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x496a44
mov ecx, dword [ebp - 0x282c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc7b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7b0], xmm1
jmp 0x496940
cvtsi2sd xmm0, dword [ebp - 0x282c]
movsd xmm1, qword [ebp - 0xc7b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc7c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x496aa1
mov eax, dword [ebp - 0x282c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc7b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7b0], xmm1
jmp 0x496aba
mov ecx, 1
test ecx, ecx
je 0x496ab6
jmp 0x496b76
jmp 0x496add
cvtsi2sd xmm0, dword [ebp - 0x282c]
movsd xmm1, qword [ebp - 0xc7b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2830], edx
jmp 0x496b80
xor eax, eax
je 0x496ae7
jmp 0x496af6
jmp 0x496940
jmp 0x496940
mov ecx, 2
test ecx, ecx
je 0x496b76
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2834], eax
cvtsi2sd xmm0, dword [ebp - 0x2834]
mov eax, dword [ebp - 0x2834]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc7b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2830], ecx
jmp 0x496b80
mov dword [ebp - 0x2830], 8
mov edx, dword [ebp - 0x27f8]
shl edx, 2
add edx, dword [ebp - 0x27f4]
mov eax, dword [ebp - 0x2824]
add eax, dword [edx]
mov ecx, dword [ebp - 0x27f8]
shl ecx, 2
add ecx, dword [ebp - 0x27f4]
mov edx, dword [ebp - 0x2830]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x27f8]
shl ecx, 2
add ecx, dword [ebp - 0x27f4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x496e8e
xor eax, eax
je 0x496c00
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x496c3c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d90]
movsd qword [ebp - 0xc7c8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x496ddc
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x496ddc
mov dword [ebp - 0x2838], 0
jmp 0x496cbb
cmp dword [ebp - 0x2838], 0xf
jae 0x496dd7
cvtsi2sd xmm0, dword [ebp - 0x2838]
movsd xmm1, qword [ebp - 0xc7c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7d0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc7d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x496d2a
mov ecx, dword [ebp - 0x2838]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc7c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7c8], xmm1
jmp 0x496c26
cvtsi2sd xmm0, dword [ebp - 0x2838]
movsd xmm1, qword [ebp - 0xc7c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7d8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc7d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x496d87
mov eax, dword [ebp - 0x2838]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc7c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7c8], xmm1
jmp 0x496da0
mov ecx, 1
test ecx, ecx
je 0x496d9c
jmp 0x496e5c
jmp 0x496dc3
cvtsi2sd xmm0, dword [ebp - 0x2838]
movsd xmm1, qword [ebp - 0xc7c8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x283c], edx
jmp 0x496e66
xor eax, eax
je 0x496dcd
jmp 0x496ddc
jmp 0x496c26
jmp 0x496c26
mov ecx, 2
test ecx, ecx
je 0x496e5c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2840], eax
cvtsi2sd xmm0, dword [ebp - 0x2840]
mov eax, dword [ebp - 0x2840]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc7c8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x283c], ecx
jmp 0x496e66
mov dword [ebp - 0x283c], 8
mov edx, dword [ebp - 0x27f8]
shl edx, 2
add edx, dword [ebp - 0x27f4]
mov eax, dword [ebp - 0x283c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x27f8]
shl ecx, 2
add ecx, dword [ebp - 0x27f4]
mov dword [ecx], eax
jmp 0x495dbe
mov edx, dword [ebp - 0x27f0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x27f0]
mov dword [ebp - 0x2844], eax
mov ecx, dword [ebp - 0x2844]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2848], ecx
mov edx, dword [ebp - 0x2848]
mov dword [ebp - 0x284c], edx
xor eax, eax
mov byte [ebp - 0x70], al
lea ecx, [ebp - 0x70]
call fcn.00424de0
mov dword [ebp - 0x2850], eax
mov ecx, dword [ebp - 0x2850]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x497fde
mov eax, dword [ebp - 0x2850]
mov dword [ebp - 0x2854], eax
mov dword [ebp - 0x2858], 0
jmp 0x496f18
mov ecx, dword [ebp - 0x2858]
add ecx, 1
mov dword [ebp - 0x2858], ecx
cmp dword [ebp - 0x2858], 1
jae 0x497fde
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4971f0
xor eax, eax
je 0x496f62
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x496f9e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da8]
movsd qword [ebp - 0xc7e0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49713e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49713e
mov dword [ebp - 0x285c], 0
jmp 0x49701d
cmp dword [ebp - 0x285c], 0xf
jae 0x497139
cvtsi2sd xmm0, dword [ebp - 0x285c]
movsd xmm1, qword [ebp - 0xc7e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7e8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc7e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49708c
mov ecx, dword [ebp - 0x285c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc7e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7e0], xmm1
jmp 0x496f88
cvtsi2sd xmm0, dword [ebp - 0x285c]
movsd xmm1, qword [ebp - 0xc7e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7f0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc7f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4970e9
mov eax, dword [ebp - 0x285c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc7e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7e0], xmm1
jmp 0x497102
mov ecx, 1
test ecx, ecx
je 0x4970fe
jmp 0x4971be
jmp 0x497125
cvtsi2sd xmm0, dword [ebp - 0x285c]
movsd xmm1, qword [ebp - 0xc7e0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2860], edx
jmp 0x4971c8
xor eax, eax
je 0x49712f
jmp 0x49713e
jmp 0x496f88
jmp 0x496f88
mov ecx, 2
test ecx, ecx
je 0x4971be
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2864], eax
cvtsi2sd xmm0, dword [ebp - 0x2864]
mov eax, dword [ebp - 0x2864]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc7e0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2860], ecx
jmp 0x4971c8
mov dword [ebp - 0x2860], 8
mov edx, dword [ebp - 0x2858]
shl edx, 2
add edx, dword [ebp - 0x2854]
mov eax, dword [ebp - 0x2860]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2858]
shl ecx, 2
add ecx, dword [ebp - 0x2854]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x497d0e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x497500
xor eax, eax
je 0x497272
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4972ae
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da0]
movsd qword [ebp - 0xc7f8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49744e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49744e
mov dword [ebp - 0x2868], 0
jmp 0x49732d
cmp dword [ebp - 0x2868], 0xf
jae 0x497449
cvtsi2sd xmm0, dword [ebp - 0x2868]
movsd xmm1, qword [ebp - 0xc7f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc800], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc800]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49739c
mov ecx, dword [ebp - 0x2868]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc7f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7f8], xmm1
jmp 0x497298
cvtsi2sd xmm0, dword [ebp - 0x2868]
movsd xmm1, qword [ebp - 0xc7f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc808], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc808]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4973f9
mov eax, dword [ebp - 0x2868]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc7f8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc7f8], xmm1
jmp 0x497412
mov ecx, 1
test ecx, ecx
je 0x49740e
jmp 0x4974ce
jmp 0x497435
cvtsi2sd xmm0, dword [ebp - 0x2868]
movsd xmm1, qword [ebp - 0xc7f8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x286c], edx
jmp 0x4974d8
xor eax, eax
je 0x49743f
jmp 0x49744e
jmp 0x497298
jmp 0x497298
mov ecx, 2
test ecx, ecx
je 0x4974ce
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2870], eax
cvtsi2sd xmm0, dword [ebp - 0x2870]
mov eax, dword [ebp - 0x2870]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc7f8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x286c], ecx
jmp 0x4974d8
mov dword [ebp - 0x286c], 8
mov edx, dword [ebp - 0x2858]
shl edx, 2
add edx, dword [ebp - 0x2854]
mov eax, dword [ebp - 0x286c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2858]
shl ecx, 2
add ecx, dword [ebp - 0x2854]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4977cb
xor eax, eax
je 0x49753d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x497579
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d98]
movsd qword [ebp - 0xc810], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x497719
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x497719
mov dword [ebp - 0x2874], 0
jmp 0x4975f8
cmp dword [ebp - 0x2874], 0xf
jae 0x497714
cvtsi2sd xmm0, dword [ebp - 0x2874]
movsd xmm1, qword [ebp - 0xc810]
addsd xmm1, xmm0
movsd qword [ebp - 0xc818], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc818]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x497667
mov ecx, dword [ebp - 0x2874]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc810]
addsd xmm1, xmm0
movsd qword [ebp - 0xc810], xmm1
jmp 0x497563
cvtsi2sd xmm0, dword [ebp - 0x2874]
movsd xmm1, qword [ebp - 0xc810]
addsd xmm1, xmm0
movsd qword [ebp - 0xc820], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc820]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4976c4
mov eax, dword [ebp - 0x2874]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc810]
addsd xmm1, xmm0
movsd qword [ebp - 0xc810], xmm1
jmp 0x4976dd
mov ecx, 1
test ecx, ecx
je 0x4976d9
jmp 0x497799
jmp 0x497700
cvtsi2sd xmm0, dword [ebp - 0x2874]
movsd xmm1, qword [ebp - 0xc810]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2878], edx
jmp 0x4977a3
xor eax, eax
je 0x49770a
jmp 0x497719
jmp 0x497563
jmp 0x497563
mov ecx, 2
test ecx, ecx
je 0x497799
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x287c], eax
cvtsi2sd xmm0, dword [ebp - 0x287c]
mov eax, dword [ebp - 0x287c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc810]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2878], ecx
jmp 0x4977a3
mov dword [ebp - 0x2878], 8
mov edx, dword [ebp - 0x2858]
shl edx, 2
add edx, dword [ebp - 0x2854]
mov eax, dword [ebp - 0x2878]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2858]
shl ecx, 2
add ecx, dword [ebp - 0x2854]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2858]
add edx, 0xffffffc9
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc828], xmm0
xor eax, eax
je 0x4977e5
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x497821
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc828]
movsd qword [ebp - 0xc830], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4979c1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4979c1
mov dword [ebp - 0x2880], 0
jmp 0x4978a0
cmp dword [ebp - 0x2880], 0xf
jae 0x4979bc
cvtsi2sd xmm0, dword [ebp - 0x2880]
movsd xmm1, qword [ebp - 0xc830]
addsd xmm1, xmm0
movsd qword [ebp - 0xc838], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc838]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49790f
mov ecx, dword [ebp - 0x2880]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc830]
addsd xmm1, xmm0
movsd qword [ebp - 0xc830], xmm1
jmp 0x49780b
cvtsi2sd xmm0, dword [ebp - 0x2880]
movsd xmm1, qword [ebp - 0xc830]
addsd xmm1, xmm0
movsd qword [ebp - 0xc840], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc840]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49796c
mov eax, dword [ebp - 0x2880]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc830]
addsd xmm1, xmm0
movsd qword [ebp - 0xc830], xmm1
jmp 0x497985
mov ecx, 1
test ecx, ecx
je 0x497981
jmp 0x497a41
jmp 0x4979a8
cvtsi2sd xmm0, dword [ebp - 0x2880]
movsd xmm1, qword [ebp - 0xc830]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2884], edx
jmp 0x497a4b
xor eax, eax
je 0x4979b2
jmp 0x4979c1
jmp 0x49780b
jmp 0x49780b
mov ecx, 2
test ecx, ecx
je 0x497a41
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2888], eax
cvtsi2sd xmm0, dword [ebp - 0x2888]
mov eax, dword [ebp - 0x2888]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc830]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2884], ecx
jmp 0x497a4b
mov dword [ebp - 0x2884], 8
mov edx, dword [ebp - 0x2858]
add edx, 0xffffffc9
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc848], xmm0
xor eax, eax
je 0x497a65
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x497aa1
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc848]
movsd qword [ebp - 0xc850], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x497c41
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x497c41
mov dword [ebp - 0x288c], 0
jmp 0x497b20
cmp dword [ebp - 0x288c], 0xf
jae 0x497c3c
cvtsi2sd xmm0, dword [ebp - 0x288c]
movsd xmm1, qword [ebp - 0xc850]
addsd xmm1, xmm0
movsd qword [ebp - 0xc858], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc858]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x497b8f
mov ecx, dword [ebp - 0x288c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc850]
addsd xmm1, xmm0
movsd qword [ebp - 0xc850], xmm1
jmp 0x497a8b
cvtsi2sd xmm0, dword [ebp - 0x288c]
movsd xmm1, qword [ebp - 0xc850]
addsd xmm1, xmm0
movsd qword [ebp - 0xc860], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc860]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x497bec
mov eax, dword [ebp - 0x288c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc850]
addsd xmm1, xmm0
movsd qword [ebp - 0xc850], xmm1
jmp 0x497c05
mov ecx, 1
test ecx, ecx
je 0x497c01
jmp 0x497cc1
jmp 0x497c28
cvtsi2sd xmm0, dword [ebp - 0x288c]
movsd xmm1, qword [ebp - 0xc850]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2890], edx
jmp 0x497ccb
xor eax, eax
je 0x497c32
jmp 0x497c41
jmp 0x497a8b
jmp 0x497a8b
mov ecx, 2
test ecx, ecx
je 0x497cc1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2894], eax
cvtsi2sd xmm0, dword [ebp - 0x2894]
mov eax, dword [ebp - 0x2894]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc850]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2890], ecx
jmp 0x497ccb
mov dword [ebp - 0x2890], 8
mov edx, dword [ebp - 0x2858]
shl edx, 2
add edx, dword [ebp - 0x2854]
mov eax, dword [ebp - 0x2884]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2858]
shl ecx, 2
add ecx, dword [ebp - 0x2854]
mov edx, dword [ebp - 0x2890]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2858]
shl ecx, 2
add ecx, dword [ebp - 0x2854]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x497fd9
xor eax, eax
je 0x497d4b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x497d87
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d90]
movsd qword [ebp - 0xc868], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x497f27
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x497f27
mov dword [ebp - 0x2898], 0
jmp 0x497e06
cmp dword [ebp - 0x2898], 0xf
jae 0x497f22
cvtsi2sd xmm0, dword [ebp - 0x2898]
movsd xmm1, qword [ebp - 0xc868]
addsd xmm1, xmm0
movsd qword [ebp - 0xc870], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc870]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x497e75
mov ecx, dword [ebp - 0x2898]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc868]
addsd xmm1, xmm0
movsd qword [ebp - 0xc868], xmm1
jmp 0x497d71
cvtsi2sd xmm0, dword [ebp - 0x2898]
movsd xmm1, qword [ebp - 0xc868]
addsd xmm1, xmm0
movsd qword [ebp - 0xc878], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc878]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x497ed2
mov eax, dword [ebp - 0x2898]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc868]
addsd xmm1, xmm0
movsd qword [ebp - 0xc868], xmm1
jmp 0x497eeb
mov ecx, 1
test ecx, ecx
je 0x497ee7
jmp 0x497fa7
jmp 0x497f0e
cvtsi2sd xmm0, dword [ebp - 0x2898]
movsd xmm1, qword [ebp - 0xc868]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x289c], edx
jmp 0x497fb1
xor eax, eax
je 0x497f18
jmp 0x497f27
jmp 0x497d71
jmp 0x497d71
mov ecx, 2
test ecx, ecx
je 0x497fa7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x28a0], eax
cvtsi2sd xmm0, dword [ebp - 0x28a0]
mov eax, dword [ebp - 0x28a0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc868]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x289c], ecx
jmp 0x497fb1
mov dword [ebp - 0x289c], 8
mov edx, dword [ebp - 0x2858]
shl edx, 2
add edx, dword [ebp - 0x2854]
mov eax, dword [ebp - 0x289c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2858]
shl ecx, 2
add ecx, dword [ebp - 0x2854]
mov dword [ecx], eax
jmp 0x496f09
mov edx, dword [ebp - 0x2850]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2850]
mov dword [ebp - 0x28a4], eax
mov ecx, dword [ebp - 0x28a4]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x28a8], ecx
mov edx, dword [ebp - 0x28a8]
mov dword [ebp - 0x28ac], edx
mov eax, dword [ebp - 0x284c]
mov dword [ebp - 0x27ec], eax
cmp dword [ebp - 0x27ec], 0
je 0x49917b
xor ecx, ecx
mov byte [ebp - 0x71], cl
lea ecx, [ebp - 0x71]
call fcn.00424db0
mov dword [ebp - 0x28b0], eax
mov edx, dword [ebp - 0x28b0]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x499142
mov ecx, dword [ebp - 0x28b0]
mov dword [ebp - 0x28b4], ecx
mov dword [ebp - 0x28b8], 0
jmp 0x49807c
mov edx, dword [ebp - 0x28b8]
add edx, 1
mov dword [ebp - 0x28b8], edx
cmp dword [ebp - 0x28b8], 1
jae 0x499142
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x498354
xor eax, eax
je 0x4980c6
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x498102
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736da8]
movsd qword [ebp - 0xc880], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4982a2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4982a2
mov dword [ebp - 0x28bc], 0
jmp 0x498181
cmp dword [ebp - 0x28bc], 0xf
jae 0x49829d
cvtsi2sd xmm0, dword [ebp - 0x28bc]
movsd xmm1, qword [ebp - 0xc880]
addsd xmm1, xmm0
movsd qword [ebp - 0xc888], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc888]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4981f0
mov ecx, dword [ebp - 0x28bc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc880]
addsd xmm1, xmm0
movsd qword [ebp - 0xc880], xmm1
jmp 0x4980ec
cvtsi2sd xmm0, dword [ebp - 0x28bc]
movsd xmm1, qword [ebp - 0xc880]
addsd xmm1, xmm0
movsd qword [ebp - 0xc890], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc890]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49824d
mov eax, dword [ebp - 0x28bc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc880]
addsd xmm1, xmm0
movsd qword [ebp - 0xc880], xmm1
jmp 0x498266
mov ecx, 1
test ecx, ecx
je 0x498262
jmp 0x498322
jmp 0x498289
cvtsi2sd xmm0, dword [ebp - 0x28bc]
movsd xmm1, qword [ebp - 0xc880]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x28c0], edx
jmp 0x49832c
xor eax, eax
je 0x498293
jmp 0x4982a2
jmp 0x4980ec
jmp 0x4980ec
mov ecx, 2
test ecx, ecx
je 0x498322
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x28c4], eax
cvtsi2sd xmm0, dword [ebp - 0x28c4]
mov eax, dword [ebp - 0x28c4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc880]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x28c0], ecx
jmp 0x49832c
mov dword [ebp - 0x28c0], 8
mov edx, dword [ebp - 0x28b8]
shl edx, 2
add edx, dword [ebp - 0x28b4]
mov eax, dword [ebp - 0x28c0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x28b8]
shl ecx, 2
add ecx, dword [ebp - 0x28b4]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x498e72
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x498664
xor eax, eax
je 0x4983d6
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x498412
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da0]
movsd qword [ebp - 0xc898], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4985b2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4985b2
mov dword [ebp - 0x28c8], 0
jmp 0x498491
cmp dword [ebp - 0x28c8], 0xf
jae 0x4985ad
cvtsi2sd xmm0, dword [ebp - 0x28c8]
movsd xmm1, qword [ebp - 0xc898]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8a0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc8a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x498500
mov ecx, dword [ebp - 0x28c8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc898]
addsd xmm1, xmm0
movsd qword [ebp - 0xc898], xmm1
jmp 0x4983fc
cvtsi2sd xmm0, dword [ebp - 0x28c8]
movsd xmm1, qword [ebp - 0xc898]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8a8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc8a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49855d
mov eax, dword [ebp - 0x28c8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc898]
addsd xmm1, xmm0
movsd qword [ebp - 0xc898], xmm1
jmp 0x498576
mov ecx, 1
test ecx, ecx
je 0x498572
jmp 0x498632
jmp 0x498599
cvtsi2sd xmm0, dword [ebp - 0x28c8]
movsd xmm1, qword [ebp - 0xc898]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x28cc], edx
jmp 0x49863c
xor eax, eax
je 0x4985a3
jmp 0x4985b2
jmp 0x4983fc
jmp 0x4983fc
mov ecx, 2
test ecx, ecx
je 0x498632
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x28d0], eax
cvtsi2sd xmm0, dword [ebp - 0x28d0]
mov eax, dword [ebp - 0x28d0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc898]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x28cc], ecx
jmp 0x49863c
mov dword [ebp - 0x28cc], 8
mov edx, dword [ebp - 0x28b8]
shl edx, 2
add edx, dword [ebp - 0x28b4]
mov eax, dword [ebp - 0x28cc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x28b8]
shl ecx, 2
add ecx, dword [ebp - 0x28b4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49892f
xor eax, eax
je 0x4986a1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4986dd
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d98]
movsd qword [ebp - 0xc8b0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49887d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49887d
mov dword [ebp - 0x28d4], 0
jmp 0x49875c
cmp dword [ebp - 0x28d4], 0xf
jae 0x498878
cvtsi2sd xmm0, dword [ebp - 0x28d4]
movsd xmm1, qword [ebp - 0xc8b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8b8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc8b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4987cb
mov ecx, dword [ebp - 0x28d4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc8b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8b0], xmm1
jmp 0x4986c7
cvtsi2sd xmm0, dword [ebp - 0x28d4]
movsd xmm1, qword [ebp - 0xc8b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8c0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc8c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x498828
mov eax, dword [ebp - 0x28d4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc8b0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8b0], xmm1
jmp 0x498841
mov ecx, 1
test ecx, ecx
je 0x49883d
jmp 0x4988fd
jmp 0x498864
cvtsi2sd xmm0, dword [ebp - 0x28d4]
movsd xmm1, qword [ebp - 0xc8b0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x28d8], edx
jmp 0x498907
xor eax, eax
je 0x49886e
jmp 0x49887d
jmp 0x4986c7
jmp 0x4986c7
mov ecx, 2
test ecx, ecx
je 0x4988fd
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x28dc], eax
cvtsi2sd xmm0, dword [ebp - 0x28dc]
mov eax, dword [ebp - 0x28dc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc8b0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x28d8], ecx
jmp 0x498907
mov dword [ebp - 0x28d8], 8
mov edx, dword [ebp - 0x28b8]
shl edx, 2
add edx, dword [ebp - 0x28b4]
mov eax, dword [ebp - 0x28d8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x28b8]
shl ecx, 2
add ecx, dword [ebp - 0x28b4]
mov dword [ecx], eax
mov edx, dword [ebp - 0x28b8]
add edx, 0xffffffc9
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc8c8], xmm0
xor eax, eax
je 0x498949
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x498985
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc8c8]
movsd qword [ebp - 0xc8d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x498b25
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x498b25
mov dword [ebp - 0x28e0], 0
jmp 0x498a04
cmp dword [ebp - 0x28e0], 0xf
jae 0x498b20
cvtsi2sd xmm0, dword [ebp - 0x28e0]
movsd xmm1, qword [ebp - 0xc8d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8d8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc8d8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x498a73
mov ecx, dword [ebp - 0x28e0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc8d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8d0], xmm1
jmp 0x49896f
cvtsi2sd xmm0, dword [ebp - 0x28e0]
movsd xmm1, qword [ebp - 0xc8d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8e0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc8e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x498ad0
mov eax, dword [ebp - 0x28e0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc8d0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8d0], xmm1
jmp 0x498ae9
mov ecx, 1
test ecx, ecx
je 0x498ae5
jmp 0x498ba5
jmp 0x498b0c
cvtsi2sd xmm0, dword [ebp - 0x28e0]
movsd xmm1, qword [ebp - 0xc8d0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x28e4], edx
jmp 0x498baf
xor eax, eax
je 0x498b16
jmp 0x498b25
jmp 0x49896f
jmp 0x49896f
mov ecx, 2
test ecx, ecx
je 0x498ba5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x28e8], eax
cvtsi2sd xmm0, dword [ebp - 0x28e8]
mov eax, dword [ebp - 0x28e8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc8d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x28e4], ecx
jmp 0x498baf
mov dword [ebp - 0x28e4], 8
mov edx, dword [ebp - 0x28b8]
add edx, 0xffffffc9
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc8e8], xmm0
xor eax, eax
je 0x498bc9
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x498c05
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc8e8]
movsd qword [ebp - 0xc8f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x498da5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x498da5
mov dword [ebp - 0x28ec], 0
jmp 0x498c84
cmp dword [ebp - 0x28ec], 0xf
jae 0x498da0
cvtsi2sd xmm0, dword [ebp - 0x28ec]
movsd xmm1, qword [ebp - 0xc8f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc8f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x498cf3
mov ecx, dword [ebp - 0x28ec]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc8f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8f0], xmm1
jmp 0x498bef
cvtsi2sd xmm0, dword [ebp - 0x28ec]
movsd xmm1, qword [ebp - 0xc8f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc900], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc900]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x498d50
mov eax, dword [ebp - 0x28ec]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc8f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc8f0], xmm1
jmp 0x498d69
mov ecx, 1
test ecx, ecx
je 0x498d65
jmp 0x498e25
jmp 0x498d8c
cvtsi2sd xmm0, dword [ebp - 0x28ec]
movsd xmm1, qword [ebp - 0xc8f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x28f0], edx
jmp 0x498e2f
xor eax, eax
je 0x498d96
jmp 0x498da5
jmp 0x498bef
jmp 0x498bef
mov ecx, 2
test ecx, ecx
je 0x498e25
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x28f4], eax
cvtsi2sd xmm0, dword [ebp - 0x28f4]
mov eax, dword [ebp - 0x28f4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc8f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x28f0], ecx
jmp 0x498e2f
mov dword [ebp - 0x28f0], 8
mov edx, dword [ebp - 0x28b8]
shl edx, 2
add edx, dword [ebp - 0x28b4]
mov eax, dword [ebp - 0x28e4]
add eax, dword [edx]
mov ecx, dword [ebp - 0x28b8]
shl ecx, 2
add ecx, dword [ebp - 0x28b4]
mov edx, dword [ebp - 0x28f0]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x28b8]
shl ecx, 2
add ecx, dword [ebp - 0x28b4]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49913d
xor eax, eax
je 0x498eaf
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x498eeb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d90]
movsd qword [ebp - 0xc908], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49908b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49908b
mov dword [ebp - 0x28f8], 0
jmp 0x498f6a
cmp dword [ebp - 0x28f8], 0xf
jae 0x499086
cvtsi2sd xmm0, dword [ebp - 0x28f8]
movsd xmm1, qword [ebp - 0xc908]
addsd xmm1, xmm0
movsd qword [ebp - 0xc910], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc910]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x498fd9
mov ecx, dword [ebp - 0x28f8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc908]
addsd xmm1, xmm0
movsd qword [ebp - 0xc908], xmm1
jmp 0x498ed5
cvtsi2sd xmm0, dword [ebp - 0x28f8]
movsd xmm1, qword [ebp - 0xc908]
addsd xmm1, xmm0
movsd qword [ebp - 0xc918], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc918]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x499036
mov eax, dword [ebp - 0x28f8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc908]
addsd xmm1, xmm0
movsd qword [ebp - 0xc908], xmm1
jmp 0x49904f
mov ecx, 1
test ecx, ecx
je 0x49904b
jmp 0x49910b
jmp 0x499072
cvtsi2sd xmm0, dword [ebp - 0x28f8]
movsd xmm1, qword [ebp - 0xc908]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x28fc], edx
jmp 0x499115
xor eax, eax
je 0x49907c
jmp 0x49908b
jmp 0x498ed5
jmp 0x498ed5
mov ecx, 2
test ecx, ecx
je 0x49910b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2900], eax
cvtsi2sd xmm0, dword [ebp - 0x2900]
mov eax, dword [ebp - 0x2900]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc908]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x28fc], ecx
jmp 0x499115
mov dword [ebp - 0x28fc], 8
mov edx, dword [ebp - 0x28b8]
shl edx, 2
add edx, dword [ebp - 0x28b4]
mov eax, dword [ebp - 0x28fc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x28b8]
shl ecx, 2
add ecx, dword [ebp - 0x28b4]
mov dword [ecx], eax
jmp 0x49806d
mov edx, dword [ebp - 0x28b0]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x28b0]
mov dword [ebp - 0x2904], eax
mov ecx, dword [ebp - 0x2904]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2908], ecx
mov edx, dword [ebp - 0x2908]
mov dword [ebp - 0x28ac], edx
mov dword [ebp - 0x290c], 0
jmp 0x499196
mov eax, dword [ebp - 0x290c]
add eax, 1
mov dword [ebp - 0x290c], eax
cmp dword [ebp - 0x290c], 0xd
jge 0x4991b5
lea ecx, [ebp - 0x16664]
mov edx, dword [ebp - 0x290c]
shl edx, 1
xor eax, eax
mov word [ecx + edx], ax
jmp 0x499187
xor ecx, ecx
mov byte [ebp - 0x72], cl
mov edx, dword [str.oKSOYmLP_10_t__:0J]
mov dword [ebp - 0x16648], edx
mov eax, dword [0x698208]
mov dword [ebp - 0x16644], eax
mov ecx, dword [0x69820c]
mov dword [ebp - 0x16640], ecx
mov edx, dword [0x698210]
mov dword [ebp - 0x1663c], edx
mov ax, word [0x698214]
mov word [ebp - 0x16638], ax
mov cl, byte [0x698216]
mov byte [ebp - 0x16636], cl
xor edx, edx
mov byte [ebp - 0x73], dl
lea ecx, [ebp - 0x73]
call fcn.00424d50
mov dword [ebp - 0x2910], eax
mov eax, dword [ebp - 0x2910]
movzx ecx, byte [eax + 4]
test ecx, ecx
jne 0x49a314
mov edx, dword [ebp - 0x2910]
mov dword [ebp - 0x2914], edx
mov dword [ebp - 0x2918], 0
jmp 0x49924e
mov eax, dword [ebp - 0x2918]
add eax, 1
mov dword [ebp - 0x2918], eax
cmp dword [ebp - 0x2918], 1
jae 0x49a314
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx ecx, al
add esi, ecx
call fcn.005e7fe0
movsx edx, al
imul eax, edx, 3
movsx ecx, byte [0x7862ac]
imul eax, ecx
add esi, eax
call fcn.005e7fb0
movsx edx, al
sub esi, edx
je 0x499526
xor eax, eax
je 0x499298
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4992d4
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [0x736da0]
movsd qword [ebp - 0xc920], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x499474
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x499474
mov dword [ebp - 0x291c], 0
jmp 0x499353
cmp dword [ebp - 0x291c], 0xf
jae 0x49946f
cvtsi2sd xmm0, dword [ebp - 0x291c]
movsd xmm1, qword [ebp - 0xc920]
addsd xmm1, xmm0
movsd qword [ebp - 0xc928], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc928]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4993c2
mov ecx, dword [ebp - 0x291c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc920]
addsd xmm1, xmm0
movsd qword [ebp - 0xc920], xmm1
jmp 0x4992be
cvtsi2sd xmm0, dword [ebp - 0x291c]
movsd xmm1, qword [ebp - 0xc920]
addsd xmm1, xmm0
movsd qword [ebp - 0xc930], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc930]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49941f
mov eax, dword [ebp - 0x291c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc920]
addsd xmm1, xmm0
movsd qword [ebp - 0xc920], xmm1
jmp 0x499438
mov ecx, 1
test ecx, ecx
je 0x499434
jmp 0x4994f4
jmp 0x49945b
cvtsi2sd xmm0, dword [ebp - 0x291c]
movsd xmm1, qword [ebp - 0xc920]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2920], edx
jmp 0x4994fe
xor eax, eax
je 0x499465
jmp 0x499474
jmp 0x4992be
jmp 0x4992be
mov ecx, 2
test ecx, ecx
je 0x4994f4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2924], eax
cvtsi2sd xmm0, dword [ebp - 0x2924]
mov eax, dword [ebp - 0x2924]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc920]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2920], ecx
jmp 0x4994fe
mov dword [ebp - 0x2920], 8
mov edx, dword [ebp - 0x2918]
shl edx, 2
add edx, dword [ebp - 0x2914]
mov eax, dword [ebp - 0x2920]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2918]
shl ecx, 2
add ecx, dword [ebp - 0x2914]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49a044
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x499836
xor eax, eax
je 0x4995a8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4995e4
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d98]
movsd qword [ebp - 0xc938], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x499784
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x499784
mov dword [ebp - 0x2928], 0
jmp 0x499663
cmp dword [ebp - 0x2928], 0xf
jae 0x49977f
cvtsi2sd xmm0, dword [ebp - 0x2928]
movsd xmm1, qword [ebp - 0xc938]
addsd xmm1, xmm0
movsd qword [ebp - 0xc940], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc940]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4996d2
mov ecx, dword [ebp - 0x2928]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc938]
addsd xmm1, xmm0
movsd qword [ebp - 0xc938], xmm1
jmp 0x4995ce
cvtsi2sd xmm0, dword [ebp - 0x2928]
movsd xmm1, qword [ebp - 0xc938]
addsd xmm1, xmm0
movsd qword [ebp - 0xc948], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc948]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49972f
mov eax, dword [ebp - 0x2928]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc938]
addsd xmm1, xmm0
movsd qword [ebp - 0xc938], xmm1
jmp 0x499748
mov ecx, 1
test ecx, ecx
je 0x499744
jmp 0x499804
jmp 0x49976b
cvtsi2sd xmm0, dword [ebp - 0x2928]
movsd xmm1, qword [ebp - 0xc938]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x292c], edx
jmp 0x49980e
xor eax, eax
je 0x499775
jmp 0x499784
jmp 0x4995ce
jmp 0x4995ce
mov ecx, 2
test ecx, ecx
je 0x499804
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2930], eax
cvtsi2sd xmm0, dword [ebp - 0x2930]
mov eax, dword [ebp - 0x2930]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc938]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x292c], ecx
jmp 0x49980e
mov dword [ebp - 0x292c], 8
mov edx, dword [ebp - 0x2918]
shl edx, 2
add edx, dword [ebp - 0x2914]
mov eax, dword [ebp - 0x292c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2918]
shl ecx, 2
add ecx, dword [ebp - 0x2914]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x499b01
xor eax, eax
je 0x499873
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4998af
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d90]
movsd qword [ebp - 0xc950], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x499a4f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x499a4f
mov dword [ebp - 0x2934], 0
jmp 0x49992e
cmp dword [ebp - 0x2934], 0xf
jae 0x499a4a
cvtsi2sd xmm0, dword [ebp - 0x2934]
movsd xmm1, qword [ebp - 0xc950]
addsd xmm1, xmm0
movsd qword [ebp - 0xc958], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc958]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49999d
mov ecx, dword [ebp - 0x2934]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc950]
addsd xmm1, xmm0
movsd qword [ebp - 0xc950], xmm1
jmp 0x499899
cvtsi2sd xmm0, dword [ebp - 0x2934]
movsd xmm1, qword [ebp - 0xc950]
addsd xmm1, xmm0
movsd qword [ebp - 0xc960], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc960]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4999fa
mov eax, dword [ebp - 0x2934]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc950]
addsd xmm1, xmm0
movsd qword [ebp - 0xc950], xmm1
jmp 0x499a13
mov ecx, 1
test ecx, ecx
je 0x499a0f
jmp 0x499acf
jmp 0x499a36
cvtsi2sd xmm0, dword [ebp - 0x2934]
movsd xmm1, qword [ebp - 0xc950]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2938], edx
jmp 0x499ad9
xor eax, eax
je 0x499a40
jmp 0x499a4f
jmp 0x499899
jmp 0x499899
mov ecx, 2
test ecx, ecx
je 0x499acf
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x293c], eax
cvtsi2sd xmm0, dword [ebp - 0x293c]
mov eax, dword [ebp - 0x293c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc950]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2938], ecx
jmp 0x499ad9
mov dword [ebp - 0x2938], 8
mov edx, dword [ebp - 0x2918]
shl edx, 2
add edx, dword [ebp - 0x2914]
mov eax, dword [ebp - 0x2938]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2918]
shl ecx, 2
add ecx, dword [ebp - 0x2914]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2918]
add edx, 0xffffffca
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc968], xmm0
xor eax, eax
je 0x499b1b
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x499b57
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc968]
movsd qword [ebp - 0xc970], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x499cf7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x499cf7
mov dword [ebp - 0x2940], 0
jmp 0x499bd6
cmp dword [ebp - 0x2940], 0xf
jae 0x499cf2
cvtsi2sd xmm0, dword [ebp - 0x2940]
movsd xmm1, qword [ebp - 0xc970]
addsd xmm1, xmm0
movsd qword [ebp - 0xc978], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc978]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x499c45
mov ecx, dword [ebp - 0x2940]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc970]
addsd xmm1, xmm0
movsd qword [ebp - 0xc970], xmm1
jmp 0x499b41
cvtsi2sd xmm0, dword [ebp - 0x2940]
movsd xmm1, qword [ebp - 0xc970]
addsd xmm1, xmm0
movsd qword [ebp - 0xc980], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc980]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x499ca2
mov eax, dword [ebp - 0x2940]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc970]
addsd xmm1, xmm0
movsd qword [ebp - 0xc970], xmm1
jmp 0x499cbb
mov ecx, 1
test ecx, ecx
je 0x499cb7
jmp 0x499d77
jmp 0x499cde
cvtsi2sd xmm0, dword [ebp - 0x2940]
movsd xmm1, qword [ebp - 0xc970]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2944], edx
jmp 0x499d81
xor eax, eax
je 0x499ce8
jmp 0x499cf7
jmp 0x499b41
jmp 0x499b41
mov ecx, 2
test ecx, ecx
je 0x499d77
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2948], eax
cvtsi2sd xmm0, dword [ebp - 0x2948]
mov eax, dword [ebp - 0x2948]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc970]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2944], ecx
jmp 0x499d81
mov dword [ebp - 0x2944], 8
mov edx, dword [ebp - 0x2918]
add edx, 0xffffffca
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xc988], xmm0
xor eax, eax
je 0x499d9b
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x499dd7
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xc988]
movsd qword [ebp - 0xc990], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x499f77
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x499f77
mov dword [ebp - 0x294c], 0
jmp 0x499e56
cmp dword [ebp - 0x294c], 0xf
jae 0x499f72
cvtsi2sd xmm0, dword [ebp - 0x294c]
movsd xmm1, qword [ebp - 0xc990]
addsd xmm1, xmm0
movsd qword [ebp - 0xc998], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc998]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x499ec5
mov ecx, dword [ebp - 0x294c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc990]
addsd xmm1, xmm0
movsd qword [ebp - 0xc990], xmm1
jmp 0x499dc1
cvtsi2sd xmm0, dword [ebp - 0x294c]
movsd xmm1, qword [ebp - 0xc990]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9a0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc9a0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x499f22
mov eax, dword [ebp - 0x294c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc990]
addsd xmm1, xmm0
movsd qword [ebp - 0xc990], xmm1
jmp 0x499f3b
mov ecx, 1
test ecx, ecx
je 0x499f37
jmp 0x499ff7
jmp 0x499f5e
cvtsi2sd xmm0, dword [ebp - 0x294c]
movsd xmm1, qword [ebp - 0xc990]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2950], edx
jmp 0x49a001
xor eax, eax
je 0x499f68
jmp 0x499f77
jmp 0x499dc1
jmp 0x499dc1
mov ecx, 2
test ecx, ecx
je 0x499ff7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2954], eax
cvtsi2sd xmm0, dword [ebp - 0x2954]
mov eax, dword [ebp - 0x2954]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc990]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2950], ecx
jmp 0x49a001
mov dword [ebp - 0x2950], 8
mov edx, dword [ebp - 0x2918]
shl edx, 2
add edx, dword [ebp - 0x2914]
mov eax, dword [ebp - 0x2944]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2918]
shl ecx, 2
add ecx, dword [ebp - 0x2914]
mov edx, dword [ebp - 0x2950]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2918]
shl ecx, 2
add ecx, dword [ebp - 0x2914]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49a30f
xor eax, eax
je 0x49a081
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49a0bd
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d88]
movsd qword [ebp - 0xc9a8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49a25d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49a25d
mov dword [ebp - 0x2958], 0
jmp 0x49a13c
cmp dword [ebp - 0x2958], 0xf
jae 0x49a258
cvtsi2sd xmm0, dword [ebp - 0x2958]
movsd xmm1, qword [ebp - 0xc9a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9b0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc9b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49a1ab
mov ecx, dword [ebp - 0x2958]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc9a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9a8], xmm1
jmp 0x49a0a7
cvtsi2sd xmm0, dword [ebp - 0x2958]
movsd xmm1, qword [ebp - 0xc9a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9b8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc9b8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49a208
mov eax, dword [ebp - 0x2958]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc9a8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9a8], xmm1
jmp 0x49a221
mov ecx, 1
test ecx, ecx
je 0x49a21d
jmp 0x49a2dd
jmp 0x49a244
cvtsi2sd xmm0, dword [ebp - 0x2958]
movsd xmm1, qword [ebp - 0xc9a8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x295c], edx
jmp 0x49a2e7
xor eax, eax
je 0x49a24e
jmp 0x49a25d
jmp 0x49a0a7
jmp 0x49a0a7
mov ecx, 2
test ecx, ecx
je 0x49a2dd
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2960], eax
cvtsi2sd xmm0, dword [ebp - 0x2960]
mov eax, dword [ebp - 0x2960]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc9a8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x295c], ecx
jmp 0x49a2e7
mov dword [ebp - 0x295c], 8
mov edx, dword [ebp - 0x2918]
shl edx, 2
add edx, dword [ebp - 0x2914]
mov eax, dword [ebp - 0x295c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2918]
shl ecx, 2
add ecx, dword [ebp - 0x2914]
mov dword [ecx], eax
jmp 0x49923f
mov edx, dword [ebp - 0x2910]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2910]
mov dword [ebp - 0x2964], eax
mov ecx, dword [ebp - 0x2964]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2968], ecx
lea edx, [ebp - 0x16648]
mov eax, 1
imul ecx, eax, 0x12
movsx edx, byte [edx + ecx]
neg edx
sbb edx, edx
neg edx
mov byte [ebp - 0x74], dl
movzx eax, byte [ebp - 0x74]
test eax, eax
je 0x49a3c2
mov dword [ebp - 0x296c], 0
jmp 0x49a37f
mov ecx, dword [ebp - 0x296c]
add ecx, 1
mov dword [ebp - 0x296c], ecx
cmp dword [ebp - 0x296c], 0x13
jge 0x49a3c2
mov edx, dword [ebp - 0x296c]
shl edx, 0
lea eax, [ebp - 0x16648]
movsx ecx, byte [eax + edx]
mov eax, dword [ebp - 0x296c]
cdq
mov esi, 0x36
idiv esi
add edx, 0x38
xor ecx, edx
lea edx, [ebp - 0x16648]
mov eax, dword [ebp - 0x296c]
shl eax, 0
mov byte [edx + eax], cl
jmp 0x49a370
lea ecx, [ebp - 0x16648]
mov dword [ebp - 0x2970], ecx
mov edx, dword [ebp - 0x2970]
push edx
mov eax, dword [ebp - 0x260c]
push eax
mov ecx, dword [ebp - 0x2968]
shl ecx, 2
add ecx, 0x785090
mov edx, dword [ecx]
call edx
mov dword [ebp - 0x2974], eax
xor eax, eax
mov byte [ebp - 0x75], al
lea ecx, [ebp - 0x75]
call fcn.00424d20
mov dword [ebp - 0x2978], eax
mov ecx, dword [ebp - 0x2978]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x49b507
mov eax, dword [ebp - 0x2978]
mov dword [ebp - 0x297c], eax
mov dword [ebp - 0x2980], 0
jmp 0x49a441
mov ecx, dword [ebp - 0x2980]
add ecx, 1
mov dword [ebp - 0x2980], ecx
cmp dword [ebp - 0x2980], 1
jae 0x49b507
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49a719
xor eax, eax
je 0x49a48b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49a4c7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736da0]
movsd qword [ebp - 0xc9c0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49a667
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49a667
mov dword [ebp - 0x2984], 0
jmp 0x49a546
cmp dword [ebp - 0x2984], 0xf
jae 0x49a662
cvtsi2sd xmm0, dword [ebp - 0x2984]
movsd xmm1, qword [ebp - 0xc9c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9c8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc9c8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49a5b5
mov ecx, dword [ebp - 0x2984]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc9c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9c0], xmm1
jmp 0x49a4b1
cvtsi2sd xmm0, dword [ebp - 0x2984]
movsd xmm1, qword [ebp - 0xc9c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9d0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc9d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49a612
mov eax, dword [ebp - 0x2984]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc9c0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9c0], xmm1
jmp 0x49a62b
mov ecx, 1
test ecx, ecx
je 0x49a627
jmp 0x49a6e7
jmp 0x49a64e
cvtsi2sd xmm0, dword [ebp - 0x2984]
movsd xmm1, qword [ebp - 0xc9c0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2988], edx
jmp 0x49a6f1
xor eax, eax
je 0x49a658
jmp 0x49a667
jmp 0x49a4b1
jmp 0x49a4b1
mov ecx, 2
test ecx, ecx
je 0x49a6e7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x298c], eax
cvtsi2sd xmm0, dword [ebp - 0x298c]
mov eax, dword [ebp - 0x298c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc9c0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2988], ecx
jmp 0x49a6f1
mov dword [ebp - 0x2988], 8
mov edx, dword [ebp - 0x2980]
shl edx, 2
add edx, dword [ebp - 0x297c]
mov eax, dword [ebp - 0x2988]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2980]
shl ecx, 2
add ecx, dword [ebp - 0x297c]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49b237
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49aa29
xor eax, eax
je 0x49a79b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49a7d7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d98]
movsd qword [ebp - 0xc9d8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49a977
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49a977
mov dword [ebp - 0x2990], 0
jmp 0x49a856
cmp dword [ebp - 0x2990], 0xf
jae 0x49a972
cvtsi2sd xmm0, dword [ebp - 0x2990]
movsd xmm1, qword [ebp - 0xc9d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9e0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc9e0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49a8c5
mov ecx, dword [ebp - 0x2990]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc9d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9d8], xmm1
jmp 0x49a7c1
cvtsi2sd xmm0, dword [ebp - 0x2990]
movsd xmm1, qword [ebp - 0xc9d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9e8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xc9e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49a922
mov eax, dword [ebp - 0x2990]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc9d8]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9d8], xmm1
jmp 0x49a93b
mov ecx, 1
test ecx, ecx
je 0x49a937
jmp 0x49a9f7
jmp 0x49a95e
cvtsi2sd xmm0, dword [ebp - 0x2990]
movsd xmm1, qword [ebp - 0xc9d8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2994], edx
jmp 0x49aa01
xor eax, eax
je 0x49a968
jmp 0x49a977
jmp 0x49a7c1
jmp 0x49a7c1
mov ecx, 2
test ecx, ecx
je 0x49a9f7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2998], eax
cvtsi2sd xmm0, dword [ebp - 0x2998]
mov eax, dword [ebp - 0x2998]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc9d8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2994], ecx
jmp 0x49aa01
mov dword [ebp - 0x2994], 8
mov edx, dword [ebp - 0x2980]
shl edx, 2
add edx, dword [ebp - 0x297c]
mov eax, dword [ebp - 0x2994]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2980]
shl ecx, 2
add ecx, dword [ebp - 0x297c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49acf4
xor eax, eax
je 0x49aa66
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49aaa2
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d90]
movsd qword [ebp - 0xc9f0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49ac42
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49ac42
mov dword [ebp - 0x299c], 0
jmp 0x49ab21
cmp dword [ebp - 0x299c], 0xf
jae 0x49ac3d
cvtsi2sd xmm0, dword [ebp - 0x299c]
movsd xmm1, qword [ebp - 0xc9f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9f8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc9f8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49ab90
mov ecx, dword [ebp - 0x299c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xc9f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9f0], xmm1
jmp 0x49aa8c
cvtsi2sd xmm0, dword [ebp - 0x299c]
movsd xmm1, qword [ebp - 0xc9f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xca00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xca00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49abed
mov eax, dword [ebp - 0x299c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xc9f0]
addsd xmm1, xmm0
movsd qword [ebp - 0xc9f0], xmm1
jmp 0x49ac06
mov ecx, 1
test ecx, ecx
je 0x49ac02
jmp 0x49acc2
jmp 0x49ac29
cvtsi2sd xmm0, dword [ebp - 0x299c]
movsd xmm1, qword [ebp - 0xc9f0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x29a0], edx
jmp 0x49accc
xor eax, eax
je 0x49ac33
jmp 0x49ac42
jmp 0x49aa8c
jmp 0x49aa8c
mov ecx, 2
test ecx, ecx
je 0x49acc2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x29a4], eax
cvtsi2sd xmm0, dword [ebp - 0x29a4]
mov eax, dword [ebp - 0x29a4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xc9f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x29a0], ecx
jmp 0x49accc
mov dword [ebp - 0x29a0], 8
mov edx, dword [ebp - 0x2980]
shl edx, 2
add edx, dword [ebp - 0x297c]
mov eax, dword [ebp - 0x29a0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2980]
shl ecx, 2
add ecx, dword [ebp - 0x297c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2980]
add edx, 0xffffffca
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xca08], xmm0
xor eax, eax
je 0x49ad0e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49ad4a
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xca08]
movsd qword [ebp - 0xca10], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49aeea
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49aeea
mov dword [ebp - 0x29a8], 0
jmp 0x49adc9
cmp dword [ebp - 0x29a8], 0xf
jae 0x49aee5
cvtsi2sd xmm0, dword [ebp - 0x29a8]
movsd xmm1, qword [ebp - 0xca10]
addsd xmm1, xmm0
movsd qword [ebp - 0xca18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xca18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49ae38
mov ecx, dword [ebp - 0x29a8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xca10]
addsd xmm1, xmm0
movsd qword [ebp - 0xca10], xmm1
jmp 0x49ad34
cvtsi2sd xmm0, dword [ebp - 0x29a8]
movsd xmm1, qword [ebp - 0xca10]
addsd xmm1, xmm0
movsd qword [ebp - 0xca20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xca20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49ae95
mov eax, dword [ebp - 0x29a8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xca10]
addsd xmm1, xmm0
movsd qword [ebp - 0xca10], xmm1
jmp 0x49aeae
mov ecx, 1
test ecx, ecx
je 0x49aeaa
jmp 0x49af6a
jmp 0x49aed1
cvtsi2sd xmm0, dword [ebp - 0x29a8]
movsd xmm1, qword [ebp - 0xca10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x29ac], edx
jmp 0x49af74
xor eax, eax
je 0x49aedb
jmp 0x49aeea
jmp 0x49ad34
jmp 0x49ad34
mov ecx, 2
test ecx, ecx
je 0x49af6a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x29b0], eax
cvtsi2sd xmm0, dword [ebp - 0x29b0]
mov eax, dword [ebp - 0x29b0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xca10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x29ac], ecx
jmp 0x49af74
mov dword [ebp - 0x29ac], 8
mov edx, dword [ebp - 0x2980]
add edx, 0xffffffca
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xca28], xmm0
xor eax, eax
je 0x49af8e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49afca
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xca28]
movsd qword [ebp - 0xca30], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49b16a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49b16a
mov dword [ebp - 0x29b4], 0
jmp 0x49b049
cmp dword [ebp - 0x29b4], 0xf
jae 0x49b165
cvtsi2sd xmm0, dword [ebp - 0x29b4]
movsd xmm1, qword [ebp - 0xca30]
addsd xmm1, xmm0
movsd qword [ebp - 0xca38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xca38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49b0b8
mov ecx, dword [ebp - 0x29b4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xca30]
addsd xmm1, xmm0
movsd qword [ebp - 0xca30], xmm1
jmp 0x49afb4
cvtsi2sd xmm0, dword [ebp - 0x29b4]
movsd xmm1, qword [ebp - 0xca30]
addsd xmm1, xmm0
movsd qword [ebp - 0xca40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xca40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49b115
mov eax, dword [ebp - 0x29b4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xca30]
addsd xmm1, xmm0
movsd qword [ebp - 0xca30], xmm1
jmp 0x49b12e
mov ecx, 1
test ecx, ecx
je 0x49b12a
jmp 0x49b1ea
jmp 0x49b151
cvtsi2sd xmm0, dword [ebp - 0x29b4]
movsd xmm1, qword [ebp - 0xca30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x29b8], edx
jmp 0x49b1f4
xor eax, eax
je 0x49b15b
jmp 0x49b16a
jmp 0x49afb4
jmp 0x49afb4
mov ecx, 2
test ecx, ecx
je 0x49b1ea
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x29bc], eax
cvtsi2sd xmm0, dword [ebp - 0x29bc]
mov eax, dword [ebp - 0x29bc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xca30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x29b8], ecx
jmp 0x49b1f4
mov dword [ebp - 0x29b8], 8
mov edx, dword [ebp - 0x2980]
shl edx, 2
add edx, dword [ebp - 0x297c]
mov eax, dword [ebp - 0x29ac]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2980]
shl ecx, 2
add ecx, dword [ebp - 0x297c]
mov edx, dword [ebp - 0x29b8]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2980]
shl ecx, 2
add ecx, dword [ebp - 0x297c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49b502
xor eax, eax
je 0x49b274
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49b2b0
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d88]
movsd qword [ebp - 0xca48], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49b450
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49b450
mov dword [ebp - 0x29c0], 0
jmp 0x49b32f
cmp dword [ebp - 0x29c0], 0xf
jae 0x49b44b
cvtsi2sd xmm0, dword [ebp - 0x29c0]
movsd xmm1, qword [ebp - 0xca48]
addsd xmm1, xmm0
movsd qword [ebp - 0xca50], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xca50]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49b39e
mov ecx, dword [ebp - 0x29c0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xca48]
addsd xmm1, xmm0
movsd qword [ebp - 0xca48], xmm1
jmp 0x49b29a
cvtsi2sd xmm0, dword [ebp - 0x29c0]
movsd xmm1, qword [ebp - 0xca48]
addsd xmm1, xmm0
movsd qword [ebp - 0xca58], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xca58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49b3fb
mov eax, dword [ebp - 0x29c0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xca48]
addsd xmm1, xmm0
movsd qword [ebp - 0xca48], xmm1
jmp 0x49b414
mov ecx, 1
test ecx, ecx
je 0x49b410
jmp 0x49b4d0
jmp 0x49b437
cvtsi2sd xmm0, dword [ebp - 0x29c0]
movsd xmm1, qword [ebp - 0xca48]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x29c4], edx
jmp 0x49b4da
xor eax, eax
je 0x49b441
jmp 0x49b450
jmp 0x49b29a
jmp 0x49b29a
mov ecx, 2
test ecx, ecx
je 0x49b4d0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x29c8], eax
cvtsi2sd xmm0, dword [ebp - 0x29c8]
mov eax, dword [ebp - 0x29c8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xca48]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x29c4], ecx
jmp 0x49b4da
mov dword [ebp - 0x29c4], 8
mov edx, dword [ebp - 0x2980]
shl edx, 2
add edx, dword [ebp - 0x297c]
mov eax, dword [ebp - 0x29c4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2980]
shl ecx, 2
add ecx, dword [ebp - 0x297c]
mov dword [ecx], eax
jmp 0x49a432
mov edx, dword [ebp - 0x2978]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2978]
mov dword [ebp - 0x29cc], eax
mov ecx, dword [ebp - 0x29cc]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x29d0], ecx
mov edx, dword [ebp - 0x29d0]
mov dword [ebp - 0x29d4], edx
xor eax, eax
mov byte [ebp - 0x76], al
lea ecx, [ebp - 0x76]
call fcn.00424cf0
mov dword [ebp - 0x29d8], eax
mov ecx, dword [ebp - 0x29d8]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x49c652
mov eax, dword [ebp - 0x29d8]
mov dword [ebp - 0x29dc], eax
mov dword [ebp - 0x29e0], 0
jmp 0x49b58c
mov ecx, dword [ebp - 0x29e0]
add ecx, 1
mov dword [ebp - 0x29e0], ecx
cmp dword [ebp - 0x29e0], 1
jae 0x49c652
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49b864
xor eax, eax
je 0x49b5d6
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49b612
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d98]
movsd qword [ebp - 0xca60], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49b7b2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49b7b2
mov dword [ebp - 0x29e4], 0
jmp 0x49b691
cmp dword [ebp - 0x29e4], 0xf
jae 0x49b7ad
cvtsi2sd xmm0, dword [ebp - 0x29e4]
movsd xmm1, qword [ebp - 0xca60]
addsd xmm1, xmm0
movsd qword [ebp - 0xca68], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xca68]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49b700
mov ecx, dword [ebp - 0x29e4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xca60]
addsd xmm1, xmm0
movsd qword [ebp - 0xca60], xmm1
jmp 0x49b5fc
cvtsi2sd xmm0, dword [ebp - 0x29e4]
movsd xmm1, qword [ebp - 0xca60]
addsd xmm1, xmm0
movsd qword [ebp - 0xca70], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xca70]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49b75d
mov eax, dword [ebp - 0x29e4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xca60]
addsd xmm1, xmm0
movsd qword [ebp - 0xca60], xmm1
jmp 0x49b776
mov ecx, 1
test ecx, ecx
je 0x49b772
jmp 0x49b832
jmp 0x49b799
cvtsi2sd xmm0, dword [ebp - 0x29e4]
movsd xmm1, qword [ebp - 0xca60]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x29e8], edx
jmp 0x49b83c
xor eax, eax
je 0x49b7a3
jmp 0x49b7b2
jmp 0x49b5fc
jmp 0x49b5fc
mov ecx, 2
test ecx, ecx
je 0x49b832
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x29ec], eax
cvtsi2sd xmm0, dword [ebp - 0x29ec]
mov eax, dword [ebp - 0x29ec]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xca60]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x29e8], ecx
jmp 0x49b83c
mov dword [ebp - 0x29e8], 8
mov edx, dword [ebp - 0x29e0]
shl edx, 2
add edx, dword [ebp - 0x29dc]
mov eax, dword [ebp - 0x29e8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x29e0]
shl ecx, 2
add ecx, dword [ebp - 0x29dc]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49c382
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49bb74
xor eax, eax
je 0x49b8e6
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49b922
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d90]
movsd qword [ebp - 0xca78], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49bac2
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49bac2
mov dword [ebp - 0x29f0], 0
jmp 0x49b9a1
cmp dword [ebp - 0x29f0], 0xf
jae 0x49babd
cvtsi2sd xmm0, dword [ebp - 0x29f0]
movsd xmm1, qword [ebp - 0xca78]
addsd xmm1, xmm0
movsd qword [ebp - 0xca80], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xca80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49ba10
mov ecx, dword [ebp - 0x29f0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xca78]
addsd xmm1, xmm0
movsd qword [ebp - 0xca78], xmm1
jmp 0x49b90c
cvtsi2sd xmm0, dword [ebp - 0x29f0]
movsd xmm1, qword [ebp - 0xca78]
addsd xmm1, xmm0
movsd qword [ebp - 0xca88], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xca88]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49ba6d
mov eax, dword [ebp - 0x29f0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xca78]
addsd xmm1, xmm0
movsd qword [ebp - 0xca78], xmm1
jmp 0x49ba86
mov ecx, 1
test ecx, ecx
je 0x49ba82
jmp 0x49bb42
jmp 0x49baa9
cvtsi2sd xmm0, dword [ebp - 0x29f0]
movsd xmm1, qword [ebp - 0xca78]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x29f4], edx
jmp 0x49bb4c
xor eax, eax
je 0x49bab3
jmp 0x49bac2
jmp 0x49b90c
jmp 0x49b90c
mov ecx, 2
test ecx, ecx
je 0x49bb42
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x29f8], eax
cvtsi2sd xmm0, dword [ebp - 0x29f8]
mov eax, dword [ebp - 0x29f8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xca78]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x29f4], ecx
jmp 0x49bb4c
mov dword [ebp - 0x29f4], 8
mov edx, dword [ebp - 0x29e0]
shl edx, 2
add edx, dword [ebp - 0x29dc]
mov eax, dword [ebp - 0x29f4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x29e0]
shl ecx, 2
add ecx, dword [ebp - 0x29dc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49be3f
xor eax, eax
je 0x49bbb1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49bbed
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d88]
movsd qword [ebp - 0xca90], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49bd8d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49bd8d
mov dword [ebp - 0x29fc], 0
jmp 0x49bc6c
cmp dword [ebp - 0x29fc], 0xf
jae 0x49bd88
cvtsi2sd xmm0, dword [ebp - 0x29fc]
movsd xmm1, qword [ebp - 0xca90]
addsd xmm1, xmm0
movsd qword [ebp - 0xca98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xca98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49bcdb
mov ecx, dword [ebp - 0x29fc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xca90]
addsd xmm1, xmm0
movsd qword [ebp - 0xca90], xmm1
jmp 0x49bbd7
cvtsi2sd xmm0, dword [ebp - 0x29fc]
movsd xmm1, qword [ebp - 0xca90]
addsd xmm1, xmm0
movsd qword [ebp - 0xcaa0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcaa0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49bd38
mov eax, dword [ebp - 0x29fc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xca90]
addsd xmm1, xmm0
movsd qword [ebp - 0xca90], xmm1
jmp 0x49bd51
mov ecx, 1
test ecx, ecx
je 0x49bd4d
jmp 0x49be0d
jmp 0x49bd74
cvtsi2sd xmm0, dword [ebp - 0x29fc]
movsd xmm1, qword [ebp - 0xca90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2a00], edx
jmp 0x49be17
xor eax, eax
je 0x49bd7e
jmp 0x49bd8d
jmp 0x49bbd7
jmp 0x49bbd7
mov ecx, 2
test ecx, ecx
je 0x49be0d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2a04], eax
cvtsi2sd xmm0, dword [ebp - 0x2a04]
mov eax, dword [ebp - 0x2a04]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xca90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2a00], ecx
jmp 0x49be17
mov dword [ebp - 0x2a00], 8
mov edx, dword [ebp - 0x29e0]
shl edx, 2
add edx, dword [ebp - 0x29dc]
mov eax, dword [ebp - 0x2a00]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x29e0]
shl ecx, 2
add ecx, dword [ebp - 0x29dc]
mov dword [ecx], eax
mov edx, dword [ebp - 0x29e0]
add edx, 0xffffffcb
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcaa8], xmm0
xor eax, eax
je 0x49be59
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49be95
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcaa8]
movsd qword [ebp - 0xcab0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49c035
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49c035
mov dword [ebp - 0x2a08], 0
jmp 0x49bf14
cmp dword [ebp - 0x2a08], 0xf
jae 0x49c030
cvtsi2sd xmm0, dword [ebp - 0x2a08]
movsd xmm1, qword [ebp - 0xcab0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcab8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcab8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49bf83
mov ecx, dword [ebp - 0x2a08]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcab0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcab0], xmm1
jmp 0x49be7f
cvtsi2sd xmm0, dword [ebp - 0x2a08]
movsd xmm1, qword [ebp - 0xcab0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcac0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcac0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49bfe0
mov eax, dword [ebp - 0x2a08]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcab0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcab0], xmm1
jmp 0x49bff9
mov ecx, 1
test ecx, ecx
je 0x49bff5
jmp 0x49c0b5
jmp 0x49c01c
cvtsi2sd xmm0, dword [ebp - 0x2a08]
movsd xmm1, qword [ebp - 0xcab0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2a0c], edx
jmp 0x49c0bf
xor eax, eax
je 0x49c026
jmp 0x49c035
jmp 0x49be7f
jmp 0x49be7f
mov ecx, 2
test ecx, ecx
je 0x49c0b5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2a10], eax
cvtsi2sd xmm0, dword [ebp - 0x2a10]
mov eax, dword [ebp - 0x2a10]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcab0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2a0c], ecx
jmp 0x49c0bf
mov dword [ebp - 0x2a0c], 8
mov edx, dword [ebp - 0x29e0]
add edx, 0xffffffcb
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcac8], xmm0
xor eax, eax
je 0x49c0d9
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49c115
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcac8]
movsd qword [ebp - 0xcad0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49c2b5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49c2b5
mov dword [ebp - 0x2a14], 0
jmp 0x49c194
cmp dword [ebp - 0x2a14], 0xf
jae 0x49c2b0
cvtsi2sd xmm0, dword [ebp - 0x2a14]
movsd xmm1, qword [ebp - 0xcad0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcad8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcad8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49c203
mov ecx, dword [ebp - 0x2a14]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcad0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcad0], xmm1
jmp 0x49c0ff
cvtsi2sd xmm0, dword [ebp - 0x2a14]
movsd xmm1, qword [ebp - 0xcad0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcae0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcae0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49c260
mov eax, dword [ebp - 0x2a14]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcad0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcad0], xmm1
jmp 0x49c279
mov ecx, 1
test ecx, ecx
je 0x49c275
jmp 0x49c335
jmp 0x49c29c
cvtsi2sd xmm0, dword [ebp - 0x2a14]
movsd xmm1, qword [ebp - 0xcad0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2a18], edx
jmp 0x49c33f
xor eax, eax
je 0x49c2a6
jmp 0x49c2b5
jmp 0x49c0ff
jmp 0x49c0ff
mov ecx, 2
test ecx, ecx
je 0x49c335
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2a1c], eax
cvtsi2sd xmm0, dword [ebp - 0x2a1c]
mov eax, dword [ebp - 0x2a1c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcad0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2a18], ecx
jmp 0x49c33f
mov dword [ebp - 0x2a18], 8
mov edx, dword [ebp - 0x29e0]
shl edx, 2
add edx, dword [ebp - 0x29dc]
mov eax, dword [ebp - 0x2a0c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x29e0]
shl ecx, 2
add ecx, dword [ebp - 0x29dc]
mov edx, dword [ebp - 0x2a18]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x29e0]
shl ecx, 2
add ecx, dword [ebp - 0x29dc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49c64d
xor eax, eax
je 0x49c3bf
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49c3fb
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d80]
movsd qword [ebp - 0xcae8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49c59b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49c59b
mov dword [ebp - 0x2a20], 0
jmp 0x49c47a
cmp dword [ebp - 0x2a20], 0xf
jae 0x49c596
cvtsi2sd xmm0, dword [ebp - 0x2a20]
movsd xmm1, qword [ebp - 0xcae8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcaf0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcaf0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49c4e9
mov ecx, dword [ebp - 0x2a20]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcae8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcae8], xmm1
jmp 0x49c3e5
cvtsi2sd xmm0, dword [ebp - 0x2a20]
movsd xmm1, qword [ebp - 0xcae8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcaf8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcaf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49c546
mov eax, dword [ebp - 0x2a20]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcae8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcae8], xmm1
jmp 0x49c55f
mov ecx, 1
test ecx, ecx
je 0x49c55b
jmp 0x49c61b
jmp 0x49c582
cvtsi2sd xmm0, dword [ebp - 0x2a20]
movsd xmm1, qword [ebp - 0xcae8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2a24], edx
jmp 0x49c625
xor eax, eax
je 0x49c58c
jmp 0x49c59b
jmp 0x49c3e5
jmp 0x49c3e5
mov ecx, 2
test ecx, ecx
je 0x49c61b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2a28], eax
cvtsi2sd xmm0, dword [ebp - 0x2a28]
mov eax, dword [ebp - 0x2a28]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcae8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2a24], ecx
jmp 0x49c625
mov dword [ebp - 0x2a24], 8
mov edx, dword [ebp - 0x29e0]
shl edx, 2
add edx, dword [ebp - 0x29dc]
mov eax, dword [ebp - 0x2a24]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x29e0]
shl ecx, 2
add ecx, dword [ebp - 0x29dc]
mov dword [ecx], eax
jmp 0x49b57d
mov edx, dword [ebp - 0x29d8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x29d8]
mov dword [ebp - 0x2a2c], eax
mov ecx, dword [ebp - 0x2a2c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2a30], ecx
mov edx, dword [ebp - 0x2a30]
mov dword [ebp - 0x2a34], edx
xor eax, eax
mov byte [ebp - 0x77], al
lea ecx, [ebp - 0x77]
call fcn.00424cc0
mov dword [ebp - 0x2a38], eax
mov ecx, dword [ebp - 0x2a38]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x49d79d
mov eax, dword [ebp - 0x2a38]
mov dword [ebp - 0x2a3c], eax
mov dword [ebp - 0x2a40], 0
jmp 0x49c6d7
mov ecx, dword [ebp - 0x2a40]
add ecx, 1
mov dword [ebp - 0x2a40], ecx
cmp dword [ebp - 0x2a40], 1
jae 0x49d79d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49c9af
xor eax, eax
je 0x49c721
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49c75d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d98]
movsd qword [ebp - 0xcb00], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49c8fd
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49c8fd
mov dword [ebp - 0x2a44], 0
jmp 0x49c7dc
cmp dword [ebp - 0x2a44], 0xf
jae 0x49c8f8
cvtsi2sd xmm0, dword [ebp - 0x2a44]
movsd xmm1, qword [ebp - 0xcb00]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb08], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcb08]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49c84b
mov ecx, dword [ebp - 0x2a44]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcb00]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb00], xmm1
jmp 0x49c747
cvtsi2sd xmm0, dword [ebp - 0x2a44]
movsd xmm1, qword [ebp - 0xcb00]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb10], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcb10]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49c8a8
mov eax, dword [ebp - 0x2a44]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcb00]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb00], xmm1
jmp 0x49c8c1
mov ecx, 1
test ecx, ecx
je 0x49c8bd
jmp 0x49c97d
jmp 0x49c8e4
cvtsi2sd xmm0, dword [ebp - 0x2a44]
movsd xmm1, qword [ebp - 0xcb00]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2a48], edx
jmp 0x49c987
xor eax, eax
je 0x49c8ee
jmp 0x49c8fd
jmp 0x49c747
jmp 0x49c747
mov ecx, 2
test ecx, ecx
je 0x49c97d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2a4c], eax
cvtsi2sd xmm0, dword [ebp - 0x2a4c]
mov eax, dword [ebp - 0x2a4c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcb00]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2a48], ecx
jmp 0x49c987
mov dword [ebp - 0x2a48], 8
mov edx, dword [ebp - 0x2a40]
shl edx, 2
add edx, dword [ebp - 0x2a3c]
mov eax, dword [ebp - 0x2a48]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2a40]
shl ecx, 2
add ecx, dword [ebp - 0x2a3c]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49d4cd
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49ccbf
xor eax, eax
je 0x49ca31
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49ca6d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d90]
movsd qword [ebp - 0xcb18], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49cc0d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49cc0d
mov dword [ebp - 0x2a50], 0
jmp 0x49caec
cmp dword [ebp - 0x2a50], 0xf
jae 0x49cc08
cvtsi2sd xmm0, dword [ebp - 0x2a50]
movsd xmm1, qword [ebp - 0xcb18]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb20], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcb20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49cb5b
mov ecx, dword [ebp - 0x2a50]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcb18]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb18], xmm1
jmp 0x49ca57
cvtsi2sd xmm0, dword [ebp - 0x2a50]
movsd xmm1, qword [ebp - 0xcb18]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb28], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcb28]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49cbb8
mov eax, dword [ebp - 0x2a50]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcb18]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb18], xmm1
jmp 0x49cbd1
mov ecx, 1
test ecx, ecx
je 0x49cbcd
jmp 0x49cc8d
jmp 0x49cbf4
cvtsi2sd xmm0, dword [ebp - 0x2a50]
movsd xmm1, qword [ebp - 0xcb18]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2a54], edx
jmp 0x49cc97
xor eax, eax
je 0x49cbfe
jmp 0x49cc0d
jmp 0x49ca57
jmp 0x49ca57
mov ecx, 2
test ecx, ecx
je 0x49cc8d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2a58], eax
cvtsi2sd xmm0, dword [ebp - 0x2a58]
mov eax, dword [ebp - 0x2a58]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcb18]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2a54], ecx
jmp 0x49cc97
mov dword [ebp - 0x2a54], 8
mov edx, dword [ebp - 0x2a40]
shl edx, 2
add edx, dword [ebp - 0x2a3c]
mov eax, dword [ebp - 0x2a54]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2a40]
shl ecx, 2
add ecx, dword [ebp - 0x2a3c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49cf8a
xor eax, eax
je 0x49ccfc
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49cd38
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d88]
movsd qword [ebp - 0xcb30], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49ced8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49ced8
mov dword [ebp - 0x2a5c], 0
jmp 0x49cdb7
cmp dword [ebp - 0x2a5c], 0xf
jae 0x49ced3
cvtsi2sd xmm0, dword [ebp - 0x2a5c]
movsd xmm1, qword [ebp - 0xcb30]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcb38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49ce26
mov ecx, dword [ebp - 0x2a5c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcb30]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb30], xmm1
jmp 0x49cd22
cvtsi2sd xmm0, dword [ebp - 0x2a5c]
movsd xmm1, qword [ebp - 0xcb30]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcb40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49ce83
mov eax, dword [ebp - 0x2a5c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcb30]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb30], xmm1
jmp 0x49ce9c
mov ecx, 1
test ecx, ecx
je 0x49ce98
jmp 0x49cf58
jmp 0x49cebf
cvtsi2sd xmm0, dword [ebp - 0x2a5c]
movsd xmm1, qword [ebp - 0xcb30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2a60], edx
jmp 0x49cf62
xor eax, eax
je 0x49cec9
jmp 0x49ced8
jmp 0x49cd22
jmp 0x49cd22
mov ecx, 2
test ecx, ecx
je 0x49cf58
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2a64], eax
cvtsi2sd xmm0, dword [ebp - 0x2a64]
mov eax, dword [ebp - 0x2a64]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcb30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2a60], ecx
jmp 0x49cf62
mov dword [ebp - 0x2a60], 8
mov edx, dword [ebp - 0x2a40]
shl edx, 2
add edx, dword [ebp - 0x2a3c]
mov eax, dword [ebp - 0x2a60]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2a40]
shl ecx, 2
add ecx, dword [ebp - 0x2a3c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2a40]
add edx, 0xffffffcb
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcb48], xmm0
xor eax, eax
je 0x49cfa4
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49cfe0
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcb48]
movsd qword [ebp - 0xcb50], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49d180
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49d180
mov dword [ebp - 0x2a68], 0
jmp 0x49d05f
cmp dword [ebp - 0x2a68], 0xf
jae 0x49d17b
cvtsi2sd xmm0, dword [ebp - 0x2a68]
movsd xmm1, qword [ebp - 0xcb50]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcb58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49d0ce
mov ecx, dword [ebp - 0x2a68]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcb50]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb50], xmm1
jmp 0x49cfca
cvtsi2sd xmm0, dword [ebp - 0x2a68]
movsd xmm1, qword [ebp - 0xcb50]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcb60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49d12b
mov eax, dword [ebp - 0x2a68]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcb50]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb50], xmm1
jmp 0x49d144
mov ecx, 1
test ecx, ecx
je 0x49d140
jmp 0x49d200
jmp 0x49d167
cvtsi2sd xmm0, dword [ebp - 0x2a68]
movsd xmm1, qword [ebp - 0xcb50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2a6c], edx
jmp 0x49d20a
xor eax, eax
je 0x49d171
jmp 0x49d180
jmp 0x49cfca
jmp 0x49cfca
mov ecx, 2
test ecx, ecx
je 0x49d200
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2a70], eax
cvtsi2sd xmm0, dword [ebp - 0x2a70]
mov eax, dword [ebp - 0x2a70]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcb50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2a6c], ecx
jmp 0x49d20a
mov dword [ebp - 0x2a6c], 8
mov edx, dword [ebp - 0x2a40]
add edx, 0xffffffcb
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcb68], xmm0
xor eax, eax
je 0x49d224
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49d260
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcb68]
movsd qword [ebp - 0xcb70], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49d400
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49d400
mov dword [ebp - 0x2a74], 0
jmp 0x49d2df
cmp dword [ebp - 0x2a74], 0xf
jae 0x49d3fb
cvtsi2sd xmm0, dword [ebp - 0x2a74]
movsd xmm1, qword [ebp - 0xcb70]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcb78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49d34e
mov ecx, dword [ebp - 0x2a74]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcb70]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb70], xmm1
jmp 0x49d24a
cvtsi2sd xmm0, dword [ebp - 0x2a74]
movsd xmm1, qword [ebp - 0xcb70]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcb80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49d3ab
mov eax, dword [ebp - 0x2a74]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcb70]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb70], xmm1
jmp 0x49d3c4
mov ecx, 1
test ecx, ecx
je 0x49d3c0
jmp 0x49d480
jmp 0x49d3e7
cvtsi2sd xmm0, dword [ebp - 0x2a74]
movsd xmm1, qword [ebp - 0xcb70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2a78], edx
jmp 0x49d48a
xor eax, eax
je 0x49d3f1
jmp 0x49d400
jmp 0x49d24a
jmp 0x49d24a
mov ecx, 2
test ecx, ecx
je 0x49d480
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2a7c], eax
cvtsi2sd xmm0, dword [ebp - 0x2a7c]
mov eax, dword [ebp - 0x2a7c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcb70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2a78], ecx
jmp 0x49d48a
mov dword [ebp - 0x2a78], 8
mov edx, dword [ebp - 0x2a40]
shl edx, 2
add edx, dword [ebp - 0x2a3c]
mov eax, dword [ebp - 0x2a6c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2a40]
shl ecx, 2
add ecx, dword [ebp - 0x2a3c]
mov edx, dword [ebp - 0x2a78]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2a40]
shl ecx, 2
add ecx, dword [ebp - 0x2a3c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49d798
xor eax, eax
je 0x49d50a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49d546
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d80]
movsd qword [ebp - 0xcb88], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49d6e6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49d6e6
mov dword [ebp - 0x2a80], 0
jmp 0x49d5c5
cmp dword [ebp - 0x2a80], 0xf
jae 0x49d6e1
cvtsi2sd xmm0, dword [ebp - 0x2a80]
movsd xmm1, qword [ebp - 0xcb88]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb90], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcb90]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49d634
mov ecx, dword [ebp - 0x2a80]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcb88]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb88], xmm1
jmp 0x49d530
cvtsi2sd xmm0, dword [ebp - 0x2a80]
movsd xmm1, qword [ebp - 0xcb88]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb98], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcb98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49d691
mov eax, dword [ebp - 0x2a80]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcb88]
addsd xmm1, xmm0
movsd qword [ebp - 0xcb88], xmm1
jmp 0x49d6aa
mov ecx, 1
test ecx, ecx
je 0x49d6a6
jmp 0x49d766
jmp 0x49d6cd
cvtsi2sd xmm0, dword [ebp - 0x2a80]
movsd xmm1, qword [ebp - 0xcb88]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2a84], edx
jmp 0x49d770
xor eax, eax
je 0x49d6d7
jmp 0x49d6e6
jmp 0x49d530
jmp 0x49d530
mov ecx, 2
test ecx, ecx
je 0x49d766
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2a88], eax
cvtsi2sd xmm0, dword [ebp - 0x2a88]
mov eax, dword [ebp - 0x2a88]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcb88]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2a84], ecx
jmp 0x49d770
mov dword [ebp - 0x2a84], 8
mov edx, dword [ebp - 0x2a40]
shl edx, 2
add edx, dword [ebp - 0x2a3c]
mov eax, dword [ebp - 0x2a84]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2a40]
shl ecx, 2
add ecx, dword [ebp - 0x2a3c]
mov dword [ecx], eax
jmp 0x49c6c8
mov edx, dword [ebp - 0x2a38]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2a38]
mov dword [ebp - 0x2a8c], eax
mov ecx, dword [ebp - 0x2a8c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2a90], ecx
mov edx, dword [ebp - 0x2a90]
mov dword [ebp - 0x2a94], edx
mov eax, dword [ebp - 0x2a34]
mov dword [ebp - 0x29d4], eax
cmp dword [ebp - 0x29d4], 0
je 0x49e93a
xor ecx, ecx
mov byte [ebp - 0x78], cl
lea ecx, [ebp - 0x78]
call fcn.00424c90
mov dword [ebp - 0x2a98], eax
mov edx, dword [ebp - 0x2a98]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x49e901
mov ecx, dword [ebp - 0x2a98]
mov dword [ebp - 0x2a9c], ecx
mov dword [ebp - 0x2aa0], 0
jmp 0x49d83b
mov edx, dword [ebp - 0x2aa0]
add edx, 1
mov dword [ebp - 0x2aa0], edx
cmp dword [ebp - 0x2aa0], 1
jae 0x49e901
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49db13
xor eax, eax
je 0x49d885
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x49d8c1
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736d90]
movsd qword [ebp - 0xcba0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49da61
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49da61
mov dword [ebp - 0x2aa4], 0
jmp 0x49d940
cmp dword [ebp - 0x2aa4], 0xf
jae 0x49da5c
cvtsi2sd xmm0, dword [ebp - 0x2aa4]
movsd xmm1, qword [ebp - 0xcba0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcba8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcba8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49d9af
mov ecx, dword [ebp - 0x2aa4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcba0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcba0], xmm1
jmp 0x49d8ab
cvtsi2sd xmm0, dword [ebp - 0x2aa4]
movsd xmm1, qword [ebp - 0xcba0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcbb0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcbb0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49da0c
mov eax, dword [ebp - 0x2aa4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcba0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcba0], xmm1
jmp 0x49da25
mov ecx, 1
test ecx, ecx
je 0x49da21
jmp 0x49dae1
jmp 0x49da48
cvtsi2sd xmm0, dword [ebp - 0x2aa4]
movsd xmm1, qword [ebp - 0xcba0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2aa8], edx
jmp 0x49daeb
xor eax, eax
je 0x49da52
jmp 0x49da61
jmp 0x49d8ab
jmp 0x49d8ab
mov ecx, 2
test ecx, ecx
je 0x49dae1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2aac], eax
cvtsi2sd xmm0, dword [ebp - 0x2aac]
mov eax, dword [ebp - 0x2aac]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcba0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2aa8], ecx
jmp 0x49daeb
mov dword [ebp - 0x2aa8], 8
mov edx, dword [ebp - 0x2aa0]
shl edx, 2
add edx, dword [ebp - 0x2a9c]
mov eax, dword [ebp - 0x2aa8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2aa0]
shl ecx, 2
add ecx, dword [ebp - 0x2a9c]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49e631
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49de23
xor eax, eax
je 0x49db95
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49dbd1
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d88]
movsd qword [ebp - 0xcbb8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49dd71
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49dd71
mov dword [ebp - 0x2ab0], 0
jmp 0x49dc50
cmp dword [ebp - 0x2ab0], 0xf
jae 0x49dd6c
cvtsi2sd xmm0, dword [ebp - 0x2ab0]
movsd xmm1, qword [ebp - 0xcbb8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcbc0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcbc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49dcbf
mov ecx, dword [ebp - 0x2ab0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcbb8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcbb8], xmm1
jmp 0x49dbbb
cvtsi2sd xmm0, dword [ebp - 0x2ab0]
movsd xmm1, qword [ebp - 0xcbb8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcbc8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcbc8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49dd1c
mov eax, dword [ebp - 0x2ab0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcbb8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcbb8], xmm1
jmp 0x49dd35
mov ecx, 1
test ecx, ecx
je 0x49dd31
jmp 0x49ddf1
jmp 0x49dd58
cvtsi2sd xmm0, dword [ebp - 0x2ab0]
movsd xmm1, qword [ebp - 0xcbb8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2ab4], edx
jmp 0x49ddfb
xor eax, eax
je 0x49dd62
jmp 0x49dd71
jmp 0x49dbbb
jmp 0x49dbbb
mov ecx, 2
test ecx, ecx
je 0x49ddf1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2ab8], eax
cvtsi2sd xmm0, dword [ebp - 0x2ab8]
mov eax, dword [ebp - 0x2ab8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcbb8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2ab4], ecx
jmp 0x49ddfb
mov dword [ebp - 0x2ab4], 8
mov edx, dword [ebp - 0x2aa0]
shl edx, 2
add edx, dword [ebp - 0x2a9c]
mov eax, dword [ebp - 0x2ab4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2aa0]
shl ecx, 2
add ecx, dword [ebp - 0x2a9c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49e0ee
xor eax, eax
je 0x49de60
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49de9c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d80]
movsd qword [ebp - 0xcbd0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49e03c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49e03c
mov dword [ebp - 0x2abc], 0
jmp 0x49df1b
cmp dword [ebp - 0x2abc], 0xf
jae 0x49e037
cvtsi2sd xmm0, dword [ebp - 0x2abc]
movsd xmm1, qword [ebp - 0xcbd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcbd8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcbd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49df8a
mov ecx, dword [ebp - 0x2abc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcbd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcbd0], xmm1
jmp 0x49de86
cvtsi2sd xmm0, dword [ebp - 0x2abc]
movsd xmm1, qword [ebp - 0xcbd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcbe0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcbe0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49dfe7
mov eax, dword [ebp - 0x2abc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcbd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcbd0], xmm1
jmp 0x49e000
mov ecx, 1
test ecx, ecx
je 0x49dffc
jmp 0x49e0bc
jmp 0x49e023
cvtsi2sd xmm0, dword [ebp - 0x2abc]
movsd xmm1, qword [ebp - 0xcbd0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2ac0], edx
jmp 0x49e0c6
xor eax, eax
je 0x49e02d
jmp 0x49e03c
jmp 0x49de86
jmp 0x49de86
mov ecx, 2
test ecx, ecx
je 0x49e0bc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2ac4], eax
cvtsi2sd xmm0, dword [ebp - 0x2ac4]
mov eax, dword [ebp - 0x2ac4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcbd0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2ac0], ecx
jmp 0x49e0c6
mov dword [ebp - 0x2ac0], 8
mov edx, dword [ebp - 0x2aa0]
shl edx, 2
add edx, dword [ebp - 0x2a9c]
mov eax, dword [ebp - 0x2ac0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2aa0]
shl ecx, 2
add ecx, dword [ebp - 0x2a9c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2aa0]
add edx, 0xffffffcc
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcbe8], xmm0
xor eax, eax
je 0x49e108
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49e144
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcbe8]
movsd qword [ebp - 0xcbf0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49e2e4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49e2e4
mov dword [ebp - 0x2ac8], 0
jmp 0x49e1c3
cmp dword [ebp - 0x2ac8], 0xf
jae 0x49e2df
cvtsi2sd xmm0, dword [ebp - 0x2ac8]
movsd xmm1, qword [ebp - 0xcbf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcbf8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcbf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49e232
mov ecx, dword [ebp - 0x2ac8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcbf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcbf0], xmm1
jmp 0x49e12e
cvtsi2sd xmm0, dword [ebp - 0x2ac8]
movsd xmm1, qword [ebp - 0xcbf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcc00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49e28f
mov eax, dword [ebp - 0x2ac8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcbf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcbf0], xmm1
jmp 0x49e2a8
mov ecx, 1
test ecx, ecx
je 0x49e2a4
jmp 0x49e364
jmp 0x49e2cb
cvtsi2sd xmm0, dword [ebp - 0x2ac8]
movsd xmm1, qword [ebp - 0xcbf0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2acc], edx
jmp 0x49e36e
xor eax, eax
je 0x49e2d5
jmp 0x49e2e4
jmp 0x49e12e
jmp 0x49e12e
mov ecx, 2
test ecx, ecx
je 0x49e364
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2ad0], eax
cvtsi2sd xmm0, dword [ebp - 0x2ad0]
mov eax, dword [ebp - 0x2ad0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcbf0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2acc], ecx
jmp 0x49e36e
mov dword [ebp - 0x2acc], 8
mov edx, dword [ebp - 0x2aa0]
add edx, 0xffffffcc
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcc08], xmm0
xor eax, eax
je 0x49e388
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49e3c4
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcc08]
movsd qword [ebp - 0xcc10], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49e564
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49e564
mov dword [ebp - 0x2ad4], 0
jmp 0x49e443
cmp dword [ebp - 0x2ad4], 0xf
jae 0x49e55f
cvtsi2sd xmm0, dword [ebp - 0x2ad4]
movsd xmm1, qword [ebp - 0xcc10]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcc18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49e4b2
mov ecx, dword [ebp - 0x2ad4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcc10]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc10], xmm1
jmp 0x49e3ae
cvtsi2sd xmm0, dword [ebp - 0x2ad4]
movsd xmm1, qword [ebp - 0xcc10]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcc20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49e50f
mov eax, dword [ebp - 0x2ad4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcc10]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc10], xmm1
jmp 0x49e528
mov ecx, 1
test ecx, ecx
je 0x49e524
jmp 0x49e5e4
jmp 0x49e54b
cvtsi2sd xmm0, dword [ebp - 0x2ad4]
movsd xmm1, qword [ebp - 0xcc10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2ad8], edx
jmp 0x49e5ee
xor eax, eax
je 0x49e555
jmp 0x49e564
jmp 0x49e3ae
jmp 0x49e3ae
mov ecx, 2
test ecx, ecx
je 0x49e5e4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2adc], eax
cvtsi2sd xmm0, dword [ebp - 0x2adc]
mov eax, dword [ebp - 0x2adc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcc10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2ad8], ecx
jmp 0x49e5ee
mov dword [ebp - 0x2ad8], 8
mov edx, dword [ebp - 0x2aa0]
shl edx, 2
add edx, dword [ebp - 0x2a9c]
mov eax, dword [ebp - 0x2acc]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2aa0]
shl ecx, 2
add ecx, dword [ebp - 0x2a9c]
mov edx, dword [ebp - 0x2ad8]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2aa0]
shl ecx, 2
add ecx, dword [ebp - 0x2a9c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49e8fc
xor eax, eax
je 0x49e66e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49e6aa
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d78]
movsd qword [ebp - 0xcc28], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49e84a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49e84a
mov dword [ebp - 0x2ae0], 0
jmp 0x49e729
cmp dword [ebp - 0x2ae0], 0xf
jae 0x49e845
cvtsi2sd xmm0, dword [ebp - 0x2ae0]
movsd xmm1, qword [ebp - 0xcc28]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc30], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcc30]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49e798
mov ecx, dword [ebp - 0x2ae0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcc28]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc28], xmm1
jmp 0x49e694
cvtsi2sd xmm0, dword [ebp - 0x2ae0]
movsd xmm1, qword [ebp - 0xcc28]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc38], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcc38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49e7f5
mov eax, dword [ebp - 0x2ae0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcc28]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc28], xmm1
jmp 0x49e80e
mov ecx, 1
test ecx, ecx
je 0x49e80a
jmp 0x49e8ca
jmp 0x49e831
cvtsi2sd xmm0, dword [ebp - 0x2ae0]
movsd xmm1, qword [ebp - 0xcc28]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2ae4], edx
jmp 0x49e8d4
xor eax, eax
je 0x49e83b
jmp 0x49e84a
jmp 0x49e694
jmp 0x49e694
mov ecx, 2
test ecx, ecx
je 0x49e8ca
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2ae8], eax
cvtsi2sd xmm0, dword [ebp - 0x2ae8]
mov eax, dword [ebp - 0x2ae8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcc28]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2ae4], ecx
jmp 0x49e8d4
mov dword [ebp - 0x2ae4], 8
mov edx, dword [ebp - 0x2aa0]
shl edx, 2
add edx, dword [ebp - 0x2a9c]
mov eax, dword [ebp - 0x2ae4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2aa0]
shl ecx, 2
add ecx, dword [ebp - 0x2a9c]
mov dword [ecx], eax
jmp 0x49d82c
mov edx, dword [ebp - 0x2a98]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2a98]
mov dword [ebp - 0x2aec], eax
mov ecx, dword [ebp - 0x2aec]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2af0], ecx
mov edx, dword [ebp - 0x2af0]
mov dword [ebp - 0x2a94], edx
lea eax, [ebp - 0x16648]
mov ecx, 1
imul edx, ecx, 0x12
movsx eax, byte [eax + edx]
neg eax
sbb eax, eax
neg eax
mov byte [ebp - 0x79], al
movzx ecx, byte [ebp - 0x79]
test ecx, ecx
jne 0x49e9bb
mov dword [ebp - 0x2af4], 0
jmp 0x49e978
mov edx, dword [ebp - 0x2af4]
add edx, 1
mov dword [ebp - 0x2af4], edx
cmp dword [ebp - 0x2af4], 0x13
jge 0x49e9bb
mov eax, dword [ebp - 0x2af4]
shl eax, 0
lea ecx, [ebp - 0x16648]
movsx ecx, byte [ecx + eax]
mov eax, dword [ebp - 0x2af4]
cdq
mov esi, 0x36
idiv esi
add edx, 0x38
xor ecx, edx
lea edx, [ebp - 0x16648]
mov eax, dword [ebp - 0x2af4]
shl eax, 0
mov byte [edx + eax], cl
jmp 0x49e969
xor ecx, ecx
mov byte [ebp - 0x7a], cl
lea ecx, [ebp - 0x7a]
call fcn.00424c60
mov dword [ebp - 0x2af8], eax
mov edx, dword [ebp - 0x2af8]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x49facd
mov ecx, dword [ebp - 0x2af8]
mov dword [ebp - 0x2afc], ecx
mov dword [ebp - 0x2b00], 0
jmp 0x49ea07
mov edx, dword [ebp - 0x2b00]
add edx, 1
mov dword [ebp - 0x2b00], edx
cmp dword [ebp - 0x2b00], 1
jae 0x49facd
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49ecdf
xor eax, eax
je 0x49ea51
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x49ea8d
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736d90]
movsd qword [ebp - 0xcc40], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49ec2d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49ec2d
mov dword [ebp - 0x2b04], 0
jmp 0x49eb0c
cmp dword [ebp - 0x2b04], 0xf
jae 0x49ec28
cvtsi2sd xmm0, dword [ebp - 0x2b04]
movsd xmm1, qword [ebp - 0xcc40]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc48], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcc48]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49eb7b
mov ecx, dword [ebp - 0x2b04]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcc40]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc40], xmm1
jmp 0x49ea77
cvtsi2sd xmm0, dword [ebp - 0x2b04]
movsd xmm1, qword [ebp - 0xcc40]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc50], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcc50]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49ebd8
mov eax, dword [ebp - 0x2b04]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcc40]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc40], xmm1
jmp 0x49ebf1
mov ecx, 1
test ecx, ecx
je 0x49ebed
jmp 0x49ecad
jmp 0x49ec14
cvtsi2sd xmm0, dword [ebp - 0x2b04]
movsd xmm1, qword [ebp - 0xcc40]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2b08], edx
jmp 0x49ecb7
xor eax, eax
je 0x49ec1e
jmp 0x49ec2d
jmp 0x49ea77
jmp 0x49ea77
mov ecx, 2
test ecx, ecx
je 0x49ecad
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2b0c], eax
cvtsi2sd xmm0, dword [ebp - 0x2b0c]
mov eax, dword [ebp - 0x2b0c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcc40]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2b08], ecx
jmp 0x49ecb7
mov dword [ebp - 0x2b08], 8
mov edx, dword [ebp - 0x2b00]
shl edx, 2
add edx, dword [ebp - 0x2afc]
mov eax, dword [ebp - 0x2b08]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2b00]
shl ecx, 2
add ecx, dword [ebp - 0x2afc]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49f7fd
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49efef
xor eax, eax
je 0x49ed61
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49ed9d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d88]
movsd qword [ebp - 0xcc58], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49ef3d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49ef3d
mov dword [ebp - 0x2b10], 0
jmp 0x49ee1c
cmp dword [ebp - 0x2b10], 0xf
jae 0x49ef38
cvtsi2sd xmm0, dword [ebp - 0x2b10]
movsd xmm1, qword [ebp - 0xcc58]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc60], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcc60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49ee8b
mov ecx, dword [ebp - 0x2b10]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcc58]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc58], xmm1
jmp 0x49ed87
cvtsi2sd xmm0, dword [ebp - 0x2b10]
movsd xmm1, qword [ebp - 0xcc58]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc68], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcc68]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49eee8
mov eax, dword [ebp - 0x2b10]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcc58]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc58], xmm1
jmp 0x49ef01
mov ecx, 1
test ecx, ecx
je 0x49eefd
jmp 0x49efbd
jmp 0x49ef24
cvtsi2sd xmm0, dword [ebp - 0x2b10]
movsd xmm1, qword [ebp - 0xcc58]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2b14], edx
jmp 0x49efc7
xor eax, eax
je 0x49ef2e
jmp 0x49ef3d
jmp 0x49ed87
jmp 0x49ed87
mov ecx, 2
test ecx, ecx
je 0x49efbd
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2b18], eax
cvtsi2sd xmm0, dword [ebp - 0x2b18]
mov eax, dword [ebp - 0x2b18]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcc58]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2b14], ecx
jmp 0x49efc7
mov dword [ebp - 0x2b14], 8
mov edx, dword [ebp - 0x2b00]
shl edx, 2
add edx, dword [ebp - 0x2afc]
mov eax, dword [ebp - 0x2b14]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2b00]
shl ecx, 2
add ecx, dword [ebp - 0x2afc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49f2ba
xor eax, eax
je 0x49f02c
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49f068
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d80]
movsd qword [ebp - 0xcc70], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49f208
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49f208
mov dword [ebp - 0x2b1c], 0
jmp 0x49f0e7
cmp dword [ebp - 0x2b1c], 0xf
jae 0x49f203
cvtsi2sd xmm0, dword [ebp - 0x2b1c]
movsd xmm1, qword [ebp - 0xcc70]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcc78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49f156
mov ecx, dword [ebp - 0x2b1c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcc70]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc70], xmm1
jmp 0x49f052
cvtsi2sd xmm0, dword [ebp - 0x2b1c]
movsd xmm1, qword [ebp - 0xcc70]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcc80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49f1b3
mov eax, dword [ebp - 0x2b1c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcc70]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc70], xmm1
jmp 0x49f1cc
mov ecx, 1
test ecx, ecx
je 0x49f1c8
jmp 0x49f288
jmp 0x49f1ef
cvtsi2sd xmm0, dword [ebp - 0x2b1c]
movsd xmm1, qword [ebp - 0xcc70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2b20], edx
jmp 0x49f292
xor eax, eax
je 0x49f1f9
jmp 0x49f208
jmp 0x49f052
jmp 0x49f052
mov ecx, 2
test ecx, ecx
je 0x49f288
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2b24], eax
cvtsi2sd xmm0, dword [ebp - 0x2b24]
mov eax, dword [ebp - 0x2b24]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcc70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2b20], ecx
jmp 0x49f292
mov dword [ebp - 0x2b20], 8
mov edx, dword [ebp - 0x2b00]
shl edx, 2
add edx, dword [ebp - 0x2afc]
mov eax, dword [ebp - 0x2b20]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2b00]
shl ecx, 2
add ecx, dword [ebp - 0x2afc]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2b00]
add edx, 0xffffffcc
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcc88], xmm0
xor eax, eax
je 0x49f2d4
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49f310
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcc88]
movsd qword [ebp - 0xcc90], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49f4b0
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49f4b0
mov dword [ebp - 0x2b28], 0
jmp 0x49f38f
cmp dword [ebp - 0x2b28], 0xf
jae 0x49f4ab
cvtsi2sd xmm0, dword [ebp - 0x2b28]
movsd xmm1, qword [ebp - 0xcc90]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcc98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49f3fe
mov ecx, dword [ebp - 0x2b28]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcc90]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc90], xmm1
jmp 0x49f2fa
cvtsi2sd xmm0, dword [ebp - 0x2b28]
movsd xmm1, qword [ebp - 0xcc90]
addsd xmm1, xmm0
movsd qword [ebp - 0xcca0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcca0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49f45b
mov eax, dword [ebp - 0x2b28]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcc90]
addsd xmm1, xmm0
movsd qword [ebp - 0xcc90], xmm1
jmp 0x49f474
mov ecx, 1
test ecx, ecx
je 0x49f470
jmp 0x49f530
jmp 0x49f497
cvtsi2sd xmm0, dword [ebp - 0x2b28]
movsd xmm1, qword [ebp - 0xcc90]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2b2c], edx
jmp 0x49f53a
xor eax, eax
je 0x49f4a1
jmp 0x49f4b0
jmp 0x49f2fa
jmp 0x49f2fa
mov ecx, 2
test ecx, ecx
je 0x49f530
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2b30], eax
cvtsi2sd xmm0, dword [ebp - 0x2b30]
mov eax, dword [ebp - 0x2b30]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcc90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2b2c], ecx
jmp 0x49f53a
mov dword [ebp - 0x2b2c], 8
mov edx, dword [ebp - 0x2b00]
add edx, 0xffffffcc
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcca8], xmm0
xor eax, eax
je 0x49f554
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x49f590
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcca8]
movsd qword [ebp - 0xccb0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49f730
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49f730
mov dword [ebp - 0x2b34], 0
jmp 0x49f60f
cmp dword [ebp - 0x2b34], 0xf
jae 0x49f72b
cvtsi2sd xmm0, dword [ebp - 0x2b34]
movsd xmm1, qword [ebp - 0xccb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xccb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xccb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49f67e
mov ecx, dword [ebp - 0x2b34]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xccb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xccb0], xmm1
jmp 0x49f57a
cvtsi2sd xmm0, dword [ebp - 0x2b34]
movsd xmm1, qword [ebp - 0xccb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xccc0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xccc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49f6db
mov eax, dword [ebp - 0x2b34]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xccb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xccb0], xmm1
jmp 0x49f6f4
mov ecx, 1
test ecx, ecx
je 0x49f6f0
jmp 0x49f7b0
jmp 0x49f717
cvtsi2sd xmm0, dword [ebp - 0x2b34]
movsd xmm1, qword [ebp - 0xccb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2b38], edx
jmp 0x49f7ba
xor eax, eax
je 0x49f721
jmp 0x49f730
jmp 0x49f57a
jmp 0x49f57a
mov ecx, 2
test ecx, ecx
je 0x49f7b0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2b3c], eax
cvtsi2sd xmm0, dword [ebp - 0x2b3c]
mov eax, dword [ebp - 0x2b3c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xccb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2b38], ecx
jmp 0x49f7ba
mov dword [ebp - 0x2b38], 8
mov edx, dword [ebp - 0x2b00]
shl edx, 2
add edx, dword [ebp - 0x2afc]
mov eax, dword [ebp - 0x2b2c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2b00]
shl ecx, 2
add ecx, dword [ebp - 0x2afc]
mov edx, dword [ebp - 0x2b38]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2b00]
shl ecx, 2
add ecx, dword [ebp - 0x2afc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49fac8
xor eax, eax
je 0x49f83a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49f876
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d78]
movsd qword [ebp - 0xccc8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49fa16
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49fa16
mov dword [ebp - 0x2b40], 0
jmp 0x49f8f5
cmp dword [ebp - 0x2b40], 0xf
jae 0x49fa11
cvtsi2sd xmm0, dword [ebp - 0x2b40]
movsd xmm1, qword [ebp - 0xccc8]
addsd xmm1, xmm0
movsd qword [ebp - 0xccd0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xccd0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49f964
mov ecx, dword [ebp - 0x2b40]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xccc8]
addsd xmm1, xmm0
movsd qword [ebp - 0xccc8], xmm1
jmp 0x49f860
cvtsi2sd xmm0, dword [ebp - 0x2b40]
movsd xmm1, qword [ebp - 0xccc8]
addsd xmm1, xmm0
movsd qword [ebp - 0xccd8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xccd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49f9c1
mov eax, dword [ebp - 0x2b40]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xccc8]
addsd xmm1, xmm0
movsd qword [ebp - 0xccc8], xmm1
jmp 0x49f9da
mov ecx, 1
test ecx, ecx
je 0x49f9d6
jmp 0x49fa96
jmp 0x49f9fd
cvtsi2sd xmm0, dword [ebp - 0x2b40]
movsd xmm1, qword [ebp - 0xccc8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2b44], edx
jmp 0x49faa0
xor eax, eax
je 0x49fa07
jmp 0x49fa16
jmp 0x49f860
jmp 0x49f860
mov ecx, 2
test ecx, ecx
je 0x49fa96
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2b48], eax
cvtsi2sd xmm0, dword [ebp - 0x2b48]
mov eax, dword [ebp - 0x2b48]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xccc8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2b44], ecx
jmp 0x49faa0
mov dword [ebp - 0x2b44], 8
mov edx, dword [ebp - 0x2b00]
shl edx, 2
add edx, dword [ebp - 0x2afc]
mov eax, dword [ebp - 0x2b44]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2b00]
shl ecx, 2
add ecx, dword [ebp - 0x2afc]
mov dword [ecx], eax
jmp 0x49e9f8
mov edx, dword [ebp - 0x2af8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2af8]
mov dword [ebp - 0x2b4c], eax
mov ecx, dword [ebp - 0x2b4c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2b50], ecx
mov edx, dword [ebp - 0x2b50]
mov dword [ebp - 0x2b54], edx
xor eax, eax
mov byte [ebp - 0x7b], al
lea ecx, [ebp - 0x7b]
call fcn.00424c30
mov dword [ebp - 0x2b58], eax
mov ecx, dword [ebp - 0x2b58]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4a0c18
mov eax, dword [ebp - 0x2b58]
mov dword [ebp - 0x2b5c], eax
mov dword [ebp - 0x2b60], 0
jmp 0x49fb52
mov ecx, dword [ebp - 0x2b60]
add ecx, 1
mov dword [ebp - 0x2b60], ecx
cmp dword [ebp - 0x2b60], 1
jae 0x4a0c18
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x49fe2a
xor eax, eax
je 0x49fb9c
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49fbd8
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d90]
movsd qword [ebp - 0xcce0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x49fd78
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x49fd78
mov dword [ebp - 0x2b64], 0
jmp 0x49fc57
cmp dword [ebp - 0x2b64], 0xf
jae 0x49fd73
cvtsi2sd xmm0, dword [ebp - 0x2b64]
movsd xmm1, qword [ebp - 0xcce0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcce8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcce8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49fcc6
mov ecx, dword [ebp - 0x2b64]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcce0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcce0], xmm1
jmp 0x49fbc2
cvtsi2sd xmm0, dword [ebp - 0x2b64]
movsd xmm1, qword [ebp - 0xcce0]
addsd xmm1, xmm0
movsd qword [ebp - 0xccf0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xccf0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49fd23
mov eax, dword [ebp - 0x2b64]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcce0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcce0], xmm1
jmp 0x49fd3c
mov ecx, 1
test ecx, ecx
je 0x49fd38
jmp 0x49fdf8
jmp 0x49fd5f
cvtsi2sd xmm0, dword [ebp - 0x2b64]
movsd xmm1, qword [ebp - 0xcce0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2b68], edx
jmp 0x49fe02
xor eax, eax
je 0x49fd69
jmp 0x49fd78
jmp 0x49fbc2
jmp 0x49fbc2
mov ecx, 2
test ecx, ecx
je 0x49fdf8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2b6c], eax
cvtsi2sd xmm0, dword [ebp - 0x2b6c]
mov eax, dword [ebp - 0x2b6c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcce0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2b68], ecx
jmp 0x49fe02
mov dword [ebp - 0x2b68], 8
mov edx, dword [ebp - 0x2b60]
shl edx, 2
add edx, dword [ebp - 0x2b5c]
mov eax, dword [ebp - 0x2b68]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2b60]
shl ecx, 2
add ecx, dword [ebp - 0x2b5c]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a0948
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a013a
xor eax, eax
je 0x49feac
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x49fee8
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d88]
movsd qword [ebp - 0xccf8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a0088
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a0088
mov dword [ebp - 0x2b70], 0
jmp 0x49ff67
cmp dword [ebp - 0x2b70], 0xf
jae 0x4a0083
cvtsi2sd xmm0, dword [ebp - 0x2b70]
movsd xmm1, qword [ebp - 0xccf8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd00], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcd00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x49ffd6
mov ecx, dword [ebp - 0x2b70]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xccf8]
addsd xmm1, xmm0
movsd qword [ebp - 0xccf8], xmm1
jmp 0x49fed2
cvtsi2sd xmm0, dword [ebp - 0x2b70]
movsd xmm1, qword [ebp - 0xccf8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd08], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcd08]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a0033
mov eax, dword [ebp - 0x2b70]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xccf8]
addsd xmm1, xmm0
movsd qword [ebp - 0xccf8], xmm1
jmp 0x4a004c
mov ecx, 1
test ecx, ecx
je 0x4a0048
jmp 0x4a0108
jmp 0x4a006f
cvtsi2sd xmm0, dword [ebp - 0x2b70]
movsd xmm1, qword [ebp - 0xccf8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2b74], edx
jmp 0x4a0112
xor eax, eax
je 0x4a0079
jmp 0x4a0088
jmp 0x49fed2
jmp 0x49fed2
mov ecx, 2
test ecx, ecx
je 0x4a0108
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2b78], eax
cvtsi2sd xmm0, dword [ebp - 0x2b78]
mov eax, dword [ebp - 0x2b78]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xccf8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2b74], ecx
jmp 0x4a0112
mov dword [ebp - 0x2b74], 8
mov edx, dword [ebp - 0x2b60]
shl edx, 2
add edx, dword [ebp - 0x2b5c]
mov eax, dword [ebp - 0x2b74]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2b60]
shl ecx, 2
add ecx, dword [ebp - 0x2b5c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a0405
xor eax, eax
je 0x4a0177
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a01b3
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d80]
movsd qword [ebp - 0xcd10], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a0353
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a0353
mov dword [ebp - 0x2b7c], 0
jmp 0x4a0232
cmp dword [ebp - 0x2b7c], 0xf
jae 0x4a034e
cvtsi2sd xmm0, dword [ebp - 0x2b7c]
movsd xmm1, qword [ebp - 0xcd10]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcd18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a02a1
mov ecx, dword [ebp - 0x2b7c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcd10]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd10], xmm1
jmp 0x4a019d
cvtsi2sd xmm0, dword [ebp - 0x2b7c]
movsd xmm1, qword [ebp - 0xcd10]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcd20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a02fe
mov eax, dword [ebp - 0x2b7c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcd10]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd10], xmm1
jmp 0x4a0317
mov ecx, 1
test ecx, ecx
je 0x4a0313
jmp 0x4a03d3
jmp 0x4a033a
cvtsi2sd xmm0, dword [ebp - 0x2b7c]
movsd xmm1, qword [ebp - 0xcd10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2b80], edx
jmp 0x4a03dd
xor eax, eax
je 0x4a0344
jmp 0x4a0353
jmp 0x4a019d
jmp 0x4a019d
mov ecx, 2
test ecx, ecx
je 0x4a03d3
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2b84], eax
cvtsi2sd xmm0, dword [ebp - 0x2b84]
mov eax, dword [ebp - 0x2b84]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcd10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2b80], ecx
jmp 0x4a03dd
mov dword [ebp - 0x2b80], 8
mov edx, dword [ebp - 0x2b60]
shl edx, 2
add edx, dword [ebp - 0x2b5c]
mov eax, dword [ebp - 0x2b80]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2b60]
shl ecx, 2
add ecx, dword [ebp - 0x2b5c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2b60]
add edx, 0xffffffcc
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcd28], xmm0
xor eax, eax
je 0x4a041f
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a045b
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcd28]
movsd qword [ebp - 0xcd30], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a05fb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a05fb
mov dword [ebp - 0x2b88], 0
jmp 0x4a04da
cmp dword [ebp - 0x2b88], 0xf
jae 0x4a05f6
cvtsi2sd xmm0, dword [ebp - 0x2b88]
movsd xmm1, qword [ebp - 0xcd30]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcd38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a0549
mov ecx, dword [ebp - 0x2b88]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcd30]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd30], xmm1
jmp 0x4a0445
cvtsi2sd xmm0, dword [ebp - 0x2b88]
movsd xmm1, qword [ebp - 0xcd30]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd40], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcd40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a05a6
mov eax, dword [ebp - 0x2b88]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcd30]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd30], xmm1
jmp 0x4a05bf
mov ecx, 1
test ecx, ecx
je 0x4a05bb
jmp 0x4a067b
jmp 0x4a05e2
cvtsi2sd xmm0, dword [ebp - 0x2b88]
movsd xmm1, qword [ebp - 0xcd30]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2b8c], edx
jmp 0x4a0685
xor eax, eax
je 0x4a05ec
jmp 0x4a05fb
jmp 0x4a0445
jmp 0x4a0445
mov ecx, 2
test ecx, ecx
je 0x4a067b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2b90], eax
cvtsi2sd xmm0, dword [ebp - 0x2b90]
mov eax, dword [ebp - 0x2b90]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcd30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2b8c], ecx
jmp 0x4a0685
mov dword [ebp - 0x2b8c], 8
mov edx, dword [ebp - 0x2b60]
add edx, 0xffffffcc
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcd48], xmm0
xor eax, eax
je 0x4a069f
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a06db
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcd48]
movsd qword [ebp - 0xcd50], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a087b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a087b
mov dword [ebp - 0x2b94], 0
jmp 0x4a075a
cmp dword [ebp - 0x2b94], 0xf
jae 0x4a0876
cvtsi2sd xmm0, dword [ebp - 0x2b94]
movsd xmm1, qword [ebp - 0xcd50]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcd58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a07c9
mov ecx, dword [ebp - 0x2b94]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcd50]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd50], xmm1
jmp 0x4a06c5
cvtsi2sd xmm0, dword [ebp - 0x2b94]
movsd xmm1, qword [ebp - 0xcd50]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcd60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a0826
mov eax, dword [ebp - 0x2b94]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcd50]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd50], xmm1
jmp 0x4a083f
mov ecx, 1
test ecx, ecx
je 0x4a083b
jmp 0x4a08fb
jmp 0x4a0862
cvtsi2sd xmm0, dword [ebp - 0x2b94]
movsd xmm1, qword [ebp - 0xcd50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2b98], edx
jmp 0x4a0905
xor eax, eax
je 0x4a086c
jmp 0x4a087b
jmp 0x4a06c5
jmp 0x4a06c5
mov ecx, 2
test ecx, ecx
je 0x4a08fb
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2b9c], eax
cvtsi2sd xmm0, dword [ebp - 0x2b9c]
mov eax, dword [ebp - 0x2b9c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcd50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2b98], ecx
jmp 0x4a0905
mov dword [ebp - 0x2b98], 8
mov edx, dword [ebp - 0x2b60]
shl edx, 2
add edx, dword [ebp - 0x2b5c]
mov eax, dword [ebp - 0x2b8c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2b60]
shl ecx, 2
add ecx, dword [ebp - 0x2b5c]
mov edx, dword [ebp - 0x2b98]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2b60]
shl ecx, 2
add ecx, dword [ebp - 0x2b5c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a0c13
xor eax, eax
je 0x4a0985
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a09c1
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d78]
movsd qword [ebp - 0xcd68], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a0b61
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a0b61
mov dword [ebp - 0x2ba0], 0
jmp 0x4a0a40
cmp dword [ebp - 0x2ba0], 0xf
jae 0x4a0b5c
cvtsi2sd xmm0, dword [ebp - 0x2ba0]
movsd xmm1, qword [ebp - 0xcd68]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd70], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcd70]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a0aaf
mov ecx, dword [ebp - 0x2ba0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcd68]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd68], xmm1
jmp 0x4a09ab
cvtsi2sd xmm0, dword [ebp - 0x2ba0]
movsd xmm1, qword [ebp - 0xcd68]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd78], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcd78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a0b0c
mov eax, dword [ebp - 0x2ba0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcd68]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd68], xmm1
jmp 0x4a0b25
mov ecx, 1
test ecx, ecx
je 0x4a0b21
jmp 0x4a0be1
jmp 0x4a0b48
cvtsi2sd xmm0, dword [ebp - 0x2ba0]
movsd xmm1, qword [ebp - 0xcd68]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2ba4], edx
jmp 0x4a0beb
xor eax, eax
je 0x4a0b52
jmp 0x4a0b61
jmp 0x4a09ab
jmp 0x4a09ab
mov ecx, 2
test ecx, ecx
je 0x4a0be1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2ba8], eax
cvtsi2sd xmm0, dword [ebp - 0x2ba8]
mov eax, dword [ebp - 0x2ba8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcd68]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2ba4], ecx
jmp 0x4a0beb
mov dword [ebp - 0x2ba4], 8
mov edx, dword [ebp - 0x2b60]
shl edx, 2
add edx, dword [ebp - 0x2b5c]
mov eax, dword [ebp - 0x2ba4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2b60]
shl ecx, 2
add ecx, dword [ebp - 0x2b5c]
mov dword [ecx], eax
jmp 0x49fb43
mov edx, dword [ebp - 0x2b58]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2b58]
mov dword [ebp - 0x2bac], eax
mov ecx, dword [ebp - 0x2bac]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2bb0], ecx
mov edx, dword [ebp - 0x2bb0]
mov dword [ebp - 0x2bb4], edx
xor eax, eax
mov byte [ebp - 0x7c], al
lea ecx, [ebp - 0x7c]
call fcn.00424c00
mov dword [ebp - 0x2bb8], eax
mov ecx, dword [ebp - 0x2bb8]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4a1d63
mov eax, dword [ebp - 0x2bb8]
mov dword [ebp - 0x2bbc], eax
mov dword [ebp - 0x2bc0], 0
jmp 0x4a0c9d
mov ecx, dword [ebp - 0x2bc0]
add ecx, 1
mov dword [ebp - 0x2bc0], ecx
cmp dword [ebp - 0x2bc0], 1
jae 0x4a1d63
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a0f75
xor eax, eax
je 0x4a0ce7
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a0d23
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d88]
movsd qword [ebp - 0xcd80], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a0ec3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a0ec3
mov dword [ebp - 0x2bc4], 0
jmp 0x4a0da2
cmp dword [ebp - 0x2bc4], 0xf
jae 0x4a0ebe
cvtsi2sd xmm0, dword [ebp - 0x2bc4]
movsd xmm1, qword [ebp - 0xcd80]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd88], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcd88]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a0e11
mov ecx, dword [ebp - 0x2bc4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcd80]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd80], xmm1
jmp 0x4a0d0d
cvtsi2sd xmm0, dword [ebp - 0x2bc4]
movsd xmm1, qword [ebp - 0xcd80]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd90], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcd90]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a0e6e
mov eax, dword [ebp - 0x2bc4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcd80]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd80], xmm1
jmp 0x4a0e87
mov ecx, 1
test ecx, ecx
je 0x4a0e83
jmp 0x4a0f43
jmp 0x4a0eaa
cvtsi2sd xmm0, dword [ebp - 0x2bc4]
movsd xmm1, qword [ebp - 0xcd80]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2bc8], edx
jmp 0x4a0f4d
xor eax, eax
je 0x4a0eb4
jmp 0x4a0ec3
jmp 0x4a0d0d
jmp 0x4a0d0d
mov ecx, 2
test ecx, ecx
je 0x4a0f43
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2bcc], eax
cvtsi2sd xmm0, dword [ebp - 0x2bcc]
mov eax, dword [ebp - 0x2bcc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcd80]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2bc8], ecx
jmp 0x4a0f4d
mov dword [ebp - 0x2bc8], 8
mov edx, dword [ebp - 0x2bc0]
shl edx, 2
add edx, dword [ebp - 0x2bbc]
mov eax, dword [ebp - 0x2bc8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2bc0]
shl ecx, 2
add ecx, dword [ebp - 0x2bbc]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a1a93
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a1285
xor eax, eax
je 0x4a0ff7
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a1033
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d80]
movsd qword [ebp - 0xcd98], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a11d3
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a11d3
mov dword [ebp - 0x2bd0], 0
jmp 0x4a10b2
cmp dword [ebp - 0x2bd0], 0xf
jae 0x4a11ce
cvtsi2sd xmm0, dword [ebp - 0x2bd0]
movsd xmm1, qword [ebp - 0xcd98]
addsd xmm1, xmm0
movsd qword [ebp - 0xcda0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcda0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a1121
mov ecx, dword [ebp - 0x2bd0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcd98]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd98], xmm1
jmp 0x4a101d
cvtsi2sd xmm0, dword [ebp - 0x2bd0]
movsd xmm1, qword [ebp - 0xcd98]
addsd xmm1, xmm0
movsd qword [ebp - 0xcda8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcda8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a117e
mov eax, dword [ebp - 0x2bd0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcd98]
addsd xmm1, xmm0
movsd qword [ebp - 0xcd98], xmm1
jmp 0x4a1197
mov ecx, 1
test ecx, ecx
je 0x4a1193
jmp 0x4a1253
jmp 0x4a11ba
cvtsi2sd xmm0, dword [ebp - 0x2bd0]
movsd xmm1, qword [ebp - 0xcd98]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2bd4], edx
jmp 0x4a125d
xor eax, eax
je 0x4a11c4
jmp 0x4a11d3
jmp 0x4a101d
jmp 0x4a101d
mov ecx, 2
test ecx, ecx
je 0x4a1253
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2bd8], eax
cvtsi2sd xmm0, dword [ebp - 0x2bd8]
mov eax, dword [ebp - 0x2bd8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcd98]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2bd4], ecx
jmp 0x4a125d
mov dword [ebp - 0x2bd4], 8
mov edx, dword [ebp - 0x2bc0]
shl edx, 2
add edx, dword [ebp - 0x2bbc]
mov eax, dword [ebp - 0x2bd4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2bc0]
shl ecx, 2
add ecx, dword [ebp - 0x2bbc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a1550
xor eax, eax
je 0x4a12c2
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a12fe
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d78]
movsd qword [ebp - 0xcdb0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a149e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a149e
mov dword [ebp - 0x2bdc], 0
jmp 0x4a137d
cmp dword [ebp - 0x2bdc], 0xf
jae 0x4a1499
cvtsi2sd xmm0, dword [ebp - 0x2bdc]
movsd xmm1, qword [ebp - 0xcdb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcdb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcdb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a13ec
mov ecx, dword [ebp - 0x2bdc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcdb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcdb0], xmm1
jmp 0x4a12e8
cvtsi2sd xmm0, dword [ebp - 0x2bdc]
movsd xmm1, qword [ebp - 0xcdb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcdc0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcdc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a1449
mov eax, dword [ebp - 0x2bdc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcdb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcdb0], xmm1
jmp 0x4a1462
mov ecx, 1
test ecx, ecx
je 0x4a145e
jmp 0x4a151e
jmp 0x4a1485
cvtsi2sd xmm0, dword [ebp - 0x2bdc]
movsd xmm1, qword [ebp - 0xcdb0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2be0], edx
jmp 0x4a1528
xor eax, eax
je 0x4a148f
jmp 0x4a149e
jmp 0x4a12e8
jmp 0x4a12e8
mov ecx, 2
test ecx, ecx
je 0x4a151e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2be4], eax
cvtsi2sd xmm0, dword [ebp - 0x2be4]
mov eax, dword [ebp - 0x2be4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcdb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2be0], ecx
jmp 0x4a1528
mov dword [ebp - 0x2be0], 8
mov edx, dword [ebp - 0x2bc0]
shl edx, 2
add edx, dword [ebp - 0x2bbc]
mov eax, dword [ebp - 0x2be0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2bc0]
shl ecx, 2
add ecx, dword [ebp - 0x2bbc]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2bc0]
add edx, 0xffffffcd
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcdc8], xmm0
xor eax, eax
je 0x4a156a
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a15a6
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcdc8]
movsd qword [ebp - 0xcdd0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a1746
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a1746
mov dword [ebp - 0x2be8], 0
jmp 0x4a1625
cmp dword [ebp - 0x2be8], 0xf
jae 0x4a1741
cvtsi2sd xmm0, dword [ebp - 0x2be8]
movsd xmm1, qword [ebp - 0xcdd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcdd8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcdd8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a1694
mov ecx, dword [ebp - 0x2be8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcdd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcdd0], xmm1
jmp 0x4a1590
cvtsi2sd xmm0, dword [ebp - 0x2be8]
movsd xmm1, qword [ebp - 0xcdd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcde0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcde0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a16f1
mov eax, dword [ebp - 0x2be8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcdd0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcdd0], xmm1
jmp 0x4a170a
mov ecx, 1
test ecx, ecx
je 0x4a1706
jmp 0x4a17c6
jmp 0x4a172d
cvtsi2sd xmm0, dword [ebp - 0x2be8]
movsd xmm1, qword [ebp - 0xcdd0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2bec], edx
jmp 0x4a17d0
xor eax, eax
je 0x4a1737
jmp 0x4a1746
jmp 0x4a1590
jmp 0x4a1590
mov ecx, 2
test ecx, ecx
je 0x4a17c6
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2bf0], eax
cvtsi2sd xmm0, dword [ebp - 0x2bf0]
mov eax, dword [ebp - 0x2bf0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcdd0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2bec], ecx
jmp 0x4a17d0
mov dword [ebp - 0x2bec], 8
mov edx, dword [ebp - 0x2bc0]
add edx, 0xffffffcd
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcde8], xmm0
xor eax, eax
je 0x4a17ea
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a1826
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcde8]
movsd qword [ebp - 0xcdf0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a19c6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a19c6
mov dword [ebp - 0x2bf4], 0
jmp 0x4a18a5
cmp dword [ebp - 0x2bf4], 0xf
jae 0x4a19c1
cvtsi2sd xmm0, dword [ebp - 0x2bf4]
movsd xmm1, qword [ebp - 0xcdf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcdf8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcdf8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a1914
mov ecx, dword [ebp - 0x2bf4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcdf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcdf0], xmm1
jmp 0x4a1810
cvtsi2sd xmm0, dword [ebp - 0x2bf4]
movsd xmm1, qword [ebp - 0xcdf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xce00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xce00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a1971
mov eax, dword [ebp - 0x2bf4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcdf0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcdf0], xmm1
jmp 0x4a198a
mov ecx, 1
test ecx, ecx
je 0x4a1986
jmp 0x4a1a46
jmp 0x4a19ad
cvtsi2sd xmm0, dword [ebp - 0x2bf4]
movsd xmm1, qword [ebp - 0xcdf0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2bf8], edx
jmp 0x4a1a50
xor eax, eax
je 0x4a19b7
jmp 0x4a1810
mov ecx, 2
test ecx, ecx
je 0x4a1a46
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2bfc], eax
cvtsi2sd xmm0, dword [ebp - 0x2bfc]
mov eax, dword [ebp - 0x2bfc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcdf0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2bf8], ecx
jmp 0x4a1a50
mov dword [ebp - 0x2bf8], 8
mov edx, dword [ebp - 0x2bc0]
shl edx, 2
add edx, dword [ebp - 0x2bbc]
mov eax, dword [ebp - 0x2bec]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2bc0]
shl ecx, 2
add ecx, dword [ebp - 0x2bbc]
mov edx, dword [ebp - 0x2bf8]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2bc0]
shl ecx, 2
add ecx, dword [ebp - 0x2bbc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a1d5e
xor eax, eax
je 0x4a1ad0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a1b0c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d70]
movsd qword [ebp - 0xce08], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a1cac
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a1cac
mov dword [ebp - 0x2c00], 0
jmp 0x4a1b8b
cmp dword [ebp - 0x2c00], 0xf
jae 0x4a1ca7
cvtsi2sd xmm0, dword [ebp - 0x2c00]
movsd xmm1, qword [ebp - 0xce08]
addsd xmm1, xmm0
movsd qword [ebp - 0xce10], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xce10]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a1bfa
mov ecx, dword [ebp - 0x2c00]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xce08]
addsd xmm1, xmm0
movsd qword [ebp - 0xce08], xmm1
jmp 0x4a1af6
cvtsi2sd xmm0, dword [ebp - 0x2c00]
movsd xmm1, qword [ebp - 0xce08]
addsd xmm1, xmm0
movsd qword [ebp - 0xce18], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xce18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a1c57
mov eax, dword [ebp - 0x2c00]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xce08]
addsd xmm1, xmm0
movsd qword [ebp - 0xce08], xmm1
jmp 0x4a1c70
mov ecx, 1
test ecx, ecx
je 0x4a1c6c
jmp 0x4a1d2c
jmp 0x4a1c93
cvtsi2sd xmm0, dword [ebp - 0x2c00]
movsd xmm1, qword [ebp - 0xce08]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2c04], edx
jmp 0x4a1d36
xor eax, eax
je 0x4a1c9d
jmp 0x4a1cac
jmp 0x4a1af6
jmp 0x4a1af6
mov ecx, 2
test ecx, ecx
je 0x4a1d2c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2c08], eax
cvtsi2sd xmm0, dword [ebp - 0x2c08]
mov eax, dword [ebp - 0x2c08]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xce08]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2c04], ecx
jmp 0x4a1d36
mov dword [ebp - 0x2c04], 8
mov edx, dword [ebp - 0x2bc0]
shl edx, 2
add edx, dword [ebp - 0x2bbc]
mov eax, dword [ebp - 0x2c04]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2bc0]
shl ecx, 2
add ecx, dword [ebp - 0x2bbc]
mov dword [ecx], eax
jmp 0x4a0c8e
mov edx, dword [ebp - 0x2bb8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2bb8]
mov dword [ebp - 0x2c0c], eax
mov ecx, dword [ebp - 0x2c0c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2c10], ecx
mov edx, dword [ebp - 0x2c10]
mov dword [ebp - 0x2c14], edx
mov eax, dword [ebp - 0x2bb4]
mov dword [ebp - 0x2b54], eax
cmp dword [ebp - 0x2b54], 0
je 0x4a2f00
xor ecx, ecx
mov byte [ebp - 0x7d], cl
lea ecx, [ebp - 0x7d]
call fcn.00424bd0
mov dword [ebp - 0x2c18], eax
mov edx, dword [ebp - 0x2c18]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x4a2ec7
mov ecx, dword [ebp - 0x2c18]
mov dword [ebp - 0x2c1c], ecx
mov dword [ebp - 0x2c20], 0
jmp 0x4a1e01
mov edx, dword [ebp - 0x2c20]
add edx, 1
mov dword [ebp - 0x2c20], edx
cmp dword [ebp - 0x2c20], 1
jae 0x4a2ec7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a20d9
xor eax, eax
je 0x4a1e4b
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x4a1e87
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736d88]
movsd qword [ebp - 0xce20], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a2027
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a2027
mov dword [ebp - 0x2c24], 0
jmp 0x4a1f06
cmp dword [ebp - 0x2c24], 0xf
jae 0x4a2022
cvtsi2sd xmm0, dword [ebp - 0x2c24]
movsd xmm1, qword [ebp - 0xce20]
addsd xmm1, xmm0
movsd qword [ebp - 0xce28], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xce28]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a1f75
mov ecx, dword [ebp - 0x2c24]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xce20]
addsd xmm1, xmm0
movsd qword [ebp - 0xce20], xmm1
jmp 0x4a1e71
cvtsi2sd xmm0, dword [ebp - 0x2c24]
movsd xmm1, qword [ebp - 0xce20]
addsd xmm1, xmm0
movsd qword [ebp - 0xce30], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xce30]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a1fd2
mov eax, dword [ebp - 0x2c24]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xce20]
addsd xmm1, xmm0
movsd qword [ebp - 0xce20], xmm1
jmp 0x4a1feb
mov ecx, 1
test ecx, ecx
je 0x4a1fe7
jmp 0x4a20a7
jmp 0x4a200e
cvtsi2sd xmm0, dword [ebp - 0x2c24]
movsd xmm1, qword [ebp - 0xce20]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2c28], edx
jmp 0x4a20b1
xor eax, eax
je 0x4a2018
jmp 0x4a2027
jmp 0x4a1e71
jmp 0x4a1e71
mov ecx, 2
test ecx, ecx
je 0x4a20a7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2c2c], eax
cvtsi2sd xmm0, dword [ebp - 0x2c2c]
mov eax, dword [ebp - 0x2c2c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xce20]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2c28], ecx
jmp 0x4a20b1
mov dword [ebp - 0x2c28], 8
mov edx, dword [ebp - 0x2c20]
shl edx, 2
add edx, dword [ebp - 0x2c1c]
mov eax, dword [ebp - 0x2c28]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2c20]
shl ecx, 2
add ecx, dword [ebp - 0x2c1c]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a2bf7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a23e9
xor eax, eax
je 0x4a215b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a2197
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d80]
movsd qword [ebp - 0xce38], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a2337
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a2337
mov dword [ebp - 0x2c30], 0
jmp 0x4a2216
cmp dword [ebp - 0x2c30], 0xf
jae 0x4a2332
cvtsi2sd xmm0, dword [ebp - 0x2c30]
movsd xmm1, qword [ebp - 0xce38]
addsd xmm1, xmm0
movsd qword [ebp - 0xce40], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xce40]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a2285
mov ecx, dword [ebp - 0x2c30]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xce38]
addsd xmm1, xmm0
movsd qword [ebp - 0xce38], xmm1
jmp 0x4a2181
cvtsi2sd xmm0, dword [ebp - 0x2c30]
movsd xmm1, qword [ebp - 0xce38]
addsd xmm1, xmm0
movsd qword [ebp - 0xce48], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xce48]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a22e2
mov eax, dword [ebp - 0x2c30]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xce38]
addsd xmm1, xmm0
movsd qword [ebp - 0xce38], xmm1
jmp 0x4a22fb
mov ecx, 1
test ecx, ecx
je 0x4a22f7
jmp 0x4a23b7
jmp 0x4a231e
cvtsi2sd xmm0, dword [ebp - 0x2c30]
movsd xmm1, qword [ebp - 0xce38]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2c34], edx
jmp 0x4a23c1
xor eax, eax
je 0x4a2328
jmp 0x4a2337
jmp 0x4a2181
jmp 0x4a2181
mov ecx, 2
test ecx, ecx
je 0x4a23b7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2c38], eax
cvtsi2sd xmm0, dword [ebp - 0x2c38]
mov eax, dword [ebp - 0x2c38]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xce38]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2c34], ecx
jmp 0x4a23c1
mov dword [ebp - 0x2c34], 8
mov edx, dword [ebp - 0x2c20]
shl edx, 2
add edx, dword [ebp - 0x2c1c]
mov eax, dword [ebp - 0x2c34]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2c20]
shl ecx, 2
add ecx, dword [ebp - 0x2c1c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a26b4
xor eax, eax
je 0x4a2426
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a2462
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d78]
movsd qword [ebp - 0xce50], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a2602
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a2602
mov dword [ebp - 0x2c3c], 0
jmp 0x4a24e1
cmp dword [ebp - 0x2c3c], 0xf
jae 0x4a25fd
cvtsi2sd xmm0, dword [ebp - 0x2c3c]
movsd xmm1, qword [ebp - 0xce50]
addsd xmm1, xmm0
movsd qword [ebp - 0xce58], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xce58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a2550
mov ecx, dword [ebp - 0x2c3c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xce50]
addsd xmm1, xmm0
movsd qword [ebp - 0xce50], xmm1
jmp 0x4a244c
cvtsi2sd xmm0, dword [ebp - 0x2c3c]
movsd xmm1, qword [ebp - 0xce50]
addsd xmm1, xmm0
movsd qword [ebp - 0xce60], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xce60]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a25ad
mov eax, dword [ebp - 0x2c3c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xce50]
addsd xmm1, xmm0
movsd qword [ebp - 0xce50], xmm1
jmp 0x4a25c6
mov ecx, 1
test ecx, ecx
je 0x4a25c2
jmp 0x4a2682
jmp 0x4a25e9
cvtsi2sd xmm0, dword [ebp - 0x2c3c]
movsd xmm1, qword [ebp - 0xce50]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2c40], edx
jmp 0x4a268c
xor eax, eax
je 0x4a25f3
jmp 0x4a2602
jmp 0x4a244c
jmp 0x4a244c
mov ecx, 2
test ecx, ecx
je 0x4a2682
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2c44], eax
cvtsi2sd xmm0, dword [ebp - 0x2c44]
mov eax, dword [ebp - 0x2c44]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xce50]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2c40], ecx
jmp 0x4a268c
mov dword [ebp - 0x2c40], 8
mov edx, dword [ebp - 0x2c20]
shl edx, 2
add edx, dword [ebp - 0x2c1c]
mov eax, dword [ebp - 0x2c40]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2c20]
shl ecx, 2
add ecx, dword [ebp - 0x2c1c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2c20]
add edx, 0xffffffcd
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xce68], xmm0
xor eax, eax
je 0x4a26ce
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a270a
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xce68]
movsd qword [ebp - 0xce70], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a28aa
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a28aa
mov dword [ebp - 0x2c48], 0
jmp 0x4a2789
cmp dword [ebp - 0x2c48], 0xf
jae 0x4a28a5
cvtsi2sd xmm0, dword [ebp - 0x2c48]
movsd xmm1, qword [ebp - 0xce70]
addsd xmm1, xmm0
movsd qword [ebp - 0xce78], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xce78]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a27f8
mov ecx, dword [ebp - 0x2c48]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xce70]
addsd xmm1, xmm0
movsd qword [ebp - 0xce70], xmm1
jmp 0x4a26f4
cvtsi2sd xmm0, dword [ebp - 0x2c48]
movsd xmm1, qword [ebp - 0xce70]
addsd xmm1, xmm0
movsd qword [ebp - 0xce80], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xce80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a2855
mov eax, dword [ebp - 0x2c48]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xce70]
addsd xmm1, xmm0
movsd qword [ebp - 0xce70], xmm1
jmp 0x4a286e
mov ecx, 1
test ecx, ecx
je 0x4a286a
jmp 0x4a292a
jmp 0x4a2891
cvtsi2sd xmm0, dword [ebp - 0x2c48]
movsd xmm1, qword [ebp - 0xce70]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2c4c], edx
jmp 0x4a2934
xor eax, eax
je 0x4a289b
jmp 0x4a28aa
jmp 0x4a26f4
jmp 0x4a26f4
mov ecx, 2
test ecx, ecx
je 0x4a292a
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2c50], eax
cvtsi2sd xmm0, dword [ebp - 0x2c50]
mov eax, dword [ebp - 0x2c50]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xce70]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2c4c], ecx
jmp 0x4a2934
mov dword [ebp - 0x2c4c], 8
mov edx, dword [ebp - 0x2c20]
add edx, 0xffffffcd
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xce88], xmm0
xor eax, eax
je 0x4a294e
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a298a
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xce88]
movsd qword [ebp - 0xce90], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a2b2a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a2b2a
mov dword [ebp - 0x2c54], 0
jmp 0x4a2a09
cmp dword [ebp - 0x2c54], 0xf
jae 0x4a2b25
cvtsi2sd xmm0, dword [ebp - 0x2c54]
movsd xmm1, qword [ebp - 0xce90]
addsd xmm1, xmm0
movsd qword [ebp - 0xce98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xce98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a2a78
mov ecx, dword [ebp - 0x2c54]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xce90]
addsd xmm1, xmm0
movsd qword [ebp - 0xce90], xmm1
jmp 0x4a2974
cvtsi2sd xmm0, dword [ebp - 0x2c54]
movsd xmm1, qword [ebp - 0xce90]
addsd xmm1, xmm0
movsd qword [ebp - 0xcea0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcea0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a2ad5
mov eax, dword [ebp - 0x2c54]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xce90]
addsd xmm1, xmm0
movsd qword [ebp - 0xce90], xmm1
jmp fcn.004a2aee
mov ecx, 1
test ecx, ecx
je 0x4a2aea
jmp 0x4a2974
mov ecx, 2
test ecx, ecx
je 0x4a2baa
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2c5c], eax
cvtsi2sd xmm0, dword [ebp - 0x2c5c]
mov eax, dword [ebp - 0x2c5c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xce90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2c58], ecx
jmp 0x4a2bb4
mov dword [ebp - 0x2c58], 8
mov edx, dword [ebp - 0x2c20]
shl edx, 2
add edx, dword [ebp - 0x2c1c]
mov eax, dword [ebp - 0x2c4c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2c20]
shl ecx, 2
add ecx, dword [ebp - 0x2c1c]
mov edx, dword [ebp - 0x2c58]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2c20]
shl ecx, 2
add ecx, dword [ebp - 0x2c1c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a2ec2
xor eax, eax
je 0x4a2c34
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a2c70
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d70]
movsd qword [ebp - 0xcea8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a2e10
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a2e10
mov dword [ebp - 0x2c60], 0
jmp 0x4a2cef
cmp dword [ebp - 0x2c60], 0xf
jae 0x4a2e0b
cvtsi2sd xmm0, dword [ebp - 0x2c60]
movsd xmm1, qword [ebp - 0xcea8]
addsd xmm1, xmm0
movsd qword [ebp - 0xceb0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xceb0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a2d5e
mov ecx, dword [ebp - 0x2c60]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcea8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcea8], xmm1
jmp 0x4a2c5a
cvtsi2sd xmm0, dword [ebp - 0x2c60]
movsd xmm1, qword [ebp - 0xcea8]
addsd xmm1, xmm0
movsd qword [ebp - 0xceb8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xceb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a2dbb
mov eax, dword [ebp - 0x2c60]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcea8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcea8], xmm1
jmp 0x4a2dd4
mov ecx, 1
test ecx, ecx
je 0x4a2dd0
jmp 0x4a2e90
jmp 0x4a2df7
cvtsi2sd xmm0, dword [ebp - 0x2c60]
movsd xmm1, qword [ebp - 0xcea8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2c64], edx
jmp 0x4a2e9a
xor eax, eax
je 0x4a2e01
jmp 0x4a2e10
jmp 0x4a2c5a
jmp 0x4a2c5a
mov ecx, 2
test ecx, ecx
je 0x4a2e90
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2c68], eax
cvtsi2sd xmm0, dword [ebp - 0x2c68]
mov eax, dword [ebp - 0x2c68]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcea8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2c64], ecx
jmp 0x4a2e9a
mov dword [ebp - 0x2c64], 8
mov edx, dword [ebp - 0x2c20]
shl edx, 2
add edx, dword [ebp - 0x2c1c]
mov eax, dword [ebp - 0x2c64]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2c20]
shl ecx, 2
add ecx, dword [ebp - 0x2c1c]
mov dword [ecx], eax
jmp 0x4a1df2
mov edx, dword [ebp - 0x2c18]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2c18]
mov dword [ebp - 0x2c6c], eax
mov ecx, dword [ebp - 0x2c6c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2c70], ecx
mov edx, dword [ebp - 0x2c70]
mov dword [ebp - 0x2c14], edx
mov dword [ebp - 0x2c74], 0
jmp 0x4a2f1b
mov eax, dword [ebp - 0x2c74]
add eax, 1
mov dword [ebp - 0x2c74], eax
cmp dword [ebp - 0x2c74], 0x13
jge 0x4a2f39
lea ecx, [ebp - 0x16648]
mov edx, dword [ebp - 0x2c74]
shl edx, 0
mov byte [ecx + edx], 0
jmp 0x4a2f0c
xor eax, eax
mov byte [ebp - 0x7e], al
lea ecx, [ebp - 0x7e]
call fcn.00424ba0
mov dword [ebp - 0x2c78], eax
mov ecx, dword [ebp - 0x2c78]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4a404b
mov eax, dword [ebp - 0x2c78]
mov dword [ebp - 0x2c7c], eax
mov dword [ebp - 0x2c80], 0
jmp 0x4a2f85
mov ecx, dword [ebp - 0x2c80]
add ecx, 1
mov dword [ebp - 0x2c80], ecx
cmp dword [ebp - 0x2c80], 1
jae 0x4a404b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a325d
xor eax, eax
je 0x4a2fcf
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a300b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d88]
movsd qword [ebp - 0xcec0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a31ab
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a31ab
mov dword [ebp - 0x2c84], 0
jmp 0x4a308a
cmp dword [ebp - 0x2c84], 0xf
jae 0x4a31a6
cvtsi2sd xmm0, dword [ebp - 0x2c84]
movsd xmm1, qword [ebp - 0xcec0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcec8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcec8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a30f9
mov ecx, dword [ebp - 0x2c84]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcec0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcec0], xmm1
jmp 0x4a2ff5
cvtsi2sd xmm0, dword [ebp - 0x2c84]
movsd xmm1, qword [ebp - 0xcec0]
addsd xmm1, xmm0
movsd qword [ebp - 0xced0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xced0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a3156
mov eax, dword [ebp - 0x2c84]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcec0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcec0], xmm1
jmp 0x4a316f
mov ecx, 1
test ecx, ecx
je 0x4a316b
jmp 0x4a322b
jmp 0x4a3192
cvtsi2sd xmm0, dword [ebp - 0x2c84]
movsd xmm1, qword [ebp - 0xcec0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2c88], edx
jmp 0x4a3235
xor eax, eax
je 0x4a319c
jmp 0x4a31ab
jmp 0x4a2ff5
jmp 0x4a2ff5
mov ecx, 2
test ecx, ecx
je 0x4a322b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2c8c], eax
cvtsi2sd xmm0, dword [ebp - 0x2c8c]
mov eax, dword [ebp - 0x2c8c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcec0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2c88], ecx
jmp 0x4a3235
mov dword [ebp - 0x2c88], 8
mov edx, dword [ebp - 0x2c80]
shl edx, 2
add edx, dword [ebp - 0x2c7c]
mov eax, dword [ebp - 0x2c88]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2c80]
shl ecx, 2
add ecx, dword [ebp - 0x2c7c]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a3d7b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a356d
xor eax, eax
je 0x4a32df
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a331b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d80]
movsd qword [ebp - 0xced8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a34bb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a34bb
mov dword [ebp - 0x2c90], 0
jmp 0x4a339a
cmp dword [ebp - 0x2c90], 0xf
jae 0x4a34b6
cvtsi2sd xmm0, dword [ebp - 0x2c90]
movsd xmm1, qword [ebp - 0xced8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcee0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcee0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a3409
mov ecx, dword [ebp - 0x2c90]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xced8]
addsd xmm1, xmm0
movsd qword [ebp - 0xced8], xmm1
jmp 0x4a3305
cvtsi2sd xmm0, dword [ebp - 0x2c90]
movsd xmm1, qword [ebp - 0xced8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcee8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcee8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a3466
mov eax, dword [ebp - 0x2c90]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xced8]
addsd xmm1, xmm0
movsd qword [ebp - 0xced8], xmm1
jmp 0x4a347f
mov ecx, 1
test ecx, ecx
je 0x4a347b
jmp 0x4a353b
jmp 0x4a34a2
cvtsi2sd xmm0, dword [ebp - 0x2c90]
movsd xmm1, qword [ebp - 0xced8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2c94], edx
jmp 0x4a3545
xor eax, eax
je 0x4a34ac
jmp 0x4a3305
mov ecx, 2
test ecx, ecx
je 0x4a353b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2c98], eax
cvtsi2sd xmm0, dword [ebp - 0x2c98]
mov eax, dword [ebp - 0x2c98]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xced8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2c94], ecx
jmp 0x4a3545
mov dword [ebp - 0x2c94], 8
mov edx, dword [ebp - 0x2c80]
shl edx, 2
add edx, dword [ebp - 0x2c7c]
mov eax, dword [ebp - 0x2c94]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2c80]
shl ecx, 2
add ecx, dword [ebp - 0x2c7c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a3838
xor eax, eax
je 0x4a35aa
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a35e6
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d78]
movsd qword [ebp - 0xcef0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a3786
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a3786
mov dword [ebp - 0x2c9c], 0
jmp 0x4a3665
cmp dword [ebp - 0x2c9c], 0xf
jae 0x4a3781
cvtsi2sd xmm0, dword [ebp - 0x2c9c]
movsd xmm1, qword [ebp - 0xcef0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcef8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcef8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a36d4
mov ecx, dword [ebp - 0x2c9c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcef0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcef0], xmm1
jmp 0x4a35d0
cvtsi2sd xmm0, dword [ebp - 0x2c9c]
movsd xmm1, qword [ebp - 0xcef0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf00], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcf00]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a3731
mov eax, dword [ebp - 0x2c9c]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcef0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcef0], xmm1
jmp 0x4a374a
mov ecx, 1
test ecx, ecx
je 0x4a3746
jmp 0x4a3806
jmp fcn.004a376d
cvtsi2sd xmm0, dword [ebp - 0x2c9c]
movsd xmm1, qword [ebp - 0xcef0]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2ca0], edx
jmp 0x4a3810
jmp 0x4a35d0
mov ecx, 2
test ecx, ecx
je 0x4a3806
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2ca4], eax
cvtsi2sd xmm0, dword [ebp - 0x2ca4]
mov eax, dword [ebp - 0x2ca4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcef0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2ca0], ecx
jmp 0x4a3810
mov dword [ebp - 0x2ca0], 8
mov edx, dword [ebp - 0x2c80]
shl edx, 2
add edx, dword [ebp - 0x2c7c]
mov eax, dword [ebp - 0x2ca0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2c80]
shl ecx, 2
add ecx, dword [ebp - 0x2c7c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2c80]
add edx, 0xffffffcd
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcf08], xmm0
xor eax, eax
je 0x4a3852
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a388e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcf08]
movsd qword [ebp - 0xcf10], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a3a2e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a3a2e
mov dword [ebp - 0x2ca8], 0
jmp 0x4a390d
cmp dword [ebp - 0x2ca8], 0xf
jae 0x4a3a29
cvtsi2sd xmm0, dword [ebp - 0x2ca8]
movsd xmm1, qword [ebp - 0xcf10]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf18], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcf18]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a397c
mov ecx, dword [ebp - 0x2ca8]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcf10]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf10], xmm1
jmp 0x4a3878
cvtsi2sd xmm0, dword [ebp - 0x2ca8]
movsd xmm1, qword [ebp - 0xcf10]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf20], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcf20]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a39d9
mov eax, dword [ebp - 0x2ca8]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcf10]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf10], xmm1
jmp 0x4a39f2
mov ecx, 1
test ecx, ecx
je 0x4a39ee
jmp 0x4a3aae
jmp fcn.004a3a15
cvtsi2sd xmm0, dword [ebp - 0x2ca8]
movsd xmm1, qword [ebp - 0xcf10]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2cac], edx
jmp 0x4a3ab8
jmp 0x4a3878
mov ecx, 2
test ecx, ecx
je 0x4a3aae
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2cb0], eax
cvtsi2sd xmm0, dword [ebp - 0x2cb0]
mov eax, dword [ebp - 0x2cb0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcf10]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2cac], ecx
jmp 0x4a3ab8
mov dword [ebp - 0x2cac], 8
mov edx, dword [ebp - 0x2c80]
add edx, 0xffffffcd
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcf28], xmm0
xor eax, eax
je 0x4a3ad2
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a3b0e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcf28]
movsd qword [ebp - 0xcf30], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a3cae
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a3cae
mov dword [ebp - 0x2cb4], 0
jmp 0x4a3b8d
cmp dword [ebp - 0x2cb4], 0xf
jae 0x4a3ca9
cvtsi2sd xmm0, dword [ebp - 0x2cb4]
movsd xmm1, qword [ebp - 0xcf30]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf38], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcf38]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a3bfc
jmp 0x4a3af8
mov ecx, 2
test ecx, ecx
je 0x4a3d2e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2cbc], eax
cvtsi2sd xmm0, dword [ebp - 0x2cbc]
mov eax, dword [ebp - 0x2cbc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcf30]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2cb8], ecx
jmp 0x4a3d38
mov dword [ebp - 0x2cb8], 8
mov edx, dword [ebp - 0x2c80]
shl edx, 2
add edx, dword [ebp - 0x2c7c]
mov eax, dword [ebp - 0x2cac]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2c80]
shl ecx, 2
add ecx, dword [ebp - 0x2c7c]
mov edx, dword [ebp - 0x2cb8]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2c80]
shl ecx, 2
add ecx, dword [ebp - 0x2c7c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a4046
xor eax, eax
je 0x4a3db8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a3df4
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d70]
movsd qword [ebp - 0xcf48], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a3f94
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a3f94
mov dword [ebp - 0x2cc0], 0
jmp 0x4a3e73
cmp dword [ebp - 0x2cc0], 0xf
jae 0x4a3f8f
cvtsi2sd xmm0, dword [ebp - 0x2cc0]
movsd xmm1, qword [ebp - 0xcf48]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf50], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcf50]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a3ee2
mov ecx, dword [ebp - 0x2cc0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcf48]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf48], xmm1
jmp 0x4a3dde
cvtsi2sd xmm0, dword [ebp - 0x2cc0]
movsd xmm1, qword [ebp - 0xcf48]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf58], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcf58]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a3f3f
mov eax, dword [ebp - 0x2cc0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcf48]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf48], xmm1
jmp 0x4a3f58
mov ecx, 1
test ecx, ecx
je 0x4a3f54
jmp 0x4a4014
jmp 0x4a3f7b
cvtsi2sd xmm0, dword [ebp - 0x2cc0]
movsd xmm1, qword [ebp - 0xcf48]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2cc4], edx
jmp 0x4a401e
xor eax, eax
je 0x4a3f85
jmp 0x4a3dde
mov ecx, 2
test ecx, ecx
je 0x4a4014
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2cc8], eax
cvtsi2sd xmm0, dword [ebp - 0x2cc8]
mov eax, dword [ebp - 0x2cc8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcf48]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2cc4], ecx
jmp 0x4a401e
mov dword [ebp - 0x2cc4], 8
mov edx, dword [ebp - 0x2c80]
shl edx, 2
add edx, dword [ebp - 0x2c7c]
mov eax, dword [ebp - 0x2cc4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2c80]
shl ecx, 2
add ecx, dword [ebp - 0x2c7c]
mov dword [ecx], eax
jmp 0x4a2f76
mov edx, dword [ebp - 0x2c78]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2c78]
mov dword [ebp - 0x2ccc], eax
mov ecx, dword [ebp - 0x2ccc]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2cd0], ecx
mov edx, dword [ebp - 0x2cd0]
mov dword [ebp - 0x2cd4], edx
xor eax, eax
mov byte [ebp - 0x7f], al
lea ecx, [ebp - 0x7f]
call fcn.00424b70
mov dword [ebp - 0x2cd8], eax
mov ecx, dword [ebp - 0x2cd8]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4a5196
mov eax, dword [ebp - 0x2cd8]
mov dword [ebp - 0x2cdc], eax
mov dword [ebp - 0x2ce0], 0
jmp 0x4a40d0
mov ecx, dword [ebp - 0x2ce0]
add ecx, 1
mov dword [ebp - 0x2ce0], ecx
cmp dword [ebp - 0x2ce0], 1
jae 0x4a5196
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a43a8
xor eax, eax
je 0x4a411a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a4156
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d80]
movsd qword [ebp - 0xcf60], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a42f6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a42f6
mov dword [ebp - 0x2ce4], 0
jmp 0x4a41d5
cmp dword [ebp - 0x2ce4], 0xf
jae 0x4a42f1
cvtsi2sd xmm0, dword [ebp - 0x2ce4]
movsd xmm1, qword [ebp - 0xcf60]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf68], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcf68]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a4244
mov ecx, dword [ebp - 0x2ce4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcf60]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf60], xmm1
jmp 0x4a4140
cvtsi2sd xmm0, dword [ebp - 0x2ce4]
movsd xmm1, qword [ebp - 0xcf60]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf70], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcf70]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a42a1
mov eax, dword [ebp - 0x2ce4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcf60]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf60], xmm1
jmp 0x4a42ba
mov ecx, 1
test ecx, ecx
je 0x4a42b6
jmp 0x4a4376
jmp 0x4a42dd
cvtsi2sd xmm0, dword [ebp - 0x2ce4]
movsd xmm1, qword [ebp - 0xcf60]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2ce8], edx
jmp 0x4a4380
xor eax, eax
je 0x4a42e7
jmp 0x4a42f6
jmp 0x4a4140
jmp 0x4a4140
mov ecx, 2
test ecx, ecx
je 0x4a4376
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2cec], eax
cvtsi2sd xmm0, dword [ebp - 0x2cec]
mov eax, dword [ebp - 0x2cec]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcf60]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2ce8], ecx
jmp 0x4a4380
mov dword [ebp - 0x2ce8], 8
mov edx, dword [ebp - 0x2ce0]
shl edx, 2
add edx, dword [ebp - 0x2cdc]
mov eax, dword [ebp - 0x2ce8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2ce0]
shl ecx, 2
add ecx, dword [ebp - 0x2cdc]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a4ec6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a46b8
xor eax, eax
je 0x4a442a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a4466
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d78]
movsd qword [ebp - 0xcf78], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a4606
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a4606
mov dword [ebp - 0x2cf0], 0
jmp 0x4a44e5
cmp dword [ebp - 0x2cf0], 0xf
jae 0x4a4601
cvtsi2sd xmm0, dword [ebp - 0x2cf0]
movsd xmm1, qword [ebp - 0xcf78]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf80], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcf80]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a4554
mov ecx, dword [ebp - 0x2cf0]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcf78]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf78], xmm1
jmp 0x4a4450
cvtsi2sd xmm0, dword [ebp - 0x2cf0]
movsd xmm1, qword [ebp - 0xcf78]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf88], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcf88]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a45b1
mov eax, dword [ebp - 0x2cf0]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcf78]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf78], xmm1
jmp 0x4a45ca
mov ecx, 1
test ecx, ecx
je 0x4a45c6
jmp 0x4a4686
jmp fcn.004a45ed
cvtsi2sd xmm0, dword [ebp - 0x2cf0]
movsd xmm1, qword [ebp - 0xcf78]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2cf4], edx
jmp 0x4a4690
jmp 0x4a4450
mov ecx, 2
test ecx, ecx
je 0x4a4686
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2cf8], eax
cvtsi2sd xmm0, dword [ebp - 0x2cf8]
mov eax, dword [ebp - 0x2cf8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcf78]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2cf4], ecx
jmp 0x4a4690
mov dword [ebp - 0x2cf4], 8
mov edx, dword [ebp - 0x2ce0]
shl edx, 2
add edx, dword [ebp - 0x2cdc]
mov eax, dword [ebp - 0x2cf4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2ce0]
shl ecx, 2
add ecx, dword [ebp - 0x2cdc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a4983
xor eax, eax
je 0x4a46f5
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a4731
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d70]
movsd qword [ebp - 0xcf90], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a48d1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a48d1
mov dword [ebp - 0x2cfc], 0
jmp 0x4a47b0
cmp dword [ebp - 0x2cfc], 0xf
jae 0x4a48cc
cvtsi2sd xmm0, dword [ebp - 0x2cfc]
movsd xmm1, qword [ebp - 0xcf90]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf98], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcf98]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a481f
mov ecx, dword [ebp - 0x2cfc]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcf90]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf90], xmm1
jmp 0x4a471b
cvtsi2sd xmm0, dword [ebp - 0x2cfc]
movsd xmm1, qword [ebp - 0xcf90]
addsd xmm1, xmm0
movsd qword [ebp - 0xcfa0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcfa0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a487c
mov eax, dword [ebp - 0x2cfc]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcf90]
addsd xmm1, xmm0
movsd qword [ebp - 0xcf90], xmm1
jmp fcn.004a4895
mov ecx, 1
test ecx, ecx
je 0x4a4891
jmp 0x4a471b
mov ecx, 2
test ecx, ecx
je 0x4a4951
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2d04], eax
cvtsi2sd xmm0, dword [ebp - 0x2d04]
mov eax, dword [ebp - 0x2d04]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcf90]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2d00], ecx
jmp 0x4a495b
mov dword [ebp - 0x2d00], 8
mov edx, dword [ebp - 0x2ce0]
shl edx, 2
add edx, dword [ebp - 0x2cdc]
mov eax, dword [ebp - 0x2d00]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2ce0]
shl ecx, 2
add ecx, dword [ebp - 0x2cdc]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2ce0]
add edx, 0xffffffce
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcfa8], xmm0
xor eax, eax
je 0x4a499d
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a49d9
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcfa8]
movsd qword [ebp - 0xcfb0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a4b79
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a4b79
mov dword [ebp - 0x2d08], 0
jmp 0x4a4a58
cmp dword [ebp - 0x2d08], 0xf
jae 0x4a4b74
cvtsi2sd xmm0, dword [ebp - 0x2d08]
movsd xmm1, qword [ebp - 0xcfb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcfb8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcfb8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a4ac7
mov ecx, dword [ebp - 0x2d08]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcfb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcfb0], xmm1
jmp 0x4a49c3
cvtsi2sd xmm0, dword [ebp - 0x2d08]
movsd xmm1, qword [ebp - 0xcfb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcfc0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcfc0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a4b24
mov eax, dword [ebp - 0x2d08]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcfb0]
addsd xmm1, xmm0
movsd qword [ebp - 0xcfb0], xmm1
jmp fcn.004a4b3d
mov ecx, 1
test ecx, ecx
je 0x4a4b39
jmp 0x4a49c3
mov ecx, 2
test ecx, ecx
je 0x4a4bf9
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2d10], eax
cvtsi2sd xmm0, dword [ebp - 0x2d10]
mov eax, dword [ebp - 0x2d10]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcfb0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2d0c], ecx
jmp 0x4a4c03
mov dword [ebp - 0x2d0c], 8
mov edx, dword [ebp - 0x2ce0]
add edx, 0xffffffce
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xcfc8], xmm0
xor eax, eax
je 0x4a4c1d
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a4c59
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xcfc8]
movsd qword [ebp - 0xcfd0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a4df9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a4df9
mov dword [ebp - 0x2d14], 0
jmp 0x4a4cd8
cmp dword [ebp - 0x2d14], 0xf
jae 0x4a4df4
mov ecx, 2
test ecx, ecx
je 0x4a4e79
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2d1c], eax
cvtsi2sd xmm0, dword [ebp - 0x2d1c]
mov eax, dword [ebp - 0x2d1c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcfd0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2d18], ecx
jmp 0x4a4e83
mov dword [ebp - 0x2d18], 8
mov edx, dword [ebp - 0x2ce0]
shl edx, 2
add edx, dword [ebp - 0x2cdc]
mov eax, dword [ebp - 0x2d0c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2ce0]
shl ecx, 2
add ecx, dword [ebp - 0x2cdc]
mov edx, dword [ebp - 0x2d18]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2ce0]
shl ecx, 2
add ecx, dword [ebp - 0x2cdc]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a5191
xor eax, eax
je 0x4a4f03
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a4f3f
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d68]
movsd qword [ebp - 0xcfe8], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a50df
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a50df
mov dword [ebp - 0x2d20], 0
jmp 0x4a4fbe
cmp dword [ebp - 0x2d20], 0xf
jae 0x4a50da
cvtsi2sd xmm0, dword [ebp - 0x2d20]
movsd xmm1, qword [ebp - 0xcfe8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcff0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcff0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a502d
mov ecx, dword [ebp - 0x2d20]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xcfe8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcfe8], xmm1
jmp 0x4a4f29
cvtsi2sd xmm0, dword [ebp - 0x2d20]
movsd xmm1, qword [ebp - 0xcfe8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcff8], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xcff8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a508a
mov eax, dword [ebp - 0x2d20]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xcfe8]
addsd xmm1, xmm0
movsd qword [ebp - 0xcfe8], xmm1
jmp 0x4a50a3
mov ecx, 1
test ecx, ecx
je 0x4a509f
jmp 0x4a515f
jmp fcn.004a50c6
cvtsi2sd xmm0, dword [ebp - 0x2d20]
movsd xmm1, qword [ebp - 0xcfe8]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2d24], edx
jmp 0x4a5169
jmp 0x4a4f29
mov ecx, 2
test ecx, ecx
je 0x4a515f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2d28], eax
cvtsi2sd xmm0, dword [ebp - 0x2d28]
mov eax, dword [ebp - 0x2d28]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xcfe8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2d24], ecx
jmp 0x4a5169
mov dword [ebp - 0x2d24], 8
mov edx, dword [ebp - 0x2ce0]
shl edx, 2
add edx, dword [ebp - 0x2cdc]
mov eax, dword [ebp - 0x2d24]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2ce0]
shl ecx, 2
add ecx, dword [ebp - 0x2cdc]
mov dword [ecx], eax
jmp 0x4a40c1
mov edx, dword [ebp - 0x2cd8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2cd8]
mov dword [ebp - 0x2d2c], eax
mov ecx, dword [ebp - 0x2d2c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2d30], ecx
mov edx, dword [ebp - 0x2d30]
mov dword [ebp - 0x2d34], edx
xor eax, eax
mov byte [ebp - 0x80], al
lea ecx, [ebp - 0x80]
call fcn.00424b40
mov dword [ebp - 0x2d38], eax
mov ecx, dword [ebp - 0x2d38]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4a62e1
mov eax, dword [ebp - 0x2d38]
mov dword [ebp - 0x2d3c], eax
mov dword [ebp - 0x2d40], 0
jmp 0x4a521b
mov ecx, dword [ebp - 0x2d40]
add ecx, 1
mov dword [ebp - 0x2d40], ecx
cmp dword [ebp - 0x2d40], 1
jae 0x4a62e1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a54f3
xor eax, eax
je 0x4a5265
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a52a1
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d80]
movsd qword [ebp - 0xd000], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a5441
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a5441
mov dword [ebp - 0x2d44], 0
jmp 0x4a5320
cmp dword [ebp - 0x2d44], 0xf
jae 0x4a543c
cvtsi2sd xmm0, dword [ebp - 0x2d44]
movsd xmm1, qword [ebp - 0xd000]
addsd xmm1, xmm0
movsd qword [ebp - 0xd008], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd008]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a538f
mov ecx, dword [ebp - 0x2d44]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xd000]
addsd xmm1, xmm0
movsd qword [ebp - 0xd000], xmm1
jmp 0x4a528b
cvtsi2sd xmm0, dword [ebp - 0x2d44]
movsd xmm1, qword [ebp - 0xd000]
addsd xmm1, xmm0
movsd qword [ebp - 0xd010], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xd010]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a53ec
mov eax, dword [ebp - 0x2d44]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd000]
addsd xmm1, xmm0
movsd qword [ebp - 0xd000], xmm1
jmp 0x4a5405
mov ecx, 1
test ecx, ecx
je 0x4a5401
jmp 0x4a54c1
jmp 0x4a5428
cvtsi2sd xmm0, dword [ebp - 0x2d44]
movsd xmm1, qword [ebp - 0xd000]
addsd xmm1, xmm0
cvttsd2si edx, xmm1
mov dword [ebp - 0x2d48], edx
jmp 0x4a54cb
xor eax, eax
je 0x4a5432
jmp 0x4a528b
mov ecx, 2
test ecx, ecx
je 0x4a54c1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2d4c], eax
cvtsi2sd xmm0, dword [ebp - 0x2d4c]
mov eax, dword [ebp - 0x2d4c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd000]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2d48], ecx
jmp 0x4a54cb
mov dword [ebp - 0x2d48], 8
mov edx, dword [ebp - 0x2d40]
shl edx, 2
add edx, dword [ebp - 0x2d3c]
mov eax, dword [ebp - 0x2d48]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2d40]
shl ecx, 2
add ecx, dword [ebp - 0x2d3c]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a6011
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a5803
xor eax, eax
je 0x4a5575
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a55b1
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d78]
movsd qword [ebp - 0xd018], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a5751
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a5751
mov dword [ebp - 0x2d50], 0
jmp 0x4a5630
cmp dword [ebp - 0x2d50], 0xf
jae 0x4a574c
cvtsi2sd xmm0, dword [ebp - 0x2d50]
movsd xmm1, qword [ebp - 0xd018]
addsd xmm1, xmm0
movsd qword [ebp - 0xd020], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd020]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a569f
mov ecx, dword [ebp - 0x2d50]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xd018]
addsd xmm1, xmm0
movsd qword [ebp - 0xd018], xmm1
jmp 0x4a559b
cvtsi2sd xmm0, dword [ebp - 0x2d50]
movsd xmm1, qword [ebp - 0xd018]
addsd xmm1, xmm0
movsd qword [ebp - 0xd028], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xd028]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a56fc
mov eax, dword [ebp - 0x2d50]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd018]
addsd xmm1, xmm0
movsd qword [ebp - 0xd018], xmm1
jmp fcn.004a5715
mov ecx, 1
test ecx, ecx
je 0x4a5711
jmp 0x4a559b
mov ecx, 2
test ecx, ecx
je 0x4a57d1
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2d58], eax
cvtsi2sd xmm0, dword [ebp - 0x2d58]
mov eax, dword [ebp - 0x2d58]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd018]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2d54], ecx
jmp 0x4a57db
mov dword [ebp - 0x2d54], 8
mov edx, dword [ebp - 0x2d40]
shl edx, 2
add edx, dword [ebp - 0x2d3c]
mov eax, dword [ebp - 0x2d54]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2d40]
shl ecx, 2
add ecx, dword [ebp - 0x2d3c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a5ace
xor eax, eax
je 0x4a5840
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a587c
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d70]
movsd qword [ebp - 0xd030], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a5a1c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a5a1c
mov dword [ebp - 0x2d5c], 0
jmp 0x4a58fb
cmp dword [ebp - 0x2d5c], 0xf
jae 0x4a5a17
cvtsi2sd xmm0, dword [ebp - 0x2d5c]
movsd xmm1, qword [ebp - 0xd030]
addsd xmm1, xmm0
movsd qword [ebp - 0xd038], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd038]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a596a
mov ecx, dword [ebp - 0x2d5c]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xd030]
addsd xmm1, xmm0
movsd qword [ebp - 0xd030], xmm1
jmp 0x4a5866
cvtsi2sd xmm0, dword [ebp - 0x2d5c]
movsd xmm1, qword [ebp - 0xd030]
addsd xmm1, xmm0
movsd qword [ebp - 0xd040], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xd040]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a59c7
jmp 0x4a5866
mov ecx, 2
test ecx, ecx
je 0x4a5a9c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2d64], eax
cvtsi2sd xmm0, dword [ebp - 0x2d64]
mov eax, dword [ebp - 0x2d64]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd030]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2d60], ecx
jmp 0x4a5aa6
mov dword [ebp - 0x2d60], 8
mov edx, dword [ebp - 0x2d40]
shl edx, 2
add edx, dword [ebp - 0x2d3c]
mov eax, dword [ebp - 0x2d60]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2d40]
shl ecx, 2
add ecx, dword [ebp - 0x2d3c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2d40]
add edx, 0xffffffce
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xd048], xmm0
xor eax, eax
je 0x4a5ae8
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a5b24
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xd048]
movsd qword [ebp - 0xd050], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a5cc4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a5cc4
mov dword [ebp - 0x2d68], 0
jmp 0x4a5ba3
cmp dword [ebp - 0x2d68], 0xf
jae 0x4a5cbf
cvtsi2sd xmm0, dword [ebp - 0x2d68]
movsd xmm1, qword [ebp - 0xd050]
addsd xmm1, xmm0
movsd qword [ebp - 0xd058], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd058]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a5c12
mov ecx, dword [ebp - 0x2d68]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xd050]
addsd xmm1, xmm0
movsd qword [ebp - 0xd050], xmm1
jmp 0x4a5b0e
cvtsi2sd xmm0, dword [ebp - 0x2d68]
movsd xmm1, qword [ebp - 0xd050]
addsd xmm1, xmm0
movsd qword [ebp - 0xd060], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xd060]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a5c6f
jmp 0x4a5b0e
mov ecx, 2
test ecx, ecx
je 0x4a5d44
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2d70], eax
cvtsi2sd xmm0, dword [ebp - 0x2d70]
mov eax, dword [ebp - 0x2d70]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd050]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2d6c], ecx
jmp 0x4a5d4e
mov dword [ebp - 0x2d6c], 8
mov edx, dword [ebp - 0x2d40]
add edx, 0xffffffce
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xd068], xmm0
xor eax, eax
je 0x4a5d68
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a5da4
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xd068]
movsd qword [ebp - 0xd070], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a5f44
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a5f44
mov dword [ebp - 0x2d74], 0
jmp fcn.004a5e23
mov ecx, 2
test ecx, ecx
je 0x4a5fc4
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2d7c], eax
cvtsi2sd xmm0, dword [ebp - 0x2d7c]
mov eax, dword [ebp - 0x2d7c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd070]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2d78], ecx
jmp 0x4a5fce
mov dword [ebp - 0x2d78], 8
mov edx, dword [ebp - 0x2d40]
shl edx, 2
add edx, dword [ebp - 0x2d3c]
mov eax, dword [ebp - 0x2d6c]
add eax, dword [edx]
mov ecx, dword [ebp - 0x2d40]
shl ecx, 2
add ecx, dword [ebp - 0x2d3c]
mov edx, dword [ebp - 0x2d78]
and edx, dword [ecx]
shl edx, 1
sub eax, edx
mov ecx, dword [ebp - 0x2d40]
shl ecx, 2
add ecx, dword [ebp - 0x2d3c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a62dc
xor eax, eax
je 0x4a604e
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a608a
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d68]
movsd qword [ebp - 0xd088], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a622a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a622a
mov dword [ebp - 0x2d80], 0
jmp 0x4a6109
cmp dword [ebp - 0x2d80], 0xf
jae 0x4a6225
cvtsi2sd xmm0, dword [ebp - 0x2d80]
movsd xmm1, qword [ebp - 0xd088]
addsd xmm1, xmm0
movsd qword [ebp - 0xd090], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd090]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a6178
mov ecx, dword [ebp - 0x2d80]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xd088]
addsd xmm1, xmm0
movsd qword [ebp - 0xd088], xmm1
jmp 0x4a6074
cvtsi2sd xmm0, dword [ebp - 0x2d80]
movsd xmm1, qword [ebp - 0xd088]
addsd xmm1, xmm0
movsd qword [ebp - 0xd098], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xd098]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a61d5
mov eax, dword [ebp - 0x2d80]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd088]
addsd xmm1, xmm0
movsd qword [ebp - 0xd088], xmm1
jmp fcn.004a61ee
mov ecx, 1
test ecx, ecx
je 0x4a61ea
jmp 0x4a6074
mov ecx, 2
test ecx, ecx
je 0x4a62aa
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2d88], eax
cvtsi2sd xmm0, dword [ebp - 0x2d88]
mov eax, dword [ebp - 0x2d88]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd088]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2d84], ecx
jmp 0x4a62b4
mov dword [ebp - 0x2d84], 8
mov edx, dword [ebp - 0x2d40]
shl edx, 2
add edx, dword [ebp - 0x2d3c]
mov eax, dword [ebp - 0x2d84]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2d40]
shl ecx, 2
add ecx, dword [ebp - 0x2d3c]
mov dword [ecx], eax
jmp 0x4a520c
mov edx, dword [ebp - 0x2d38]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2d38]
mov dword [ebp - 0x2d8c], eax
mov ecx, dword [ebp - 0x2d8c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2d90], ecx
mov edx, dword [ebp - 0x2d90]
mov dword [ebp - 0x2d94], edx
mov eax, dword [ebp - 0x2d34]
mov dword [ebp - 0x2cd4], eax
cmp dword [ebp - 0x2cd4], 0
je 0x4a7484
xor ecx, ecx
mov byte [ebp - 0x81], cl
lea ecx, [ebp - 0x81]
call fcn.00424b10
mov dword [ebp - 0x2d98], eax
mov edx, dword [ebp - 0x2d98]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x4a744b
mov ecx, dword [ebp - 0x2d98]
mov dword [ebp - 0x2d9c], ecx
mov dword [ebp - 0x2da0], 0
jmp 0x4a6385
mov edx, dword [ebp - 0x2da0]
add edx, 1
mov dword [ebp - 0x2da0], edx
cmp dword [ebp - 0x2da0], 1
jae 0x4a744b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a665d
xor eax, eax
je 0x4a63cf
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x4a640b
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736d78]
movsd qword [ebp - 0xd0a0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a65ab
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a65ab
mov dword [ebp - 0x2da4], 0
jmp 0x4a648a
cmp dword [ebp - 0x2da4], 0xf
jae 0x4a65a6
cvtsi2sd xmm0, dword [ebp - 0x2da4]
movsd xmm1, qword [ebp - 0xd0a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xd0a8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd0a8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a64f9
mov ecx, dword [ebp - 0x2da4]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xd0a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xd0a0], xmm1
jmp 0x4a63f5
cvtsi2sd xmm0, dword [ebp - 0x2da4]
movsd xmm1, qword [ebp - 0xd0a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xd0b0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xd0b0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a6556
mov eax, dword [ebp - 0x2da4]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd0a0]
addsd xmm1, xmm0
movsd qword [ebp - 0xd0a0], xmm1
jmp fcn.004a656f
mov ecx, 1
test ecx, ecx
je 0x4a656b
jmp 0x4a63f5
mov ecx, 2
test ecx, ecx
je 0x4a662b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2dac], eax
cvtsi2sd xmm0, dword [ebp - 0x2dac]
mov eax, dword [ebp - 0x2dac]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd0a0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2da8], ecx
jmp 0x4a6635
mov dword [ebp - 0x2da8], 8
mov edx, dword [ebp - 0x2da0]
shl edx, 2
add edx, dword [ebp - 0x2d9c]
mov eax, dword [ebp - 0x2da8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2da0]
shl ecx, 2
add ecx, dword [ebp - 0x2d9c]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a717b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a696d
xor eax, eax
je 0x4a66df
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a671b
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d70]
movsd qword [ebp - 0xd0b8], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
retf 0xff2
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a68bb
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a68bb
mov dword [ebp - 0x2db0], 0
jmp 0x4a679a
cmp dword [ebp - 0x2db0], 0xf
jae 0x4a68b6
cvtsi2sd xmm0, dword [ebp - 0x2db0]
movsd xmm1, qword [ebp - 0xd0b8]
addsd xmm1, xmm0
movsd qword [ebp - 0xd0c0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd0c0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a6809
jmp 0x4a6705
mov ecx, 2
test ecx, ecx
je 0x4a693b
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2db8], eax
cvtsi2sd xmm0, dword [ebp - 0x2db8]
mov eax, dword [ebp - 0x2db8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd0b8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2db4], ecx
jmp 0x4a6945
mov dword [ebp - 0x2db4], 8
mov edx, dword [ebp - 0x2da0]
shl edx, 2
add edx, dword [ebp - 0x2d9c]
mov eax, dword [ebp - 0x2db4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2da0]
shl ecx, 2
add ecx, dword [ebp - 0x2d9c]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a6c38
xor eax, eax
je 0x4a69aa
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a69e6
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d68]
movsd qword [ebp - 0xd0d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
retf 0xff2
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a6b86
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a6b86
mov dword [ebp - 0x2dbc], 0
jmp 0x4a6a65
cmp dword [ebp - 0x2dbc], 0xf
jae 0x4a6b81
mov ecx, 2
test ecx, ecx
je 0x4a6c06
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2dc4], eax
cvtsi2sd xmm0, dword [ebp - 0x2dc4]
mov eax, dword [ebp - 0x2dc4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd0d0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2dc0], ecx
jmp 0x4a6c10
mov dword [ebp - 0x2dc0], 8
mov edx, dword [ebp - 0x2da0]
shl edx, 2
add edx, dword [ebp - 0x2d9c]
mov eax, dword [ebp - 0x2dc0]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2da0]
shl ecx, 2
add ecx, dword [ebp - 0x2d9c]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2da0]
add edx, 0xffffffcf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xd0e8], xmm0
xor eax, eax
je 0x4a6c52
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a6c8e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xd0e8]
movsd qword [ebp - 0xd0f0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a6e2e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a6e2e
mov dword [ebp - 0x2dc8], 0
jmp 0x4a6d0d
cmp dword [ebp - 0x2dc8], 0xf
jae 0x4a6e29
mov ecx, 2
test ecx, ecx
je 0x4a6eae
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2dd0], eax
cvtsi2sd xmm0, dword [ebp - 0x2dd0]
mov eax, dword [ebp - 0x2dd0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd0f0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2dcc], ecx
jmp 0x4a6eb8
mov dword [ebp - 0x2dcc], 8
mov edx, dword [ebp - 0x2da0]
add edx, 0xffffffcf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xd108], xmm0
xor eax, eax
je 0x4a6ed2
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a6f0e
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mulsd xmm0, qword [ebp - 0xd108]
movsd qword [ebp - 0xd110], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a70ae
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a7446
xor eax, eax
je 0x4a71b8
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a71f4
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d60]
movsd qword [ebp - 0xd128], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
retf 0xff2
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a7394
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a7394
mov dword [ebp - 0x2de0], 0
jmp 0x4a7273
cmp dword [ebp - 0x2de0], 0xf
jae 0x4a738f
cvtsi2sd xmm0, dword [ebp - 0x2de0]
movsd xmm1, qword [ebp - 0xd128]
addsd xmm1, xmm0
movsd qword [ebp - 0xd130], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd130]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a72e2
jmp 0x4a71de
mov ecx, 2
test ecx, ecx
je 0x4a7414
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2de8], eax
cvtsi2sd xmm0, dword [ebp - 0x2de8]
mov eax, dword [ebp - 0x2de8]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd128]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2de4], ecx
jmp 0x4a741e
mov dword [ebp - 0x2de4], 8
mov edx, dword [ebp - 0x2da0]
shl edx, 2
add edx, dword [ebp - 0x2d9c]
mov eax, dword [ebp - 0x2de4]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2da0]
shl ecx, 2
add ecx, dword [ebp - 0x2d9c]
mov dword [ecx], eax
jmp 0x4a6376
mov edx, dword [ebp - 0x2d98]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2d98]
mov dword [ebp - 0x2dec], eax
mov ecx, dword [ebp - 0x2dec]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2df0], ecx
mov edx, dword [ebp - 0x2df0]
mov dword [ebp - 0x2d94], edx
mov eax, dword [ebp - 0x47c]
add eax, 0x18
mov ecx, dword [eax + 0x38]
mov dword [ebp - 0x2df4], ecx
mov edx, dword [ebp - 0x47c]
add edx, 0x18
mov eax, dword [edx + 0x1c]
mov dword [ebp - 0x2df8], eax
mov ecx, dword [ebp - 0x16620]
mov dword [ebp - 0x2dfc], ecx
push 0x3e8
push 0x35e4f491
push 0xf
push 0
call fcn.005d0d50
add esp, 0x10
mov dword [ebp - 0x2e00], eax
push 0x40
push 0x3000
mov edx, dword [ebp - 0x2df4]
push edx
mov eax, dword [ebp - 0x2df8]
push eax
mov ecx, dword [ebp - 0x2dfc]
push ecx
call dword [ebp - 0x2e00]
mov dword [ebp - 0x2e04], eax
mov edx, dword [ebp - 0x2e04]
mov dword [ebp - 0x2e08], edx
xor eax, eax
mov byte [ebp - 0x82], al
lea ecx, [ebp - 0x82]
call fcn.00424ae0
mov dword [ebp - 0x2e0c], eax
mov ecx, dword [ebp - 0x2e0c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4a861c
mov eax, dword [ebp - 0x2e0c]
mov dword [ebp - 0x2e10], eax
mov dword [ebp - 0x2e14], 0
jmp 0x4a7556
mov ecx, dword [ebp - 0x2e14]
add ecx, 1
mov dword [ebp - 0x2e14], ecx
cmp dword [ebp - 0x2e14], 1
jae 0x4a861c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a782e
xor eax, eax
je 0x4a75a0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a75dc
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d78]
movsd qword [ebp - 0xd140], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a777c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a777c
mov dword [ebp - 0x2e18], 0
jmp 0x4a765b
cmp dword [ebp - 0x2e18], 0xf
jae 0x4a7777
cvtsi2sd xmm0, dword [ebp - 0x2e18]
movsd xmm1, qword [ebp - 0xd140]
addsd xmm1, xmm0
movsd qword [ebp - 0xd148], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd148]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a76ca
mov ecx, dword [ebp - 0x2e18]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xd140]
addsd xmm1, xmm0
movsd qword [ebp - 0xd140], xmm1
jmp 0x4a75c6
cvtsi2sd xmm0, dword [ebp - 0x2e18]
movsd xmm1, qword [ebp - 0xd140]
addsd xmm1, xmm0
movsd qword [ebp - 0xd150], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xd150]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a7727
mov eax, dword [ebp - 0x2e18]
and eax, 1
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd140]
addsd xmm1, xmm0
movsd qword [ebp - 0xd140], xmm1
jmp fcn.004a7740
mov ecx, 1
test ecx, ecx
je 0x4a773c
jmp 0x4a75c6
mov ecx, 2
test ecx, ecx
je 0x4a77fc
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2e20], eax
cvtsi2sd xmm0, dword [ebp - 0x2e20]
mov eax, dword [ebp - 0x2e20]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd140]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2e1c], ecx
jmp 0x4a7806
mov dword [ebp - 0x2e1c], 8
mov edx, dword [ebp - 0x2e14]
shl edx, 2
add edx, dword [ebp - 0x2e10]
mov eax, dword [ebp - 0x2e1c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2e14]
shl ecx, 2
add ecx, dword [ebp - 0x2e10]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a834c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a7b3e
xor eax, eax
je 0x4a78b0
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a78ec
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d70]
movsd qword [ebp - 0xd158], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
retf 0xff2
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a7a8c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a7a8c
mov dword [ebp - 0x2e24], 0
jmp 0x4a796b
cmp dword [ebp - 0x2e24], 0xf
jae 0x4a7a87
cvtsi2sd xmm0, dword [ebp - 0x2e24]
movsd xmm1, qword [ebp - 0xd158]
addsd xmm1, xmm0
movsd qword [ebp - 0xd160], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd160]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a79da
jmp 0x4a78d6
mov ecx, 2
test ecx, ecx
je 0x4a7b0c
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2e2c], eax
cvtsi2sd xmm0, dword [ebp - 0x2e2c]
mov eax, dword [ebp - 0x2e2c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd158]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2e28], ecx
jmp 0x4a7b16
mov dword [ebp - 0x2e28], 8
mov edx, dword [ebp - 0x2e14]
shl edx, 2
add edx, dword [ebp - 0x2e10]
mov eax, dword [ebp - 0x2e28]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2e14]
shl ecx, 2
add ecx, dword [ebp - 0x2e10]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a7e09
xor eax, eax
je 0x4a7b7b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a7bb7
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d68]
movsd qword [ebp - 0xd170], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
retf 0xff2
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a7d57
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a7d57
mov dword [ebp - 0x2e30], 0
jmp 0x4a7c36
cmp dword [ebp - 0x2e30], 0xf
jae 0x4a7d52
mov ecx, 2
test ecx, ecx
je 0x4a7dd7
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2e38], eax
cvtsi2sd xmm0, dword [ebp - 0x2e38]
mov eax, dword [ebp - 0x2e38]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd170]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2e34], ecx
jmp 0x4a7de1
mov dword [ebp - 0x2e34], 8
mov edx, dword [ebp - 0x2e14]
shl edx, 2
add edx, dword [ebp - 0x2e10]
mov eax, dword [ebp - 0x2e34]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2e14]
shl ecx, 2
add ecx, dword [ebp - 0x2e10]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2e14]
add edx, 0xffffffcf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xd188], xmm0
xor eax, eax
je 0x4a7e23
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a7e5f
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xd188]
movsd qword [ebp - 0xd190], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a7fff
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a7fff
mov dword [ebp - 0x2e3c], 0
jmp 0x4a7ede
cmp dword [ebp - 0x2e3c], 0xf
jae 0x4a7ffa
mov ecx, 2
test ecx, ecx
je 0x4a807f
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2e44], eax
cvtsi2sd xmm0, dword [ebp - 0x2e44]
mov eax, dword [ebp - 0x2e44]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd190]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2e40], ecx
jmp 0x4a8089
mov dword [ebp - 0x2e40], 8
mov edx, dword [ebp - 0x2e14]
add edx, 0xffffffcf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xd1a8], xmm0
xor eax, eax
je 0x4a80a3
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a80df
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
mulsd xmm0, qword [ebp - 0xd1a8]
movsd qword [ebp - 0xd1b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a827f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a8617
xor eax, eax
je 0x4a8389
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a83c5
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d60]
movsd qword [ebp - 0xd1c8], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
retf 0xff2
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a8565
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a8565
mov dword [ebp - 0x2e54], 0
jmp 0x4a8444
cmp dword [ebp - 0x2e54], 0xf
jae 0x4a8560
cvtsi2sd xmm0, dword [ebp - 0x2e54]
movsd xmm1, qword [ebp - 0xd1c8]
addsd xmm1, xmm0
movsd qword [ebp - 0xd1d0], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd1d0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a84b3
jmp 0x4a83af
mov ecx, 2
test ecx, ecx
je 0x4a85e5
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2e5c], eax
cvtsi2sd xmm0, dword [ebp - 0x2e5c]
mov eax, dword [ebp - 0x2e5c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd1c8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2e58], ecx
jmp 0x4a85ef
mov dword [ebp - 0x2e58], 8
mov edx, dword [ebp - 0x2e14]
shl edx, 2
add edx, dword [ebp - 0x2e10]
mov eax, dword [ebp - 0x2e58]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2e14]
shl ecx, 2
add ecx, dword [ebp - 0x2e10]
mov dword [ecx], eax
jmp 0x4a7547
mov edx, dword [ebp - 0x2e0c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2e0c]
mov dword [ebp - 0x2e60], eax
mov ecx, dword [ebp - 0x2e60]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2e64], ecx
mov edx, dword [ebp - 0x2e64]
mov dword [ebp - 0x2e68], edx
xor eax, eax
mov byte [ebp - 0x83], al
lea ecx, [ebp - 0x83]
call fcn.00424ab0
mov dword [ebp - 0x2e6c], eax
mov ecx, dword [ebp - 0x2e6c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4a976d
mov eax, dword [ebp - 0x2e6c]
mov dword [ebp - 0x2e70], eax
mov dword [ebp - 0x2e74], 0
jmp 0x4a86a7
mov ecx, dword [ebp - 0x2e74]
add ecx, 1
mov dword [ebp - 0x2e74], ecx
cmp dword [ebp - 0x2e74], 1
jae 0x4a976d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a897f
xor eax, eax
je 0x4a86f1
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a872d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d78]
movsd qword [ebp - 0xd1e0], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a88cd
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a88cd
mov dword [ebp - 0x2e78], 0
jmp 0x4a87ac
cmp dword [ebp - 0x2e78], 0xf
jae 0x4a88c8
cvtsi2sd xmm0, dword [ebp - 0x2e78]
movsd xmm1, qword [ebp - 0xd1e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xd1e8], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd1e8]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a881b
mov ecx, dword [ebp - 0x2e78]
and ecx, 0
cvtsi2sd xmm0, ecx
movsd xmm1, qword [ebp - 0xd1e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xd1e0], xmm1
jmp 0x4a8717
cvtsi2sd xmm0, dword [ebp - 0x2e78]
movsd xmm1, qword [ebp - 0xd1e0]
addsd xmm1, xmm0
movsd qword [ebp - 0xd1f0], xmm1
call fcn.005e8000
movsx edx, al
cvtsi2sd xmm0, edx
movsd xmm1, qword [ebp - 0xd1f0]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a8878
jmp 0x4a8717
mov ecx, 2
test ecx, ecx
je 0x4a894d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2e80], eax
cvtsi2sd xmm0, dword [ebp - 0x2e80]
mov eax, dword [ebp - 0x2e80]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd1e0]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2e7c], ecx
jmp 0x4a8957
mov dword [ebp - 0x2e7c], 8
mov edx, dword [ebp - 0x2e74]
shl edx, 2
add edx, dword [ebp - 0x2e70]
mov eax, dword [ebp - 0x2e7c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2e74]
shl ecx, 2
add ecx, dword [ebp - 0x2e70]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a949d
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a8c8f
xor eax, eax
je 0x4a8a01
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a8a3d
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d70]
movsd qword [ebp - 0xd1f8], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
retf 0xff2
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a8bdd
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a8bdd
mov dword [ebp - 0x2e84], 0
jmp 0x4a8abc
cmp dword [ebp - 0x2e84], 0xf
jae 0x4a8bd8
mov ecx, 2
test ecx, ecx
je 0x4a8c5d
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2e8c], eax
cvtsi2sd xmm0, dword [ebp - 0x2e8c]
mov eax, dword [ebp - 0x2e8c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd1f8]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2e88], ecx
jmp 0x4a8c67
mov dword [ebp - 0x2e88], 8
mov edx, dword [ebp - 0x2e74]
shl edx, 2
add edx, dword [ebp - 0x2e70]
mov eax, dword [ebp - 0x2e88]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2e74]
shl ecx, 2
add ecx, dword [ebp - 0x2e70]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a8f5a
xor eax, eax
je 0x4a8ccc
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a8d08
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d68]
movsd qword [ebp - 0xd210], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a8ea8
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a8ea8
mov dword [ebp - 0x2e90], 0
jmp fcn.004a8d87
mov ecx, 2
test ecx, ecx
je 0x4a8f28
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2e98], eax
cvtsi2sd xmm0, dword [ebp - 0x2e98]
mov eax, dword [ebp - 0x2e98]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd210]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2e94], ecx
jmp 0x4a8f32
mov dword [ebp - 0x2e94], 8
mov edx, dword [ebp - 0x2e74]
shl edx, 2
add edx, dword [ebp - 0x2e70]
mov eax, dword [ebp - 0x2e94]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2e74]
shl ecx, 2
add ecx, dword [ebp - 0x2e70]
mov dword [ecx], eax
mov edx, dword [ebp - 0x2e74]
add edx, 0xffffffcf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xd228], xmm0
xor eax, eax
je 0x4a8f74
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4a8fb0
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xd228]
movsd qword [ebp - 0xd230], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a9150
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a9150
mov dword [ebp - 0x2e9c], 0
jmp fcn.004a902f
mov ecx, 2
test ecx, ecx
je 0x4a91d0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2ea4], eax
cvtsi2sd xmm0, dword [ebp - 0x2ea4]
mov eax, dword [ebp - 0x2ea4]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd230]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2ea0], ecx
jmp 0x4a91da
mov dword [ebp - 0x2ea0], 8
mov edx, dword [ebp - 0x2e74]
add edx, 0xffffffcf
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xd248], xmm0
xor eax, eax
je 0x4a91f4
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a9768
xor eax, eax
je 0x4a94da
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a9516
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d60]
movsd qword [ebp - 0xd268], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
retf 0xff2
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a96b6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a96b6
mov dword [ebp - 0x2eb4], 0
jmp 0x4a9595
cmp dword [ebp - 0x2eb4], 0xf
jae 0x4a96b1
mov ecx, 2
test ecx, ecx
je 0x4a9736
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2ebc], eax
cvtsi2sd xmm0, dword [ebp - 0x2ebc]
mov eax, dword [ebp - 0x2ebc]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd268]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2eb8], ecx
jmp 0x4a9740
mov dword [ebp - 0x2eb8], 8
mov edx, dword [ebp - 0x2e74]
shl edx, 2
add edx, dword [ebp - 0x2e70]
mov eax, dword [ebp - 0x2eb8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2e74]
shl ecx, 2
add ecx, dword [ebp - 0x2e70]
mov dword [ecx], eax
jmp 0x4a8698
mov edx, dword [ebp - 0x2e6c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2e6c]
mov dword [ebp - 0x2ec0], eax
mov ecx, dword [ebp - 0x2ec0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2ec4], ecx
mov edx, dword [ebp - 0x2ec4]
mov dword [ebp - 0x2ec8], edx
xor eax, eax
mov byte [ebp - 0x84], al
lea ecx, [ebp - 0x84]
call fcn.00424a80
mov dword [ebp - 0x2ecc], eax
mov ecx, dword [ebp - 0x2ecc]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4aa8be
mov eax, dword [ebp - 0x2ecc]
mov dword [ebp - 0x2ed0], eax
mov dword [ebp - 0x2ed4], 0
jmp 0x4a97f8
mov ecx, dword [ebp - 0x2ed4]
add ecx, 1
mov dword [ebp - 0x2ed4], ecx
cmp dword [ebp - 0x2ed4], 1
jae 0x4aa8be
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a9ad0
xor eax, eax
je 0x4a9842
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a987e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d70]
movsd qword [ebp - 0xd280], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
retf 0xff2
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a9a1e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a9a1e
mov dword [ebp - 0x2ed8], 0
jmp 0x4a98fd
cmp dword [ebp - 0x2ed8], 0xf
jae 0x4a9a19
cvtsi2sd xmm0, dword [ebp - 0x2ed8]
movsd xmm1, qword [ebp - 0xd280]
addsd xmm1, xmm0
movsd qword [ebp - 0xd288], xmm1
call fcn.005e8010
movsx eax, al
cvtsi2sd xmm0, eax
movsd xmm1, qword [ebp - 0xd288]
ucomisd xmm1, xmm0
lahf
test ah, 0x44
jp 0x4a996c
jmp 0x4a9868
mov ecx, 2
test ecx, ecx
je 0x4a9a9e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2ee0], eax
cvtsi2sd xmm0, dword [ebp - 0x2ee0]
mov eax, dword [ebp - 0x2ee0]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd280]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2edc], ecx
jmp 0x4a9aa8
mov dword [ebp - 0x2edc], 8
mov edx, dword [ebp - 0x2ed4]
shl edx, 2
add edx, dword [ebp - 0x2ed0]
mov eax, dword [ebp - 0x2edc]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2ed4]
shl ecx, 2
add ecx, dword [ebp - 0x2ed0]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4aa5ee
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4a9de0
xor eax, eax
je 0x4a9b52
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a9b8e
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d68]
movsd qword [ebp - 0xd298], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a9d2e
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a9d2e
mov dword [ebp - 0x2ee4], 0
jmp fcn.004a9c0d
mov ecx, 2
test ecx, ecx
je 0x4a9dae
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2eec], eax
cvtsi2sd xmm0, dword [ebp - 0x2eec]
mov eax, dword [ebp - 0x2eec]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd298]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2ee8], ecx
jmp 0x4a9db8
mov dword [ebp - 0x2ee8], 8
mov edx, dword [ebp - 0x2ed4]
shl edx, 2
add edx, dword [ebp - 0x2ed0]
mov eax, dword [ebp - 0x2ee8]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2ed4]
shl ecx, 2
add ecx, dword [ebp - 0x2ed0]
mov dword [ecx], eax
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4aa0ab
xor eax, eax
je 0x4a9e1d
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4a9e59
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d60]
movsd qword [ebp - 0xd2b0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
retf 0xff2
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4a9ff9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4a9ff9
mov ecx, 2
test ecx, ecx
je 0x4aa079
mov edx, dword [ebp - 0x2ed4]
add edx, 0xffffffd0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xd2c8], xmm0
xor eax, eax
je 0x4aa0c5
add byte [edi], cl
mov esi, 0x770a9005
add byte [edi], cl
mov esi, 0x770a930d
add cl, dl
loope 0x4aa101
movsx eax, byte [0x770a90]
movsx ecx, byte [0x770a93]
shl ecx, 1
sub eax, ecx
cvtsi2sd xmm0, eax
sal edx, 0xf
sub al, al
mulsd xmm0, qword [ebp - 0xd2c8]
movsd qword [ebp - 0xd2d0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4aa2a1
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4aa2a1
mov ecx, 2
test ecx, ecx
je 0x4aa321
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4aa8b9
xor eax, eax
je 0x4aa62b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4aa667
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d58]
movsd qword [ebp - 0xd308], xmm0
retf 0xff2
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4aa807
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4aa807
mov dword [ebp - 0x2f14], 0
jmp fcn.004aa6e6
mov ecx, 2
test ecx, ecx
je 0x4aa887
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2f1c], eax
cvtsi2sd xmm0, dword [ebp - 0x2f1c]
mov eax, dword [ebp - 0x2f1c]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd308]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2f18], ecx
jmp 0x4aa891
mov dword [ebp - 0x2f18], 8
mov edx, dword [ebp - 0x2ed4]
shl edx, 2
add edx, dword [ebp - 0x2ed0]
mov eax, dword [ebp - 0x2f18]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2ed4]
shl ecx, 2
add ecx, dword [ebp - 0x2ed0]
mov dword [ecx], eax
jmp 0x4a97e9
mov edx, dword [ebp - 0x2ecc]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2ecc]
mov dword [ebp - 0x2f20], eax
mov ecx, dword [ebp - 0x2f20]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2f24], ecx
mov edx, dword [ebp - 0x2f24]
mov dword [ebp - 0x2f28], edx
mov eax, dword [ebp - 0x2ec8]
mov dword [ebp - 0x2e68], eax
cmp dword [ebp - 0x2e68], 0
je 0x4aba61
xor ecx, ecx
mov byte [ebp - 0x85], cl
lea ecx, [ebp - 0x85]
call fcn.00424a50
mov dword [ebp - 0x2f2c], eax
mov edx, dword [ebp - 0x2f2c]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x4aba28
mov ecx, dword [ebp - 0x2f2c]
mov dword [ebp - 0x2f30], ecx
mov dword [ebp - 0x2f34], 0
jmp 0x4aa962
mov edx, dword [ebp - 0x2f34]
add edx, 1
mov dword [ebp - 0x2f34], edx
cmp dword [ebp - 0x2f34], 1
jae 0x4aba28
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4aac3a
xor eax, eax
je 0x4aa9ac
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x4aa9e8
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736d70]
movsd qword [ebp - 0xd320], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4aab88
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4aab88
mov dword [ebp - 0x2f38], 0
jmp fcn.004aaa67
mov ecx, 2
test ecx, ecx
je 0x4aac08
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx eax, al
imul edi, eax, 7
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
mov dword [ebp - 0x2f40], eax
cvtsi2sd xmm0, dword [ebp - 0x2f40]
mov eax, dword [ebp - 0x2f40]
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x736fd0]
movsd xmm1, qword [ebp - 0xd320]
mulsd xmm1, xmm0
cvttsd2si ecx, xmm1
mov dword [ebp - 0x2f3c], ecx
jmp 0x4aac12
mov dword [ebp - 0x2f3c], 8
mov edx, dword [ebp - 0x2f34]
shl edx, 2
add edx, dword [ebp - 0x2f30]
mov eax, dword [ebp - 0x2f3c]
xor eax, dword [edx]
mov ecx, dword [ebp - 0x2f34]
shl ecx, 2
add ecx, dword [ebp - 0x2f30]
mov dword [ecx], eax
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4ab758
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4aaf4a
xor eax, eax
je 0x4aacbc
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4aacf8
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d68]
movsd qword [ebp - 0xd338], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4aae98
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4ab215
xor eax, eax
je 0x4aaf87
mov edx, dword [ebp - 0x2f34]
add edx, 0xffffffd0
cvtsi2sd xmm0, edx
movsd qword [ebp - 0xd368], xmm0
xor eax, eax
je 0x4ab22f
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4aba23
xor eax, eax
je 0x4ab795
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4ab7d1
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d58]
movsd qword [ebp - 0xd3a8], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4ab971
jmp 0x4aa953
mov edx, dword [ebp - 0x2f2c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2f2c]
mov dword [ebp - 0x2f80], eax
mov ecx, dword [ebp - 0x2f80]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2f84], ecx
mov edx, dword [ebp - 0x2f84]
mov dword [ebp - 0x2f28], edx
cmp dword [ebp - 0x2e08], 0
jne 0x4b8af0
xor eax, eax
mov byte [ebp - 0x86], al
lea ecx, [ebp - 0x86]
call fcn.00424a20
mov dword [ebp - 0x2f88], eax
mov ecx, dword [ebp - 0x2f88]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4acb86
mov eax, dword [ebp - 0x2f88]
mov dword [ebp - 0x2f8c], eax
mov dword [ebp - 0x2f90], 0
jmp 0x4abac0
cmp dword [ebp - 0x2f90], 1
jae 0x4acb86
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4abd98
xor eax, eax
je 0x4abb0a
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4abb46
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d68]
movsd qword [ebp - 0xd3c0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
retf 0xff2
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4abce6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4abce6
mov ecx, 2
test ecx, ecx
je 0x4abd66
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4ac8b6
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4ac0a8
xor eax, eax
je 0x4abe1a
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4ac373
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4acb81
xor eax, eax
je 0x4ac8f3
jmp fcn.004abab1
mov edx, dword [ebp - 0x2f88]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2f88]
mov dword [ebp - 0x2fdc], eax
mov ecx, dword [ebp - 0x2fdc]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x2fe0], ecx
mov edx, dword [ebp - 0x2fe0]
mov dword [ebp - 0x2fe4], edx
xor eax, eax
mov byte [ebp - 0x87], al
lea ecx, [ebp - 0x87]
call fcn.004249f0
mov dword [ebp - 0x2fe8], eax
mov ecx, dword [ebp - 0x2fe8]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4adcd7
mov eax, dword [ebp - 0x2fe8]
mov dword [ebp - 0x2fec], eax
mov dword [ebp - 0x2ff0], 0
jmp 0x4acc11
cmp dword [ebp - 0x2ff0], 1
jae 0x4adcd7
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4acee9
xor eax, eax
je 0x4acc5b
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4acc97
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d68]
movsd qword [ebp - 0xd460], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4ace37
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4ada07
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4ad1f9
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4adcd2
mov edx, dword [ebp - 0x2fe8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x2fe8]
mov dword [ebp - 0x303c], eax
mov ecx, dword [ebp - 0x303c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x3040], ecx
mov edx, dword [ebp - 0x3040]
mov dword [ebp - 0x3044], edx
xor eax, eax
mov byte [ebp - 0x88], al
lea ecx, [ebp - 0x88]
call fcn.004249c0
mov dword [ebp - 0x3048], eax
mov ecx, dword [ebp - 0x3048]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4aee28
mov eax, dword [ebp - 0x3048]
mov dword [ebp - 0x304c], eax
mov dword [ebp - 0x3050], 0
jmp 0x4add62
cmp dword [ebp - 0x3050], 1
jae 0x4aee28
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4ae03a
xor eax, eax
je 0x4addac
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4aeb58
mov edx, dword [ebp - 0x3048]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x3048]
mov dword [ebp - 0x309c], eax
mov ecx, dword [ebp - 0x309c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x30a0], ecx
mov edx, dword [ebp - 0x30a0]
mov dword [ebp - 0x30a4], edx
mov eax, dword [ebp - 0x3044]
mov dword [ebp - 0x2fe4], eax
cmp dword [ebp - 0x2fe4], 0
je 0x4affcb
xor ecx, ecx
mov byte [ebp - 0x89], cl
lea ecx, [ebp - 0x89]
call fcn.00424990
mov dword [ebp - 0x30a8], eax
mov edx, dword [ebp - 0x30a8]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x4aff92
mov ecx, dword [ebp - 0x30a8]
mov dword [ebp - 0x30ac], ecx
mov dword [ebp - 0x30b0], 0
jmp 0x4aeecc
cmp dword [ebp - 0x30b0], 1
jae 0x4aff92
mov edx, dword [ebp - 0x30a8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x30a8]
mov dword [ebp - 0x30fc], eax
mov ecx, dword [ebp - 0x30fc]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x3100], ecx
mov edx, dword [ebp - 0x3100]
mov dword [ebp - 0x30a4], edx
mov eax, dword [ebp - 0x16620]
mov dword [ebp - 0x3104], eax
push 0xa
push 0x86c5b0af
push 0xf
push 0
call fcn.005d0d50
add esp, 0x10
mov dword [ebp - 0x3108], eax
push 0
mov ecx, dword [ebp - 0x3104]
push ecx
call dword [ebp - 0x3108]
nop
xor edx, edx
mov byte [ebp - 0x8a], dl
lea ecx, [ebp - 0x8a]
call fcn.00424960
mov dword [ebp - 0x310c], eax
mov eax, dword [ebp - 0x310c]
movzx ecx, byte [eax + 4]
test ecx, ecx
jne 0x4b1118
mov edx, dword [ebp - 0x310c]
mov dword [ebp - 0x3110], edx
mov dword [ebp - 0x3114], 0
jmp 0x4b0052
cmp dword [ebp - 0x3114], 1
jae 0x4b1118
mov edx, dword [ebp - 0x310c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x310c]
mov dword [ebp - 0x3160], eax
mov ecx, dword [ebp - 0x3160]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x3164], ecx
mov edx, dword [ebp - 0x3164]
mov dword [ebp - 0x3168], edx
xor eax, eax
mov byte [ebp - 0x8b], al
lea ecx, [ebp - 0x8b]
call fcn.00424930
mov dword [ebp - 0x316c], eax
mov ecx, dword [ebp - 0x316c]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4b2269
mov eax, dword [ebp - 0x316c]
mov dword [ebp - 0x3170], eax
mov dword [ebp - 0x3174], 0
jmp loc.004b11a3
mov edx, dword [ebp - 0x316c]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x316c]
mov dword [ebp - 0x31c0], eax
mov ecx, dword [ebp - 0x31c0]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x31c4], ecx
mov edx, dword [ebp - 0x31c4]
mov dword [ebp - 0x31c8], edx
xor eax, eax
mov byte [ebp - 0x8c], al
lea ecx, [ebp - 0x8c]
call fcn.00424900
mov dword [ebp - 0x31cc], eax
mov ecx, dword [ebp - 0x31cc]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4b33ba
xor ecx, ecx
mov byte [ebp - 0x92], cl
lea ecx, [ebp - 0x92]
call fcn.004247e0
mov dword [ebp - 0x3408], eax
mov edx, dword [ebp - 0x3408]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x4b9c08
mov ecx, dword [ebp - 0x3408]
mov dword [ebp - 0x340c], ecx
mov dword [ebp - 0x3410], 0
jmp 0x4b8b42
cmp dword [ebp - 0x3410], 1
jae 0x4b9c08
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 3
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4b8e1a
xor eax, eax
je 0x4b8b8c
add byte [edi], cl
mov esi, 0x770a9015
add byte [edi], cl
mov esi, 0x770a9305
add cl, dl
loopne 0x4b8bc8
movsx edx, byte [0x770a90]
movsx eax, byte [0x770a93]
shl eax, 1
sub edx, eax
cvtsi2sd xmm0, edx
sal dl, 1
cvtpi2ps xmm0, mm2
mulsd xmm0, qword [0x736d48]
movsd qword [ebp - 0xdb40], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx ecx, al
add esi, ecx
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx edx, al
imul edi, edx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4b8d68
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
imul edx, ecx, 6
movsx eax, byte [0x7862ac]
imul edx, eax
add esi, edx
call fcn.005e7fb0
movsx ecx, al
sub esi, ecx
je 0x4b8d68
mov ecx, 2
test ecx, ecx
je 0x4b8de8
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4b9938
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4b912a
xor eax, eax
je 0x4b8e9c
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4b93f5
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4b9c03
xor eax, eax
je 0x4b9975
jmp fcn.004b8b33
mov edx, dword [ebp - 0x3408]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x3408]
mov dword [ebp - 0x345c], eax
mov ecx, dword [ebp - 0x345c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x3460], ecx
mov edx, dword [ebp - 0x3460]
mov dword [ebp - 0x3464], edx
xor eax, eax
mov byte [ebp - 0x93], al
lea ecx, [ebp - 0x93]
call fcn.004247b0
mov dword [ebp - 0x3468], eax
mov ecx, dword [ebp - 0x3468]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4bad59
mov eax, dword [ebp - 0x3468]
mov dword [ebp - 0x346c], eax
mov dword [ebp - 0x3470], 0
jmp 0x4b9c93
cmp dword [ebp - 0x3470], 1
jae 0x4bad59
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4b9f6b
xor eax, eax
je 0x4b9cdd
add byte [edi], cl
mov esi, 0x770a900d
add byte [edi], cl
mov esi, 0x770a9315
add cl, dl
loop 0x4b9d19
movsx ecx, byte [0x770a90]
movsx edx, byte [0x770a93]
shl edx, 1
sub ecx, edx
cvtsi2sd xmm0, ecx
mulsd xmm0, qword [0x736d48]
movsd qword [ebp - 0xdbe0], xmm0
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx eax, al
add esi, eax
call fcn.005e7ff0
movsx edi, al
call fcn.005e8010
movsx ecx, al
imul edi, ecx
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4b9eb9
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4baa89
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx eax, al
add esi, eax
call fcn.005e7fe0
movsx ecx, al
shl ecx, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4ba27b
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 9
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4bad54
mov edx, dword [ebp - 0x3468]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x3468]
mov dword [ebp - 0x34bc], eax
mov ecx, dword [ebp - 0x34bc]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x34c0], ecx
mov edx, dword [ebp - 0x34c0]
mov dword [ebp - 0x34c4], edx
xor eax, eax
mov byte [ebp - 0x94], al
lea ecx, [ebp - 0x94]
call fcn.00424780
mov dword [ebp - 0x34c8], eax
mov ecx, dword [ebp - 0x34c8]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4bbeaa
mov eax, dword [ebp - 0x34c8]
mov dword [ebp - 0x34cc], eax
mov dword [ebp - 0x34d0], 0
jmp 0x4bade4
cmp dword [ebp - 0x34d0], 1
jae 0x4bbeaa
movsx esi, byte [0x770a93]
call fcn.005e7fd0
movsx edx, al
add esi, edx
call fcn.005e7fe0
movsx eax, al
imul ecx, eax, 3
movsx edx, byte [0x7862ac]
imul ecx, edx
add esi, ecx
call fcn.005e7fb0
movsx eax, al
sub esi, eax
je 0x4bb0bc
xor eax, eax
je 0x4bae2e
movsx esi, byte [0x770a91]
call fcn.005e7fc0
movsx edx, al
add esi, edx
call fcn.005e7ff0
movsx edi, al
shl edi, 2
call fcn.005e8010
movsx eax, al
imul edi, eax
add esi, edi
movsx ecx, byte [0x770a92]
mov eax, esi
xor edx, edx
div ecx
movsx edx, byte [0x770a98]
sub eax, edx
je 0x4bbbda
mov edx, dword [ebp - 0x34c8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x34c8]
mov dword [ebp - 0x351c], eax
mov ecx, dword [ebp - 0x351c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x3520], ecx
mov edx, dword [ebp - 0x3520]
mov dword [ebp - 0x3524], edx
mov eax, dword [ebp - 0x34c4]
mov dword [ebp - 0x3464], eax
cmp dword [ebp - 0x3464], 0
je 0x4bd04d
xor ecx, ecx
mov byte [ebp - 0x95], cl
lea ecx, [ebp - 0x95]
call fcn.00424750
mov dword [ebp - 0x3528], eax
mov edx, dword [ebp - 0x3528]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x4bd014
mov ecx, dword [ebp - 0x3528]
mov dword [ebp - 0x352c], ecx
mov dword [ebp - 0x3530], 0
jmp 0x4bbf4e
cmp dword [ebp - 0x3530], 1
jae 0x4bd014
mov edx, dword [ebp - 0x3528]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x3528]
mov dword [ebp - 0x357c], eax
mov ecx, dword [ebp - 0x357c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x3580], ecx
mov edx, dword [ebp - 0x3580]
mov dword [ebp - 0x3524], edx
mov eax, dword [ebp - 0x2e08]
cdq
mov ecx, dword [ebp - 0x47c]
add ecx, 0x18
sub eax, dword [ecx + 0x1c]
mov dword [ebp - 0x3584], eax
xor edx, edx
mov byte [ebp - 0x96], dl
lea ecx, [ebp - 0x96]
call fcn.00424720
mov dword [ebp - 0x3588], eax
mov eax, dword [ebp - 0x3588]
movzx ecx, byte [eax + 4]
test ecx, ecx
jne 0x4be17e
mov edx, dword [ebp - 0x3588]
mov dword [ebp - 0x358c], edx
mov dword [ebp - 0x3590], 0
jmp 0x4bd0b8
cmp dword [ebp - 0x3590], 1
jae 0x4be17e
mov edx, dword [ebp - 0x3588]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x3588]
mov dword [ebp - 0x35dc], eax
mov ecx, dword [ebp - 0x35dc]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x35e0], ecx
mov edx, dword [ebp - 0x35e0]
mov dword [ebp - 0x35e4], edx
xor eax, eax
mov byte [ebp - 0x97], al
lea ecx, [ebp - 0x97]
call fcn.004246f0
mov dword [ebp - 0x35e8], eax
mov ecx, dword [ebp - 0x35e8]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4bf2cf
mov eax, dword [ebp - 0x35e8]
mov dword [ebp - 0x35ec], eax
mov dword [ebp - 0x35f0], 0
jmp loc.004be209
mov edx, dword [ebp - 0x35e8]
mov byte [edx + 4], 1
mov eax, dword [ebp - 0x35e8]
mov dword [ebp - 0x363c], eax
mov ecx, dword [ebp - 0x363c]
mov edx, 4
imul eax, edx, 0
mov ecx, dword [ecx + eax]
mov dword [ebp - 0x3640], ecx
mov edx, dword [ebp - 0x3640]
mov dword [ebp - 0x3644], edx
xor eax, eax
mov byte [ebp - 0x98], al
lea ecx, [ebp - 0x98]
call fcn.004246c0
mov dword [ebp - 0x3648], eax
mov ecx, dword [ebp - 0x3648]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x4c0420
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret