Function at 0x140006480
Capabilities:
Set console window title

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x2e8]
sub rsp, 0x3c0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
mov rax, qword [0x140041040]
xor rax, rsp
mov qword [rbp + 0x250], rax
xor edi, edi
mov byte [rsp + 0x68], dil
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x68]
call fcn.1400156b0
mov r14, rax
mov esi, 4
movsd xmm7, qword [0x140037e60]
movsd xmm8, qword [0x140037e58]
movsd xmm9, qword [0x140037e50]
cmp byte [rax], dil
jne 0x14000750e
mov dword [rsp + 0x20], edi
mov eax, dword [rsp + 0x20]
movsd xmm6, qword [0x140037e68]
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140006846
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000661e
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000661e
mov edi, esi
mov dword [rsp + 0x60], esi
jmp 0x1400066c5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400066c1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x60], edi
jmp 0x1400066c5
mov edi, dword [rsp + 0x60]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140006777
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140006777
mov dword [rsp + 0x40], esi
jmp 0x140006818
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140006818
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x40], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x40]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400071f1
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140006ba0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140006978
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140006978
mov edi, esi
mov dword [rsp + 0x48], esi
jmp 0x140006a1f
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140006a1b
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x48], edi
jmp 0x140006a1f
mov edi, dword [rsp + 0x48]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140006ad1
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140006ad1
mov dword [rsp + 0x4c], esi
jmp 0x140006b72
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140006b72
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x4c], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x4c]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140006eb6
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140006c8d
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140006c8d
mov edi, esi
mov dword [rsp + 0x44], esi
jmp 0x140006d34
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140006d30
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x44], edi
jmp 0x140006d34
mov edi, dword [rsp + 0x44]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140006de7
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140006de7
mov dword [rsp + 0x50], esi
jmp 0x140006e88
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140006e88
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400071f1
mov eax, dword [rsp + 0x20]
sub eax, 0x5e
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140006fc0
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140006fc0
mov edi, esi
mov dword [rsp + 0x58], esi
jmp 0x140007067
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007063
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x58], edi
jmp 0x140007067
mov edi, dword [rsp + 0x58]
mov eax, dword [rsp + 0x20]
sub eax, 0x5e
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007127
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140007127
mov r15d, esi
jmp 0x1400071c5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400071c5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, r15b
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400074f5
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400072db
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400072db
mov r13d, esi
jmp 0x140007379
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007379
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000742b
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000742b
mov r12d, esi
jmp 0x1400074c9
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400074c9
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, r12b
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r13b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 0xc
jb 0x140006535
xor edi, edi
mov byte [r14], 1
lea rdx, [r14 + 1]
lea rcx, [rbp - 0x80]
call fcn.140001710
nop
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x230]
call fcn.140004ba0
nop
lea rcx, [rbp - 0x80]
call fcn.1400016b0
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008932
mov byte [rsp + 0x69], 0
lea rdx, [rbp + 0x1e0]
lea rcx, [rsp + 0x69]
call fcn.140015830
mov r14, rax
cmp byte [rax], 0
jne 0x1400085a1
mov dword [rsp + 0x20], edi
mov eax, dword [rsp + 0x20]
cmp eax, 0x41
jae 0x1400085a1
movsd xmm6, qword [0x140037e48]
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
nop dword [rax]
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400078cf
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400076b6
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400076b6
mov r13d, esi
jmp 0x140007754
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007754
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007805
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140007805
mov r15d, esi
jmp 0x1400078a3
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400078a3
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, r15b
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r13b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008276
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140007c2b
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007a02
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140007a02
mov edi, esi
mov dword [rsp + 0x58], esi
jmp 0x140007aa9
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007aa5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x58], edi
jmp 0x140007aa9
mov edi, dword [rsp + 0x58]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007b5c
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140007b5c
mov dword [rsp + 0x50], esi
jmp 0x140007bfd
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007bfd
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140007f35
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007d15
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140007d15
mov r12d, esi
jmp 0x140007db3
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007db3
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r12d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007e66
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140007e66
mov dword [rsp + 0x44], esi
jmp 0x140007f07
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140007f07
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x44], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x44]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r12b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008276
mov eax, dword [rsp + 0x20]
sub eax, 0x5d
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000803f
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000803f
mov edi, esi
mov dword [rsp + 0x4c], esi
jmp 0x1400080e6
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400080e2
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x4c], edi
jmp 0x1400080e6
mov edi, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x20]
sub eax, 0x5d
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400081a7
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400081a7
mov dword [rsp + 0x48], esi
jmp 0x140008248
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008248
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x48], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x48]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000858a
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008362
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140008362
mov edi, esi
mov dword [rsp + 0x40], esi
jmp 0x140008409
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008405
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x40], edi
jmp 0x140008409
mov edi, dword [rsp + 0x40]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400084bb
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400084bb
mov dword [rsp + 0x60], esi
jmp 0x14000855c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000855c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 0x41
jb 0x1400075d0
mov byte [r14], 1
lea rdx, [r14 + 1]
lea rcx, [rbp + 0x230]
call fcn.140019a60
xor al, 1
movzx eax, al
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008672
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140008672
mov edi, esi
jmp 0x140008715
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008711
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
jmp 0x140008715
mov edi, dword [rsp + 0x28]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
imul r8d, edi
test r8d, r8d
je 0x140008932
lea rdx, str.Check_Integrity_FAILED_
lea rcx, [rbp - 0x30]
call fcn.140001710
mov rcx, rax
call fcn.1400040f0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_istream_char__struct_std::char_traits_char__::get_void____ptr64]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008883
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
jne 0x140015632
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008922
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
jmp 0x140008926
mov eax, dword [rsp + 0x28]
xor ebx, ebx
cmp ebx, eax
jl 0x140015632
jmp 0x140008934
xor ebx, ebx
mov byte [rsp + 0x6a], 0
lea rdx, [rbp + 0x130]
lea rcx, [rsp + 0x6a]
call fcn.1400159d0
mov r14, rax
movsd xmm7, qword [0x140037e38]
movsd xmm9, qword [0x140037e30]
movsd xmm10, qword [0x140037e28]
cmp byte [rax], 0
jne 0x14000997f
mov dword [rsp + 0x20], ebx
mov eax, dword [rsp + 0x20]
cmp eax, 0xd
jae 0x14000997f
movsd xmm6, qword [0x140037e40]
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140008c9c
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008a7e
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140008a7e
mov r15d, esi
jmp 0x140008b1c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008b1c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r15d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008bcd
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140008bcd
mov r12d, esi
jmp 0x140008c6b
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008c6b
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, word [r14 + rax*2 + 2]
and r8w, r12w
add r8w, r8w
movsxd rax, dword [rsp + 0x20]
movzx edx, word [r14 + rax*2 + 2]
sub dx, r8w
add dx, r15w
movsxd rax, dword [rsp + 0x20]
mov word [r14 + rax*2 + 2], dx
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000964e
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140008fef
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008dcb
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140008dcb
mov r13d, esi
jmp 0x140008e69
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008e69
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008f1b
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140008f1b
mov dword [rsp + 0x58], esi
jmp 0x140008fbc
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140008fbc
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, word [r14 + rax*2 + 2]
and r8w, word [rsp + 0x58]
add r8w, r8w
movsxd rax, dword [rsp + 0x20]
movzx edx, word [r14 + rax*2 + 2]
sub dx, r8w
add dx, r13w
movsxd rax, dword [rsp + 0x20]
mov word [r14 + rax*2 + 2], dx
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140009309
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400090dc
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400090dc
mov edi, esi
mov dword [rsp + 0x50], esi
jmp 0x140009183
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000917f
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x50], edi
jmp 0x140009183
mov edi, dword [rsp + 0x50]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140009236
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140009236
mov dword [rsp + 0x44], esi
jmp 0x1400092d7
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400092d7
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x44], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, word [r14 + rax*2 + 2]
and r8w, word [rsp + 0x44]
add r8w, r8w
movsxd rax, dword [rsp + 0x20]
movzx edx, word [r14 + rax*2 + 2]
sub dx, r8w
add dx, di
movsxd rax, dword [rsp + 0x20]
mov word [r14 + rax*2 + 2], dx
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000964e
mov eax, dword [rsp + 0x20]
sub eax, 0x59
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140009413
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140009413
mov edi, esi
mov dword [rsp + 0x4c], esi
jmp 0x1400094ba
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400094b6
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x4c], edi
jmp 0x1400094ba
mov edi, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x20]
sub eax, 0x59
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000957b
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000957b
mov dword [rsp + 0x48], esi
jmp 0x14000961c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000961c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x48], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, word [r14 + rax*2 + 2]
and r8w, word [rsp + 0x48]
add r8w, r8w
movsxd rax, dword [rsp + 0x20]
movzx edx, word [r14 + rax*2 + 2]
sub dx, r8w
add dx, di
movsxd rax, dword [rsp + 0x20]
mov word [r14 + rax*2 + 2], dx
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140009968
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000973b
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000973b
mov edi, esi
mov dword [rsp + 0x40], esi
jmp 0x1400097e2
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400097de
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x40], edi
jmp 0x1400097e2
mov edi, dword [rsp + 0x40]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140009895
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140009895
mov dword [rsp + 0x60], esi
jmp 0x140009936
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140009936
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, word [r14 + rax*2 + 2]
and r8w, word [rsp + 0x60]
add r8w, r8w
movsxd rax, dword [rsp + 0x20]
movzx edx, word [r14 + rax*2 + 2]
sub dx, r8w
add dx, di
movsxd rax, dword [rsp + 0x20]
mov word [r14 + rax*2 + 2], dx
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 0xd
jb 0x140008998
mov byte [r14], 1
lea rcx, [r14 + 2]
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleW]
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov byte [rsp + 0x6b], 0
lea rdx, [rbp + 0x118]
lea rcx, [rsp + 0x6b]
call fcn.140015b50
mov r14, rax
movsd xmm11, qword [0x140037e20]
cmp byte [rax], 0
jne 0x14000a9b3
mov dword [rsp + 0x20], 0
mov eax, dword [rsp + 0x20]
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
nop
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140009cdf
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140009ac6
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140009ac6
mov r15d, esi
jmp 0x140009b64
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140009b64
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r15d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140009c15
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140009c15
mov r12d, esi
jmp 0x140009cb3
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140009cb3
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, r12b
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r15b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a686
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000a02f
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140009e0f
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140009e0f
mov r13d, esi
jmp 0x140009ead
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140009ead
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140009f60
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140009f60
mov dword [rsp + 0x58], esi
jmp 0x14000a001
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a001
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r13b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000a345
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a11c
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000a11c
mov edi, esi
mov dword [rsp + 0x50], esi
jmp 0x14000a1c3
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a1bf
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x50], edi
jmp 0x14000a1c3
mov edi, dword [rsp + 0x50]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a276
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000a276
mov dword [rsp + 0x44], esi
jmp 0x14000a317
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a317
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x44], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x44]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a686
mov eax, dword [rsp + 0x20]
sub eax, 0x58
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a44f
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000a44f
mov edi, esi
mov dword [rsp + 0x4c], esi
jmp 0x14000a4f6
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a4f2
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x4c], edi
jmp 0x14000a4f6
mov edi, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x20]
sub eax, 0x58
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a5b7
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000a5b7
mov dword [rsp + 0x48], esi
jmp 0x14000a658
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a658
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x48], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x48]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000a99c
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a773
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000a773
mov edi, esi
mov dword [rsp + 0x40], esi
jmp 0x14000a81a
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a816
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x40], edi
jmp 0x14000a81a
mov edi, dword [rsp + 0x40]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a8cd
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000a8cd
mov dword [rsp + 0x60], esi
jmp 0x14000a96e
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000a96e
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 0x16
jb 0x1400099e0
mov byte [r14], 1
lea rdx, [r14 + 1]
lea rcx, [rbp - 0x10]
call fcn.140001710
mov rcx, rax
call fcn.1400041e0
mov ecx, 0x190
call qword [sym.imp.KERNEL32.dll_Sleep]
mov byte [rsp + 0x6c], 0
lea rdx, [rbp + 0xd0]
lea rcx, [rsp + 0x6c]
call fcn.140015ce0
mov r14, rax
movsd xmm8, qword [0x140037e18]
cmp byte [rax], 0
jne 0x14000ba0b
mov dword [rsp + 0x20], 0
mov eax, dword [rsp + 0x20]
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
nop dword [rax]
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000ad26
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ab07
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000ab07
mov r15d, esi
jmp 0x14000aba5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000aba5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r15d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ac57
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000ac57
mov r12d, esi
jmp 0x14000acf5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000acf5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, word [r14 + rax*2 + 2]
and r8w, r12w
add r8w, r8w
movsxd rax, dword [rsp + 0x20]
movzx edx, word [r14 + rax*2 + 2]
sub dx, r8w
add dx, r15w
movsxd rax, dword [rsp + 0x20]
mov word [r14 + rax*2 + 2], dx
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b6da
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000b07b
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ae56
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000ae56
mov r13d, esi
jmp 0x14000aef4
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000aef4
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000afa7
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000afa7
mov dword [rsp + 0x58], esi
jmp 0x14000b048
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b048
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, word [r14 + rax*2 + 2]
and r8w, word [rsp + 0x58]
add r8w, r8w
movsxd rax, dword [rsp + 0x20]
movzx edx, word [r14 + rax*2 + 2]
sub dx, r8w
add dx, r13w
movsxd rax, dword [rsp + 0x20]
mov word [r14 + rax*2 + 2], dx
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000b395
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b168
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000b168
mov edi, esi
mov dword [rsp + 0x50], esi
jmp 0x14000b20f
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b20b
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x50], edi
jmp 0x14000b20f
mov edi, dword [rsp + 0x50]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b2c2
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000b2c2
mov dword [rsp + 0x44], esi
jmp 0x14000b363
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b363
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x44], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, word [r14 + rax*2 + 2]
and r8w, word [rsp + 0x44]
add r8w, r8w
movsxd rax, dword [rsp + 0x20]
movzx edx, word [r14 + rax*2 + 2]
sub dx, r8w
add dx, di
movsxd rax, dword [rsp + 0x20]
mov word [r14 + rax*2 + 2], dx
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b6da
mov eax, dword [rsp + 0x20]
sub eax, 0x57
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b49f
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000b49f
mov edi, esi
mov dword [rsp + 0x4c], esi
jmp 0x14000b546
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b542
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x4c], edi
jmp 0x14000b546
mov edi, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x20]
sub eax, 0x57
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b607
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000b607
mov dword [rsp + 0x48], esi
jmp 0x14000b6a8
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b6a8
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x48], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, word [r14 + rax*2 + 2]
and r8w, word [rsp + 0x48]
add r8w, r8w
movsxd rax, dword [rsp + 0x20]
movzx edx, word [r14 + rax*2 + 2]
sub dx, r8w
add dx, di
movsxd rax, dword [rsp + 0x20]
mov word [r14 + rax*2 + 2], dx
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000b9f4
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b7c7
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000b7c7
mov edi, esi
mov dword [rsp + 0x40], esi
jmp 0x14000b86e
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b86a
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si edi, xmm0
mov dword [rsp + 0x40], edi
jmp 0x14000b86e
mov edi, dword [rsp + 0x40]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x28], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b921
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000b921
mov dword [rsp + 0x60], esi
jmp 0x14000b9c2
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000b9c2
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x28]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, word [r14 + rax*2 + 2]
and r8w, word [rsp + 0x60]
add r8w, r8w
movsxd rax, dword [rsp + 0x20]
movzx edx, word [r14 + rax*2 + 2]
sub dx, r8w
add dx, di
movsxd rax, dword [rsp + 0x20]
mov word [r14 + rax*2 + 2], dx
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 8
jb 0x14000aa20
mov byte [r14], 1
lea rcx, [r14 + 2]
call fcn.140005210
mov edi, eax
mov dword [rsp + 0x28], eax
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
movsd xmm9, qword [0x140037df0]
movsd xmm10, qword [0x140037de8]
cmp r8d, eax
je 0x14000e4ff
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
xor r15d, r15d
mov eax, r15d
test edi, edi
setg al
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x58], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000bb3c
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000bb3c
mov edi, esi
jmp 0x14000bbdf
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000bbdb
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si edi, xmm0
jmp 0x14000bbdf
mov edi, dword [rsp + 0x28]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
imul r8d, edi
test r8d, r8d
je 0x14000cc76
mov byte [rsp + 0x74], r15b
lea rdx, [rbp + 0x100]
lea rcx, [rsp + 0x74]
call fcn.140015e60
mov r14, rax
cmp byte [rax], r15b
jne 0x14000cc48
mov dword [rsp + 0x20], r15d
mov eax, dword [rsp + 0x20]
movsd xmm6, qword [0x140037e10]
movsd xmm7, qword [0x140037e08]
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000bf78
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000bd5e
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000bd5e
mov r15d, esi
jmp 0x14000bdfc
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000bdfc
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000beae
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000beae
mov r12d, esi
jmp 0x14000bf4c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000bf4c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, r12b
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r15b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c91d
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000c2c8
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c0a8
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000c0a8
mov r13d, esi
jmp 0x14000c146
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c146
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c1f9
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000c1f9
mov dword [rsp + 0x58], esi
jmp 0x14000c29a
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c29a
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r13b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000c5dc
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c3b4
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000c3b4
mov edi, esi
mov dword [rsp + 0x50], esi
jmp 0x14000c45b
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c457
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
mov dword [rsp + 0x50], edi
jmp 0x14000c45b
mov edi, dword [rsp + 0x50]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c50d
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000c50d
mov dword [rsp + 0x44], esi
jmp 0x14000c5ae
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c5ae
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x44], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x44]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c91d
mov eax, dword [rsp + 0x20]
sub eax, 0x55
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c6e6
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000c6e6
mov edi, esi
mov dword [rsp + 0x4c], esi
jmp 0x14000c78d
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c789
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
mov dword [rsp + 0x4c], edi
jmp 0x14000c78d
mov edi, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x20]
sub eax, 0x55
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c84e
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000c84e
mov dword [rsp + 0x48], esi
jmp 0x14000c8ef
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000c8ef
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x48], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x48]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000cc31
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ca09
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000ca09
mov edi, esi
mov dword [rsp + 0x40], esi
jmp 0x14000cab0
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000caac
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
mov dword [rsp + 0x40], edi
jmp 0x14000cab0
mov edi, dword [rsp + 0x40]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000cb62
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000cb62
mov dword [rsp + 0x60], esi
jmp 0x14000cc03
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000cc03
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 0x14
jb 0x14000bc77
mov byte [r14], 1
lea rdx, [r14 + 1]
lea rcx, [rbp + 0x10]
call fcn.140001710
movsxd rdx, dword [rsp + 0x28]
mov rcx, rax
call fcn.1400042d0
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x14000e4ff
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e4ff
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx eax, byte [0x14004123c]
add eax, edx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000cda9
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000cda9
mov edi, esi
jmp 0x14000ce4c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ce48
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
jmp 0x14000ce4c
mov edi, dword [rsp + 0x28]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
imul r8d, edi
test r8d, r8d
je 0x14000d314
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
addsd xmm1, xmm1
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000cf45
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
jne 0x14000cfb4
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000cfb4
movzx eax, byte [0x140041239]
call fcn.140004b10
call fcn.140004ae0
call fcn.140002d60
movzx eax, byte [0x140041238]
movzx eax, byte [0x14004123b]
movsd xmm0, qword [rsp + 0x38]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e4ff
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000d0f8
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000d0f8
mov r14d, esi
jmp 0x14000d19d
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000d198
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
jmp 0x14000d19d
mov r14d, dword [rsp + 0x28]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
imul r8d, r14d
test r8d, r8d
je 0x14000e4ff
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x140037d50]
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000d29c
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
jne 0x14000e4ff
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e4ff
movzx eax, byte [0x140041239]
call fcn.140004b10
call fcn.140004ae0
call fcn.140002d60
movzx eax, byte [0x140041238]
movzx eax, byte [0x14004123b]
movsd xmm0, qword [rsp + 0x38]
jmp 0x14000e4ff
mov byte [rsp + 0x6d], r15b
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x6d]
call fcn.140015fe0
mov r14, rax
cmp byte [rax], r15b
jne 0x14000e334
mov dword [rsp + 0x20], r15d
mov eax, dword [rsp + 0x20]
movsd xmm6, qword [0x140037e00]
movsd xmm7, qword [0x140037df8]
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
nop dword [rax + rax]
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000d65f
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000d446
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000d446
mov r15d, esi
jmp 0x14000d4e4
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000d4e4
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000d595
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000d595
mov r12d, esi
jmp 0x14000d633
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000d633
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, r12b
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r15b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e004
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000d9ad
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000d78e
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000d78e
mov r13d, esi
jmp 0x14000d82c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000d82c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000d8de
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000d8de
mov dword [rsp + 0x58], esi
jmp 0x14000d97f
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000d97f
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r13b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000dcc3
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000da9a
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000da9a
mov edi, esi
mov dword [rsp + 0x50], esi
jmp 0x14000db41
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000db3d
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
mov dword [rsp + 0x50], edi
jmp 0x14000db41
mov edi, dword [rsp + 0x50]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000dbf4
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000dbf4
mov dword [rsp + 0x44], esi
jmp 0x14000dc95
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000dc95
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x44], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x44]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e004
mov eax, dword [rsp + 0x20]
sub eax, 0x50
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ddcd
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000ddcd
mov edi, esi
mov dword [rsp + 0x4c], esi
jmp 0x14000de74
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000de70
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
mov dword [rsp + 0x4c], edi
jmp 0x14000de74
mov edi, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x20]
sub eax, 0x50
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000df35
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000df35
mov dword [rsp + 0x48], esi
jmp 0x14000dfd6
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000dfd6
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x48], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x48]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000e31a
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e0f1
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000e0f1
mov edi, esi
mov dword [rsp + 0x40], esi
jmp 0x14000e198
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e194
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
mov dword [rsp + 0x40], edi
jmp 0x14000e198
mov edi, dword [rsp + 0x40]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e24b
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000e24b
mov dword [rsp + 0x60], esi
jmp 0x14000e2ec
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e2ec
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 0xb
jb 0x14000d360
xor r15d, r15d
mov byte [r14], 1
lea rdx, [r14 + 1]
lea rcx, [rbp + 0x30]
call fcn.140001710
mov rcx, rax
call fcn.1400040f0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_istream_char__struct_std::char_traits_char__::get_void____ptr64]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e453
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
jne 0x140015632
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e4f2
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
jmp 0x14000e4f6
mov eax, dword [rsp + 0x28]
cmp r15d, eax
jl 0x140015632
mov byte [rsp + 0x6e], 0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x6e]
call fcn.140016150
mov r14, rax
movsd xmm6, qword [0x140037de0]
movsd xmm7, qword [0x140037dd8]
cmp byte [rax], 0
jne 0x14000f521
mov dword [rsp + 0x20], 0
mov eax, dword [rsp + 0x20]
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
nop dword [rax]
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000e851
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e637
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000e637
mov r15d, esi
jmp 0x14000e6d5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e6d5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e787
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000e787
mov r12d, esi
jmp 0x14000e825
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e825
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, r12b
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r15b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f1f6
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000eba1
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000e981
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000e981
mov r13d, esi
jmp 0x14000ea1f
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ea1f
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ead2
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000ead2
mov dword [rsp + 0x58], esi
jmp 0x14000eb73
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000eb73
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r13b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000eeb5
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ec8d
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000ec8d
mov edi, esi
mov dword [rsp + 0x50], esi
jmp 0x14000ed34
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ed30
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
mov dword [rsp + 0x50], edi
jmp 0x14000ed34
mov edi, dword [rsp + 0x50]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ede6
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000ede6
mov dword [rsp + 0x44], esi
jmp 0x14000ee87
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ee87
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x44], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x44]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f1f6
mov eax, dword [rsp + 0x20]
sub eax, 0x4e
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000efbf
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000efbf
mov edi, esi
mov dword [rsp + 0x4c], esi
jmp 0x14000f066
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f062
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
mov dword [rsp + 0x4c], edi
jmp 0x14000f066
mov edi, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x20]
sub eax, 0x4e
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f127
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000f127
mov dword [rsp + 0x48], esi
jmp 0x14000f1c8
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f1c8
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x48], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x48]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000f50a
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f2e2
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000f2e2
mov edi, esi
mov dword [rsp + 0x40], esi
jmp 0x14000f389
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f385
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
mov dword [rsp + 0x40], edi
jmp 0x14000f389
mov edi, dword [rsp + 0x40]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f43b
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000f43b
mov dword [rsp + 0x60], esi
jmp 0x14000f4dc
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f4dc
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 0xc
jb 0x14000e550
mov byte [r14], 1
lea rax, [r14 + 1]
mov qword [rsp + 0x30], rax
mov r8d, dword [rsp + 0x28]
xor edx, edx
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov r14, rax
mov qword [rsp + 0x60], rax
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013bed
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, r14
mulsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f647
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000f647
mov edi, esi
jmp 0x14000f6ea
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f6e6
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
jmp 0x14000f6ea
mov edi, dword [rsp + 0x28]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
imul r8d, edi
test r8d, r8d
je 0x140013d9b
mov byte [rsp + 0x6f], 0
lea rdx, [rbp + 0x180]
lea rcx, [rsp + 0x6f]
call fcn.1400162d0
mov r14, rax
movsd xmm8, qword [0x140037dd0]
movsd xmm9, qword [0x140037dc8]
cmp byte [rax], 0
jne 0x140010758
mov dword [rsp + 0x20], 0
mov eax, dword [rsp + 0x20]
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000fa86
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f86d
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000f86d
mov r15d, esi
jmp 0x14000f90b
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f90b
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000f9bc
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000f9bc
mov r12d, esi
jmp 0x14000fa5a
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000fa5a
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, r12b
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r15b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001042b
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000fdd4
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000fbb5
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000fbb5
mov r13d, esi
jmp 0x14000fc53
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000fc53
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000fd05
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000fd05
mov dword [rsp + 0x28], esi
jmp 0x14000fda6
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000fda6
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x28], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x28]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r13b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400100ea
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000fec1
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14000fec1
mov edi, esi
mov dword [rsp + 0x58], esi
jmp 0x14000ff68
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14000ff64
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
mov dword [rsp + 0x58], edi
jmp 0x14000ff68
mov edi, dword [rsp + 0x58]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001001b
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14001001b
mov dword [rsp + 0x50], esi
jmp 0x1400100bc
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400100bc
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001042b
mov eax, dword [rsp + 0x20]
sub eax, 0x4c
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400101f4
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400101f4
mov edi, esi
mov dword [rsp + 0x44], esi
jmp 0x14001029b
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010297
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
mov dword [rsp + 0x44], edi
jmp 0x14001029b
mov edi, dword [rsp + 0x44]
mov eax, dword [rsp + 0x20]
sub eax, 0x4c
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001035c
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14001035c
mov dword [rsp + 0x4c], esi
jmp 0x1400103fd
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400103fd
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x4c], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x4c]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140010741
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010518
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140010518
mov edi, esi
mov dword [rsp + 0x48], esi
jmp 0x1400105bf
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400105bb
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
mov dword [rsp + 0x48], edi
jmp 0x1400105bf
mov edi, dword [rsp + 0x48]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010672
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140010672
mov dword [rsp + 0x40], esi
jmp 0x140010713
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010713
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x40], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x40]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 0x2e
jb 0x14000f787
mov byte [r14], 1
lea rdx, [r14 + 1]
lea rcx, [rbp + 0x50]
call fcn.140001710
mov rcx, rax
call fcn.140004000
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rax, qword [rsp + 0x60]
mov qword [0x1400443b0], rax
mov rax, qword [rsp + 0x30]
mov qword [0x1400443a0], rax
mov byte [rsp + 0x70], 0
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x70]
call fcn.140016470
mov r14, rax
movsd xmm6, qword [0x140037dc0]
movsd xmm7, qword [0x140037db8]
xor r15d, r15d
cmp byte [rax], r15b
jne 0x1400117a7
mov dword [rsp + 0x20], r15d
mov eax, dword [rsp + 0x20]
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
nop
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140010adf
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400108c7
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400108c7
mov r15d, esi
jmp 0x140010965
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010965
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r15d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010a17
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140010a17
mov r12d, esi
jmp 0x140010ab5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010ab5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [r14 + rax*4 + 4]
and r8d, r12d
add r8d, r8d
movsxd rax, dword [rsp + 0x20]
mov edx, dword [r14 + rax*4 + 4]
sub edx, r8d
add edx, r15d
movsxd rax, dword [rsp + 0x20]
mov dword [r14 + rax*4 + 4], edx
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001147c
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140010e2d
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010c0f
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140010c0f
mov r13d, esi
jmp 0x140010cad
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010cad
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010d60
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140010d60
mov dword [rsp + 0x28], esi
jmp 0x140010e01
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010e01
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x28], eax
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [r14 + rax*4 + 4]
and r8d, dword [rsp + 0x28]
add r8d, r8d
movsxd rax, dword [rsp + 0x20]
mov edx, dword [r14 + rax*4 + 4]
sub edx, r8d
add edx, r13d
movsxd rax, dword [rsp + 0x20]
mov dword [r14 + rax*4 + 4], edx
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14001113e
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010f19
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140010f19
mov edi, esi
mov dword [rsp + 0x58], esi
jmp 0x140010fc0
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140010fbc
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
mov dword [rsp + 0x58], edi
jmp 0x140010fc0
mov edi, dword [rsp + 0x58]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011072
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140011072
mov dword [rsp + 0x50], esi
jmp 0x140011113
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011113
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [r14 + rax*4 + 4]
and r8d, dword [rsp + 0x50]
add r8d, r8d
movsxd rax, dword [rsp + 0x20]
mov edx, dword [r14 + rax*4 + 4]
sub edx, r8d
add edx, edi
movsxd rax, dword [rsp + 0x20]
mov dword [r14 + rax*4 + 4], edx
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001147c
mov eax, dword [rsp + 0x20]
sub eax, 0x4a
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011248
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140011248
mov edi, esi
mov dword [rsp + 0x44], esi
jmp 0x1400112ef
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400112eb
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
mov dword [rsp + 0x44], edi
jmp 0x1400112ef
mov edi, dword [rsp + 0x44]
mov eax, dword [rsp + 0x20]
sub eax, 0x4a
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400113b0
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400113b0
mov dword [rsp + 0x4c], esi
jmp 0x140011451
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011451
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x4c], eax
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [r14 + rax*4 + 4]
and r8d, dword [rsp + 0x4c]
add r8d, r8d
movsxd rax, dword [rsp + 0x20]
mov edx, dword [r14 + rax*4 + 4]
sub edx, r8d
add edx, edi
movsxd rax, dword [rsp + 0x20]
mov dword [r14 + rax*4 + 4], edx
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14001178d
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011568
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140011568
mov edi, esi
mov dword [rsp + 0x48], esi
jmp 0x14001160f
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001160b
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
mov dword [rsp + 0x48], edi
jmp 0x14001160f
mov edi, dword [rsp + 0x48]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400116c1
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400116c1
mov dword [rsp + 0x40], esi
jmp 0x140011762
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011762
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x40], eax
movsxd rax, dword [rsp + 0x20]
mov r8d, dword [r14 + rax*4 + 4]
and r8d, dword [rsp + 0x40]
add r8d, r8d
movsxd rax, dword [rsp + 0x20]
mov edx, dword [r14 + rax*4 + 4]
sub edx, r8d
add edx, edi
movsxd rax, dword [rsp + 0x20]
mov dword [r14 + rax*4 + 4], edx
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 1
jb 0x1400107e0
xor r15d, r15d
mov byte [r14], 1
mov eax, dword [r14 + 4]
lea rcx, [0x140041240]
call qword [rcx + rax*8]
movzx r14d, al
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
movsd xmm8, qword [0x140037db0]
movsd xmm9, qword [0x140037da8]
cmp r8d, eax
je 0x140012bac
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mov rax, r15
test r14b, r14b
sete al
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400118d7
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400118d7
mov edi, esi
jmp 0x14001197a
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011976
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
jmp 0x14001197a
mov edi, dword [rsp + 0x28]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
imul r8d, edi
test r8d, r8d
je 0x140012bac
mov byte [rsp + 0x71], 0
lea rdx, [rbp + 0xe8]
lea rcx, [rsp + 0x71]
call fcn.1400165e0
mov r14, rax
cmp byte [rax], 0
jne 0x1400129e4
mov dword [rsp + 0x20], r15d
mov eax, dword [rsp + 0x20]
cmp eax, 0x13
jae 0x1400129e4
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
nop dword [rax + rax]
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140011d0f
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011af6
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140011af6
mov r15d, esi
jmp 0x140011b94
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011b94
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r15d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011c45
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140011c45
mov r12d, esi
jmp 0x140011ce3
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011ce3
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, r12b
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r15b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400126b4
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14001205d
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011e3e
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140011e3e
mov r13d, esi
jmp 0x140011edc
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011edc
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140011f8e
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140011f8e
mov dword [rsp + 0x28], esi
jmp 0x14001202f
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001202f
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x28], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x28]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r13b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140012373
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001214a
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14001214a
mov edi, esi
mov dword [rsp + 0x58], esi
jmp 0x1400121f1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400121ed
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
mov dword [rsp + 0x58], edi
jmp 0x1400121f1
mov edi, dword [rsp + 0x58]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400122a4
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400122a4
mov dword [rsp + 0x50], esi
jmp 0x140012345
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140012345
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400126b4
mov eax, dword [rsp + 0x20]
sub eax, 0x48
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001247d
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14001247d
mov edi, esi
mov dword [rsp + 0x44], esi
jmp 0x140012524
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140012520
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
mov dword [rsp + 0x44], edi
jmp 0x140012524
mov edi, dword [rsp + 0x44]
mov eax, dword [rsp + 0x20]
sub eax, 0x48
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400125e5
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400125e5
mov dword [rsp + 0x4c], esi
jmp 0x140012686
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140012686
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x4c], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x4c]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400129ca
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400127a1
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400127a1
mov edi, esi
mov dword [rsp + 0x48], esi
jmp 0x140012848
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140012844
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
mov dword [rsp + 0x48], edi
jmp 0x140012848
mov edi, dword [rsp + 0x48]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400128fb
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400128fb
mov dword [rsp + 0x40], esi
jmp 0x14001299c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001299c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x40], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x40]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 0x13
jb 0x140011a10
xor r15d, r15d
mov byte [r14], 1
lea rdx, [r14 + 1]
lea rcx, [rbp + 0x70]
call fcn.140001710
mov rcx, rax
call fcn.1400040f0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_istream_char__struct_std::char_traits_char__::get_void____ptr64]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140012b00
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
jne 0x140015632
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140012b9f
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
jmp 0x140012ba3
mov eax, dword [rsp + 0x28]
cmp r15d, eax
jl 0x140015632
mov byte [rsp + 0x72], 0
lea rdx, [rbp + 0x1b0]
lea rcx, [rsp + 0x72]
call fcn.140016760
mov r14, rax
cmp byte [rax], 0
jne 0x140013bd1
mov dword [rsp + 0x20], r15d
mov eax, dword [rsp + 0x20]
cmp eax, 0x2e
jae 0x140013bd1
movsd xmm6, qword [0x140037da0]
movsd xmm7, qword [0x140037d98]
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
nop
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140012f01
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140012ce7
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140012ce7
mov r15d, esi
jmp 0x140012d85
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140012d85
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r15d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140012e37
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140012e37
mov r12d, esi
jmp 0x140012ed5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140012ed5
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, r12b
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r15b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400138a6
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140013251
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013031
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140013031
mov r13d, esi
jmp 0x1400130cf
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400130cf
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013182
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140013182
mov dword [rsp + 0x28], esi
jmp 0x140013223
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013223
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x28], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x28]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r13b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140013565
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001333d
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14001333d
mov edi, esi
mov dword [rsp + 0x58], esi
jmp 0x1400133e4
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400133e0
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
mov dword [rsp + 0x58], edi
jmp 0x1400133e4
mov edi, dword [rsp + 0x58]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013496
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140013496
mov dword [rsp + 0x50], esi
jmp 0x140013537
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013537
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400138a6
mov eax, dword [rsp + 0x20]
sub eax, 0x46
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001366f
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14001366f
mov edi, esi
mov dword [rsp + 0x44], esi
jmp 0x140013716
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013712
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
mov dword [rsp + 0x44], edi
jmp 0x140013716
mov edi, dword [rsp + 0x44]
mov eax, dword [rsp + 0x20]
sub eax, 0x46
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400137d7
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400137d7
mov dword [rsp + 0x4c], esi
jmp 0x140013878
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013878
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x4c], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x4c]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140013bba
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013992
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140013992
mov edi, esi
mov dword [rsp + 0x48], esi
jmp 0x140013a39
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013a35
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
mov dword [rsp + 0x48], edi
jmp 0x140013a39
mov edi, dword [rsp + 0x48]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013aeb
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140013aeb
mov dword [rsp + 0x40], esi
jmp 0x140013b8c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013b8c
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x40], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x40]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 0x2e
jb 0x140012c00
mov byte [r14], 1
lea rdx, [r14 + 1]
lea rcx, [rbp + 0x90]
call fcn.140001710
mov rcx, rax
call fcn.140004000
xor edi, edi
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_istream_char__struct_std::char_traits_char__::get_void____ptr64]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013cf5
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
jne 0x140015641
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140015639
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
jmp 0x14001563d
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013bed
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx eax, byte [0x14004123c]
add eax, edx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013ece
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140013ece
mov edi, esi
jmp 0x140013f71
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013f6d
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
jmp 0x140013f71
mov edi, dword [rsp + 0x28]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
imul r8d, edi
test r8d, r8d
je 0x140014435
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x140037d60]
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001406c
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
jne 0x1400140db
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400140db
movzx eax, byte [0x140041239]
call fcn.140004b10
call fcn.140004ae0
call fcn.140002d60
movzx eax, byte [0x140041238]
movzx eax, byte [0x14004123b]
movsd xmm0, qword [rsp + 0x30]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013bed
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001421b
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
jne 0x1400142be
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400142ba
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si esi, xmm0
jmp 0x1400142be
mov esi, dword [rsp + 0x28]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
imul r8d, esi
test r8d, r8d
je 0x140013bed
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x140037d68]
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400143bd
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
jne 0x140013bed
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140013bed
movzx eax, byte [0x140041239]
call fcn.140004b10
call fcn.140004ae0
call fcn.140002d60
movzx eax, byte [0x140041238]
movzx eax, byte [0x14004123b]
movsd xmm0, qword [rsp + 0x30]
jmp 0x140013bed
mov byte [rsp + 0x73], 0
lea rdx, [rbp + 0x150]
lea rcx, [rsp + 0x73]
call fcn.140016900
mov r14, rax
xor edi, edi
cmp byte [rax], dil
jne 0x140015465
mov dword [rsp + 0x20], edi
mov eax, dword [rsp + 0x20]
movsd xmm6, qword [0x140037d90]
movsd xmm7, qword [0x140037d88]
movsd xmm8, qword [0x140037d80]
movsd xmm9, qword [0x140037d78]
mov r15d, dword [rsp + 0x28]
mov r12d, dword [rsp + 0x28]
mov r13d, dword [rsp + 0x28]
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140014791
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140014578
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140014578
mov r15d, esi
jmp 0x140014616
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140014616
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r15d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400146c7
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400146c7
mov r12d, esi
jmp 0x140014765
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140014765
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r12d, xmm0
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, r12b
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r15b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140015136
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
add ebx, ebx
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140014adf
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400148c0
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x1400148c0
mov r13d, esi
jmp 0x14001495e
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001495e
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si r13d, xmm0
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140014a10
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140014a10
mov dword [rsp + 0x28], esi
jmp 0x140014ab1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140014ab1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x28], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x28]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, r13b
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx edx, al
movsx ecx, byte [0x140044398]
imul ecx, edx
imul ebx, ecx, 7
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140014df5
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140014bcc
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140014bcc
mov edi, esi
mov dword [rsp + 0x58], esi
jmp 0x140014c73
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140014c6f
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
mov dword [rsp + 0x58], edi
jmp 0x140014c73
mov edi, dword [rsp + 0x58]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140014d26
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140014d26
mov dword [rsp + 0x50], esi
jmp 0x140014dc7
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140014dc7
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140004b10
movsx ecx, al
add ecx, edi
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140015136
mov eax, dword [rsp + 0x20]
sub eax, 0x41
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140014eff
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140014eff
mov edi, esi
mov dword [rsp + 0x44], esi
jmp 0x140014fa6
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140014fa2
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
mov dword [rsp + 0x44], edi
jmp 0x140014fa6
mov edi, dword [rsp + 0x44]
mov eax, dword [rsp + 0x20]
sub eax, 0x41
movd xmm2, eax
cvtdq2pd xmm2, xmm2
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140015067
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140015067
mov dword [rsp + 0x4c], esi
jmp 0x140015108
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140015108
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x4c], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x4c]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
call fcn.140004af0
movsx ecx, al
movsx ebx, byte [0x140044398]
imul ebx, ecx
shl ebx, 3
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14001544c
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140015223
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x140015223
mov edi, esi
mov dword [rsp + 0x48], esi
jmp 0x1400152ca
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x1400152c6
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si edi, xmm0
mov dword [rsp + 0x48], edi
jmp 0x1400152ca
mov edi, dword [rsp + 0x48]
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001537d
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
je 0x14001537d
mov dword [rsp + 0x40], esi
jmp 0x14001541e
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x14001541e
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
mov dword [rsp + 0x40], eax
movsxd rax, dword [rsp + 0x20]
movzx r8d, byte [rax + r14 + 1]
and r8b, byte [rsp + 0x40]
add r8b, r8b
movsxd rax, dword [rsp + 0x20]
movzx edx, byte [rax + r14 + 1]
sub dl, r8b
add dl, dil
movsxd rax, dword [rsp + 0x20]
mov byte [rax + r14 + 1], dl
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov eax, dword [rsp + 0x20]
cmp eax, 0x2a
jb 0x140014492
xor edi, edi
mov byte [r14], 1
lea rdx, [r14 + 1]
lea rcx, [rbp + 0xb0]
call fcn.140001710
mov rcx, rax
call fcn.1400040f0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_istream_char__struct_std::char_traits_char__::get_void____ptr64]
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14004123a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14004123c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x30], xmm1
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140015587
call fcn.140004af0
movsx ecx, al
movsx edx, byte [0x140044398]
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140004b20
movsx ecx, al
sub ebx, ecx
call fcn.140004b00
movsx edx, al
add edx, ebx
movsx ecx, byte [0x14004123c]
add ecx, edx
jne 0x140015632
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
cmp r8d, eax
je 0x140015626
call fcn.140004ae0
movsx ebx, al
call fcn.140002d60
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140004b10
movsx ecx, al
add ecx, ebx
movsx eax, byte [0x140041239]
add eax, ecx
movsx ecx, byte [0x140041238]
xor edx, edx
div ecx
mov r8d, eax
movsx eax, byte [0x14004123b]
sub r8d, eax
mov eax, r8d
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x30]
cvttsd2si eax, xmm0
jmp 0x14001562a
mov eax, dword [rsp + 0x28]
cmp edi, eax
jge 0x140013bef
mov edi, 1
jmp 0x140015641
mov eax, dword [rsp + 0x28]
cmp edi, eax
jge 0x140015651
lea rcx, [rbp + 0x230]
call fcn.1400016b0
mov eax, edi
jmp 0x14001565f
lea rcx, [rbp + 0x230]
call fcn.1400016b0
xor eax, eax
mov rcx, qword [rbp + 0x250]
xor rcx, rsp
call fcn.140019b90
lea r11, [rsp + 0x3c0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret