Function at 0x1b722cb4af0
Capabilities:
Link many functions at runtime

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x3050]
mov eax, 0x3150
call fcn.1b722d0f2f0
sub rsp, rax
movaps xmmword [rsp + 0x3140], xmm6
movaps xmmword [rsp + 0x3130], xmm7
movaps xmmword [rsp + 0x3120], xmm8
movaps xmmword [rsp + 0x3110], xmm9
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x2fc0], rax
mov r14d, ecx
mov dword [rsp + 0x78], ecx
xor ecx, ecx
mov qword [rsp + 0x40], rdx
call fcn.1b722cffdf4
mov ecx, eax
call fcn.1b722cfd870
xor eax, eax
lea rdx, [rbp]
lea rcx, [rbp - 0x40]
mov byte [rbp - 0x40], al
call fcn.1b722cf4490
movsd xmm8, qword [0x1b722d1a350]
xor r15d, r15d
movsd xmm9, qword [0x1b722d1a358]
mov rsi, rax
cmp byte [rax], r15b
jne 0x1b722cb5ad9
movsd xmm6, qword [0x1b722d1a340]
movsd xmm7, qword [0x1b722d1a348]
mov dword [rsp + 0x70], r15d
mov ecx, dword [rsp + 0x70]
mov r14d, dword [rsp + 0x70]
mov r15d, dword [rsp + 0x70]
mov r12d, dword [rsp + 0x70]
mov r13d, dword [rsp + 0x70]
nop word [rax + rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb4eae
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb4cb6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb4cb6
mov r14d, 2
jmp 0x1b722cb4d47
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb4d47
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb4df5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb4df5
mov r15d, 2
jmp 0x1b722cb4e86
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb4e86
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x70]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x70]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x70]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb57ce
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb51ce
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb4fd6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb4fd6
mov r12d, 2
jmp 0x1b722cb5067
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb5067
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb5115
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb5115
mov r13d, 2
jmp 0x1b722cb51a6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb51a6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x70]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x70]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x70]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb54b8
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb52b4
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb52b4
mov dword [rsp + 0x50], 2
jmp 0x1b722cb5348
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb5348
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb53f9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb53f9
mov dword [rsp + 0x54], 2
jmp 0x1b722cb548d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb548d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x70]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x70]
and r8d, dword [rsp + 0x54]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x70]
sub edx, r8d
add edx, dword [rsp + 0x50]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb57ce
mov eax, dword [rsp + 0x70]
add eax, 0x73
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb55bc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb55bc
mov dword [rsp + 0x58], 2
jmp 0x1b722cb5650
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb5650
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x70]
add eax, 0x73
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb570f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb570f
mov dword [rsp + 0x5c], 2
jmp 0x1b722cb57a3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb57a3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x70]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x70]
and r8d, dword [rsp + 0x5c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x70]
sub edx, r8d
add edx, dword [rsp + 0x58]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb5aba
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb58b6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb58b6
mov dword [rsp + 0x60], 2
jmp 0x1b722cb594a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb594a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb59fb
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb59fb
mov dword [rsp + 0x64], 2
jmp 0x1b722cb5a8f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb5a8f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsxd rax, dword [rsp + 0x70]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x70]
and r8d, dword [rsp + 0x64]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x70]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x70]
inc eax
mov dword [rsp + 0x70], eax
mov eax, dword [rsp + 0x70]
cmp eax, 1
jb 0x1b722cb4bd0
mov r14d, dword [rsp + 0x78]
xor r15d, r15d
mov byte [rsi], 1
lea rcx, [0x1b722c40000]
mov eax, dword [rsi + 4]
call qword [rcx + rax*8 + 0xdf3e0]
mov eax, eax
mov qword [0x1b722d20bf8], rax
call fcn.1b722cfd844
inc eax
mov dword [0x1b722d20bd8], eax
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
movsx eax, byte [0x1b722d1ee8a]
cmp r14d, 3
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
mov rax, r15
cvtdq2pd xmm0, xmm0
sete al
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb5c02
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb5c02
mov esi, 2
jmp 0x1b722cb5c98
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb5c94
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si esi, xmm0
jmp 0x1b722cb5c98
mov esi, dword [rsp + 0x64]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
add edi, edi
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, esi
test eax, eax
je 0x1b722cbab03
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
xor eax, eax
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x3f]
mov byte [rbp - 0x3f], al
call fcn.1b722cf45f0
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cb6c80
mov dword [rsp + 0x64], r15d
mov ecx, dword [rsp + 0x64]
cmp ecx, 3
jae 0x1b722cb6c80
movsd xmm6, qword [0x1b722d1a360]
movsd xmm7, qword [0x1b722d1a368]
mov r14d, dword [rbp - 0x80]
mov r15d, dword [rbp - 0x80]
mov r12d, dword [rbp - 0x80]
mov r13d, dword [rbp - 0x80]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb6054
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb5e59
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb5e59
mov r14d, 2
jmp 0x1b722cb5eea
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb5eea
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb5f99
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb5f99
mov r15d, 2
jmp 0x1b722cb602a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb602a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb697a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb6378
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb617d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb617d
mov r12d, 2
jmp 0x1b722cb620e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb620e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb62bd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb62bd
mov r13d, 2
jmp 0x1b722cb634e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb634e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb6662
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb645d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb645d
mov dword [rsp + 0x60], 2
jmp 0x1b722cb64f1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb64f1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb65a1
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb65a1
mov dword [rsp + 0x5c], 2
jmp 0x1b722cb6635
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6635
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb697a
mov eax, dword [rsp + 0x64]
add eax, 0x75
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6766
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb6766
mov dword [rsp + 0x58], 2
jmp 0x1b722cb67fa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb67fa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
add eax, 0x75
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb68b9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb68b9
mov dword [rsp + 0x54], 2
jmp 0x1b722cb694d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb694d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb6c66
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6a61
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb6a61
mov dword [rsp + 0x50], 2
jmp 0x1b722cb6af5
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6af5
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6ba5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb6ba5
mov dword [rsp + 0x70], 2
jmp 0x1b722cb6c39
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6c39
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 3
jb 0x1b722cb5d72
xor r15d, r15d
mov r14, qword [rsp + 0x40]
mov byte [rsi], 1
inc rsi
mov rax, qword [r14 + 8]
sub rsi, rax
movzx edx, byte [rax]
movzx ecx, byte [rax + rsi]
sub edx, ecx
jne 0x1b722cb6ca4
inc rax
test ecx, ecx
jne 0x1b722cb6c92
mov rax, r15
test edx, edx
xorps xmm2, xmm2
sete al
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6d61
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb6d61
mov esi, 2
jmp 0x1b722cb6df6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6df3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si esi, xmm0
jmp 0x1b722cb6df6
mov esi, dword [rbp - 0x80]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, esi
test eax, eax
je 0x1b722cb6fbe
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov eax, eax
mov qword [0x1b722d20bf8], rax
mov rax, qword [r14 + 0x10]
mov qword [0x1b722d20c00], rax
xor eax, eax
movaps xmmword [rsp + 0x30f0], xmm11
lea rdx, [rbp - 0x30]
mov byte [rbp - 0x77], al
lea rcx, [rbp - 0x77]
movaps xmmword [rsp + 0x30e0], xmm12
call fcn.1b722cf4e90
movsd xmm7, qword [0x1b722d1a6e0]
mov rsi, rax
movsd xmm8, qword [0x1b722d1a6d8]
movsd xmm9, qword [0x1b722d1a6d0]
cmp byte [rax], 0
jne 0x1b722cbe5ab
mov dword [rsp + 0x64], r15d
mov ecx, dword [rsp + 0x64]
cmp ecx, 1
jae 0x1b722cbe5ab
movsd xmm6, qword [0x1b722d1a6e8]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbd988
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd790
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbd790
mov r14d, 2
jmp 0x1b722cbd821
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx edx, al
xorps xmm2, xmm2
movsx eax, byte [0x1b722d1ee8c]
add edx, ebx
add eax, edx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb70e7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb70e7
mov esi, 2
jmp 0x1b722cb717c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb7179
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si esi, xmm0
jmp 0x1b722cb717c
mov esi, dword [rbp - 0x80]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, esi
test eax, eax
je 0x1b722cb751c
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x1b722d1a120]
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb726b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x1b722cb72d6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb72d6
movzx eax, byte [0x1b722d1ee89]
call fcn.1b722c410f0
call fcn.1b722c410c0
call fcn.1b722c410b0
movzx eax, byte [0x1b722d1ee88]
movzx eax, byte [0x1b722d1ee8b]
movsd xmm0, qword [rsp + 0x38]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb740a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb740a
mov edi, 2
jmp 0x1b722cb749f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb749c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
jmp 0x1b722cb749f
mov edi, dword [rbp - 0x80]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x1b722cb6e58
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x1b722d1a0f8]
jmp 0x1b722cbc723
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
xor eax, eax
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x7c]
mov byte [rbp - 0x7c], al
call fcn.1b722cf4750
movsd xmm8, qword [0x1b722d1a380]
mov rsi, rax
movsd xmm9, qword [0x1b722d1a388]
cmp byte [rax], 0
jne 0x1b722cb84d9
mov dword [rsp + 0x64], r15d
mov ecx, dword [rsp + 0x64]
cmp ecx, 3
jae 0x1b722cb84d9
movsd xmm6, qword [0x1b722d1a370]
movsd xmm7, qword [0x1b722d1a378]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb78a6
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb76ac
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb76ac
mov r14d, 2
jmp 0x1b722cb773d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb773d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb77eb
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb77eb
mov r15d, 2
jmp 0x1b722cb787c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb787c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb81cc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb7bc8
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb79ce
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb79ce
mov r12d, 2
jmp 0x1b722cb7a5f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb7a5f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb7b0d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb7b0d
mov r13d, 2
jmp 0x1b722cb7b9e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb7b9e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb7eb4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb7cae
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb7cae
mov dword [rsp + 0x60], 2
jmp 0x1b722cb7d42
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb7d42
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb7df3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb7df3
mov dword [rsp + 0x5c], 2
jmp 0x1b722cb7e87
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb7e87
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb81cc
mov eax, dword [rsp + 0x64]
add eax, 0x7c
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb7fb8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb7fb8
mov dword [rsp + 0x58], 2
jmp 0x1b722cb804c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb804c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
add eax, 0x7c
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb810b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb810b
mov dword [rsp + 0x54], 2
jmp 0x1b722cb819f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb819f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb84ba
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb82b4
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb82b4
mov dword [rsp + 0x50], 2
jmp 0x1b722cb8348
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb8348
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb83f9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb83f9
mov dword [rsp + 0x70], 2
jmp 0x1b722cb848d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb848d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 3
jb 0x1b722cb75c6
mov r14, qword [rsp + 0x40]
xor r15d, r15d
mov byte [rsi], 1
inc rsi
mov rax, qword [r14 + 8]
sub rsi, rax
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + rsi]
sub edx, ecx
jne 0x1b722cb8502
inc rax
test ecx, ecx
jne 0x1b722cb84f0
mov rax, r15
test edx, edx
xorps xmm2, xmm2
sete al
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb85bf
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb85bf
mov edi, 2
jmp 0x1b722cb8655
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb8651
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
jmp 0x1b722cb8655
mov edi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x1b722cb962a
xor eax, eax
lea rdx, [rbp - 0x38]
lea rcx, [rbp - 0x7b]
mov byte [rbp - 0x7b], al
call fcn.1b722cf48b0
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cb95fc
mov dword [rsp + 0x64], r15d
mov ecx, dword [rsp + 0x64]
cmp ecx, 1
jae 0x1b722cb95fc
movsd xmm6, qword [0x1b722d1a390]
movsd xmm7, qword [0x1b722d1a398]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb89d3
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb87da
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb87da
mov r14d, 2
jmp 0x1b722cb886b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb886b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb891a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb891a
mov r15d, 2
jmp 0x1b722cb89ab
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb89ab
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb92f3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb8cf5
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb8afc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb8afc
mov r12d, 2
jmp 0x1b722cb8b8d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb8b8d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb8c3c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb8c3c
mov r13d, 2
jmp 0x1b722cb8ccd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb8ccd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb8fdd
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb8dda
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb8dda
mov dword [rsp + 0x60], 2
jmp 0x1b722cb8e6e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb8e6e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb8f1e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb8f1e
mov dword [rsp + 0x5c], 2
jmp 0x1b722cb8fb2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb8fb2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x5c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb92f3
mov eax, dword [rsp + 0x64]
add eax, 0x7e
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb90e1
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb90e1
mov dword [rsp + 0x58], 2
jmp 0x1b722cb9175
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb9175
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
add eax, 0x7e
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb9234
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb9234
mov dword [rsp + 0x54], 2
jmp 0x1b722cb92c8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb92c8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x54]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x58]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb95dd
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb93da
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb93da
mov dword [rsp + 0x50], 2
jmp 0x1b722cb946e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb946e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb951e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb951e
mov dword [rsp + 0x70], 2
jmp 0x1b722cb95b2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb95b2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x70]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x50]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 1
jb 0x1b722cb86f3
mov r14, qword [rsp + 0x40]
xor r15d, r15d
mov byte [rsi], 1
lea rdx, [0x1b722c40000]
mov eax, dword [rsi + 4]
mov rcx, qword [r14 + 0x10]
call qword [rdx + rax*8 + 0xdf5c0]
movsxd rcx, eax
mov qword [0x1b722d20bf8], rcx
mov qword [0x1b722d20c00], r15
jmp 0x1b722cb6e58
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx edx, al
xorps xmm2, xmm2
movsx eax, byte [0x1b722d1ee8c]
add edx, ebx
add eax, edx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb9756
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb9756
mov edi, 2
jmp 0x1b722cb97ec
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb97e8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
jmp 0x1b722cb97ec
mov edi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x1b722cb9b8a
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
addsd xmm1, xmm1
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb98d9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x1b722cb9944
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb9944
movzx eax, byte [0x1b722d1ee89]
call fcn.1b722c410f0
call fcn.1b722c410c0
call fcn.1b722c410b0
movzx eax, byte [0x1b722d1ee88]
movzx eax, byte [0x1b722d1ee8b]
movsd xmm0, qword [rsp + 0x38]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb9a79
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb9a79
mov esi, 2
jmp 0x1b722cb9b0f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb9b0b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si esi, xmm0
jmp 0x1b722cb9b0f
mov esi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, esi
test eax, eax
je 0x1b722cb6e58
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x1b722d1a0e8]
jmp 0x1b722cbc723
xor eax, eax
lea rdx, [rbp + 0x308]
lea rcx, [rbp - 0x7a]
mov byte [rbp - 0x7a], al
call fcn.1b722cf4a10
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cf4451
mov dword [rsp + 0x64], r15d
mov ecx, dword [rsp + 0x64]
cmp ecx, 0x1d
jae 0x1b722cf4451
movsd xmm6, qword [0x1b722d1a750]
movsd xmm7, qword [0x1b722d1a748]
movsd xmm8, qword [0x1b722d1a740]
movsd xmm9, qword [0x1b722d1a738]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb9ed3
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb9cd9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb9cd9
mov r14d, 2
jmp 0x1b722cb9d6a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb9d6a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb9e18
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb9e18
mov r15d, 2
jmp 0x1b722cb9ea9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb9ea9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba7f9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cba1f5
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb9ffb
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cb9ffb
mov r12d, 2
jmp 0x1b722cba08c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba08c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba13a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cba13a
mov r13d, 2
jmp 0x1b722cba1cb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba1cb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cba4e1
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba2db
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cba2db
mov dword [rsp + 0x60], 2
jmp 0x1b722cba36f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba36f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba420
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cba420
mov dword [rsp + 0x5c], 2
jmp 0x1b722cba4b4
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba4b4
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba7f9
mov eax, dword [rsp + 0x64]
sub eax, 0x7d
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba5e5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cba5e5
mov dword [rsp + 0x58], 2
jmp 0x1b722cba679
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba679
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x7d
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba738
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cba738
mov dword [rsp + 0x54], 2
jmp 0x1b722cba7cc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba7cc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbaae7
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba8e1
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cba8e1
mov dword [rsp + 0x50], 2
jmp 0x1b722cba975
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cba975
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbaa26
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbaa26
mov dword [rsp + 0x70], 2
jmp 0x1b722cbaaba
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbaaba
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0x1d
jae 0x1b722cf444c
jmp 0x1b722cb9bf3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx edx, al
xorps xmm2, xmm2
movsx eax, byte [0x1b722d1ee8c]
add edx, ebx
add eax, edx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbac2f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbac2f
mov edi, 2
jmp 0x1b722cbacc5
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbacc1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
jmp 0x1b722cbacc5
mov edi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x1b722cbb065
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x1b722d1a108]
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbadb4
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x1b722cbae1f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbae1f
movzx eax, byte [0x1b722d1ee89]
call fcn.1b722c410f0
call fcn.1b722c410c0
call fcn.1b722c410b0
movzx eax, byte [0x1b722d1ee88]
movzx eax, byte [0x1b722d1ee8b]
movsd xmm0, qword [rsp + 0x38]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbaf54
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbaf54
mov edi, 2
jmp 0x1b722cbafea
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbafe6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
jmp 0x1b722cbafea
mov edi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x1b722cb6e58
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x1b722d1a110]
jmp 0x1b722cbc723
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
movsx eax, byte [0x1b722d1ee8a]
cmp r14d, 1
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
mov rax, r15
cvtdq2pd xmm0, xmm0
sete al
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbb164
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbb164
mov edi, 2
jmp 0x1b722cbb1fa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbb1f6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
jmp 0x1b722cbb1fa
mov edi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x1b722cbc1ca
xor eax, eax
lea rdx, [rbp + 0x58]
lea rcx, [rbp - 0x79]
mov byte [rbp - 0x79], al
call fcn.1b722cf4b90
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cbc1be
mov dword [rsp + 0x64], r15d
mov ecx, dword [rsp + 0x64]
cmp ecx, 8
jae 0x1b722cbc1be
movsd xmm6, qword [0x1b722d1a720]
movsd xmm7, qword [0x1b722d1a718]
movsd xmm8, qword [0x1b722d1a710]
movsd xmm9, qword [0x1b722d1a708]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
nop word [rax + rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbb590
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbb396
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbb396
mov r14d, 2
jmp 0x1b722cbb427
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbb427
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbb4d5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbb4d5
mov r15d, 2
jmp 0x1b722cbb566
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbb566
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbbeb6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbb8b2
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbb6b8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbb6b8
mov r12d, 2
jmp 0x1b722cbb749
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbb749
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbb7f7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbb7f7
mov r13d, 2
jmp 0x1b722cbb888
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbb888
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbbb9e
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbb998
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbb998
mov dword [rsp + 0x60], 2
jmp 0x1b722cbba2c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbba2c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbbadd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbbadd
mov dword [rsp + 0x5c], 2
jmp 0x1b722cbbb71
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbbb71
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbbeb6
mov eax, dword [rsp + 0x64]
sub eax, 0x77
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbbca2
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbbca2
mov dword [rsp + 0x58], 2
jmp 0x1b722cbbd36
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbbd36
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x77
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbbdf5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbbdf5
mov dword [rsp + 0x54], 2
jmp 0x1b722cbbe89
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbbe89
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbc1a4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbbf9e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbbf9e
mov dword [rsp + 0x50], 2
jmp 0x1b722cbc032
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbc032
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbc0e3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbc0e3
mov dword [rsp + 0x70], 2
jmp 0x1b722cbc177
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbc177
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 8
jb 0x1b722cbb2b0
xor r15d, r15d
mov byte [rsi], 1
lea rax, [rsi + 1]
jmp 0x1b722cb6e51
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx edx, al
xorps xmm2, xmm2
movsx eax, byte [0x1b722d1ee8c]
add edx, ebx
add eax, edx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbc2f3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbc2f3
mov esi, 2
jmp 0x1b722cbc389
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbc385
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si esi, xmm0
jmp 0x1b722cbc389
mov esi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, esi
test eax, eax
je 0x1b722cbc814
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x1b722d1a0e8]
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbc475
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x1b722cbc4e0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbc4e0
movzx eax, byte [0x1b722d1ee89]
call fcn.1b722c410f0
call fcn.1b722c410c0
call fcn.1b722c410b0
movzx eax, byte [0x1b722d1ee88]
movzx eax, byte [0x1b722d1ee8b]
movsd xmm0, qword [rsp + 0x38]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbc617
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbc617
mov edi, 2
jmp 0x1b722cbc6ad
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbc6a9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
jmp 0x1b722cbc6ad
mov edi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x1b722cb6e58
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, qword [0x1b722d1a0f0]
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbc7a0
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x1b722cb6e58
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cb6e58
movzx eax, byte [0x1b722d1ee89]
call fcn.1b722c410f0
call fcn.1b722c410c0
call fcn.1b722c410b0
movzx eax, byte [0x1b722d1ee88]
movzx eax, byte [0x1b722d1ee8b]
movsd xmm0, qword [rsp + 0x38]
jmp 0x1b722cb6e58
xor eax, eax
lea rdx, [rbp + 0x328]
lea rcx, [rbp - 0x78]
mov byte [rbp - 0x78], al
call fcn.1b722cf4d00
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cf446b
mov dword [rsp + 0x64], r15d
mov ecx, dword [rsp + 0x64]
cmp ecx, 0x1d
jae 0x1b722cf446b
movsd xmm6, qword [0x1b722d1a6f8]
movsd xmm7, qword [0x1b722d1a6f0]
movsd xmm8, qword [0x1b722d1a6e8]
movsd xmm9, qword [0x1b722d1a6e0]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
nop dword [rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbcb60
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbc966
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbc966
mov r14d, 2
jmp 0x1b722cbc9f7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbc9f7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbcaa5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbcaa5
mov r15d, 2
jmp 0x1b722cbcb36
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbcb36
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd486
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbce82
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbcc88
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbcc88
mov r12d, 2
jmp 0x1b722cbcd19
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbcd19
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbcdc7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbcdc7
mov r13d, 2
jmp 0x1b722cbce58
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbce58
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbd16e
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbcf68
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbcf68
mov dword [rsp + 0x60], 2
jmp 0x1b722cbcffc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbcffc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd0ad
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbd0ad
mov dword [rsp + 0x5c], 2
jmp 0x1b722cbd141
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd141
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd486
mov eax, dword [rsp + 0x64]
sub eax, 0x72
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd272
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbd272
mov dword [rsp + 0x58], 2
jmp 0x1b722cbd306
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd306
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x72
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd3c5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbd3c5
mov dword [rsp + 0x54], 2
jmp 0x1b722cbd459
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd459
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbd774
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd56e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbd56e
mov dword [rsp + 0x50], 2
jmp 0x1b722cbd602
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd602
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd6b3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbd6b3
mov dword [rsp + 0x70], 2
jmp 0x1b722cbd747
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd747
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0x1d
jae 0x1b722cf446b
jmp 0x1b722cbc880
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd821
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd8cf
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbd8cf
mov r15d, 2
jmp 0x1b722cbd960
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbd960
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe2a8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbdca8
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbdab0
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbdab0
mov r12d, 2
jmp 0x1b722cbdb41
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbdb41
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbdbef
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbdbef
mov r13d, 2
jmp 0x1b722cbdc80
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbdc80
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbdf92
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbdd8e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbdd8e
mov dword [rsp + 0x60], 2
jmp 0x1b722cbde22
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbde22
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbded3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbded3
mov dword [rsp + 0x5c], 2
jmp 0x1b722cbdf67
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbdf67
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x5c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe2a8
mov eax, dword [rsp + 0x64]
sub eax, 0x70
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe096
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbe096
mov dword [rsp + 0x58], 2
jmp 0x1b722cbe12a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe12a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x70
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe1e9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbe1e9
mov dword [rsp + 0x54], 2
jmp 0x1b722cbe27d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe27d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x54]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x58]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbe594
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe390
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbe390
mov dword [rsp + 0x50], 2
jmp 0x1b722cbe424
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe424
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe4d5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbe4d5
mov dword [rsp + 0x70], 2
jmp 0x1b722cbe569
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe569
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x70]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x50]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 1
jb 0x1b722cb6ed0
mov byte [rsi], 1
lea rcx, [0x1b722c40000]
mov eax, dword [rsi + 4]
movaps xmmword [rsp + 0x3100], xmm10
call qword [rcx + rax*8 + 0xdf430]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsd xmm11, qword [0x1b722d1a6b8]
xor edx, edx
movsd xmm12, qword [0x1b722d1a6b0]
movsx ecx, al
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0819
xor eax, eax
lea rdx, [rbp - 0x28]
lea rcx, [rbp - 0x76]
mov byte [rbp - 0x76], al
call fcn.1b722cf4ff0
movsd xmm10, qword [0x1b722d1a6c8]
xor r14d, r14d
mov rsi, rax
cmp byte [rax], r14b
jne 0x1b722cbf56c
mov dword [rsp + 0x64], r14d
mov ecx, dword [rsp + 0x64]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbe944
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe74c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbe74c
mov r14d, 2
jmp 0x1b722cbe7dd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe7dd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe88b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbe88b
mov r15d, 2
jmp 0x1b722cbe91c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbe91c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf266
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbec66
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbea6d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbea6d
mov r12d, 2
jmp 0x1b722cbeafe
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbeafe
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbebad
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbebad
mov r13d, 2
jmp 0x1b722cbec3e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbec3e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbef50
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbed4c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbed4c
mov dword [rsp + 0x60], 2
jmp 0x1b722cbede0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbede0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbee91
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbee91
mov dword [rsp + 0x5c], 2
jmp 0x1b722cbef25
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbef25
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x5c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf266
mov eax, dword [rsp + 0x64]
sub eax, 0x6f
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf054
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbf054
mov dword [rsp + 0x58], 2
jmp 0x1b722cbf0e8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf0e8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x6f
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf1a7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbf1a7
mov dword [rsp + 0x54], 2
jmp 0x1b722cbf23b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf23b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x54]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x58]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbf552
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf34e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbf34e
mov dword [rsp + 0x50], 2
jmp 0x1b722cbf3e2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf3e2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf493
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbf493
mov dword [rsp + 0x70], 2
jmp 0x1b722cbf527
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf527
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x70]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x50]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 1
jb 0x1b722cbe666
xor r14d, r14d
mov byte [rsi], 1
lea rcx, [0x1b722c40000]
mov eax, dword [rsi + 4]
call qword [rcx + rax*8 + 0xdf160]
mov rcx, r14
xorps xmm2, xmm2
test eax, eax
movsx eax, byte [0x1b722d1ee8a]
sete cl
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
cvtsi2sd xmm2, rcx
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf63d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbf63d
mov edi, 2
jmp 0x1b722cbf6d3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf6cf
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
jmp 0x1b722cbf6d3
mov edi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x1b722cc081c
xor eax, eax
lea rdx, [rbp + 0x368]
lea rcx, [rbp - 0x75]
mov byte [rbp - 0x75], al
call fcn.1b722cf5150
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cc0680
mov dword [rsp + 0x64], r14d
mov ecx, dword [rsp + 0x64]
cmp ecx, 0x24
jae 0x1b722cc0680
movsd xmm6, qword [0x1b722d1a6c0]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
nop word [rax + rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbfa52
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf857
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbf857
mov r14d, 2
jmp 0x1b722cbf8e8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf8e8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbf997
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbf997
mov r15d, 2
jmp 0x1b722cbfa28
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbfa28
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0378
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbfd74
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbfb7a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbfb7a
mov r12d, 2
jmp 0x1b722cbfc0b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbfc0b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbfcb9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbfcb9
mov r13d, 2
jmp 0x1b722cbfd4a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbfd4a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc0060
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbfe5a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbfe5a
mov dword [rsp + 0x60], 2
jmp 0x1b722cbfeee
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbfeee
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cbff9f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cbff9f
mov dword [rsp + 0x5c], 2
jmp 0x1b722cc0033
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0033
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0378
mov eax, dword [rsp + 0x64]
sub eax, 0x6c
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0164
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc0164
mov dword [rsp + 0x58], 2
jmp 0x1b722cc01f8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc01f8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x6c
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc02b7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc02b7
mov dword [rsp + 0x54], 2
jmp 0x1b722cc034b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc034b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc0666
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm12
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0460
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc0460
mov dword [rsp + 0x50], 2
jmp 0x1b722cc04f4
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc04f4
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm12
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc05a5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc05a5
mov dword [rsp + 0x70], 2
jmp 0x1b722cc0639
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0639
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0x24
jb 0x1b722cbf770
xor r14d, r14d
lea rcx, [rsi + 1]
mov byte [rsi], 1
call fcn.1b722c41050
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0778
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x1b722cf43eb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc080a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
jmp 0x1b722cc080e
mov eax, dword [rsp + 0x30]
cmp r14d, eax
jl 0x1b722cf43eb
jmp 0x1b722cc081c
xor r14d, r14d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsd xmm8, qword [0x1b722d1a698]
xor edx, edx
movsd xmm9, qword [0x1b722d1a690]
movsx ecx, al
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2a57
xor eax, eax
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x74]
mov byte [rbp - 0x74], al
call fcn.1b722cf52d0
movsd xmm6, qword [0x1b722d1a6a8]
mov rsi, rax
movsd xmm7, qword [0x1b722d1a6a0]
cmp byte [rax], 0
jne 0x1b722cc17c8
mov dword [rsp + 0x64], r14d
mov ecx, dword [rsp + 0x64]
cmp ecx, 1
jae 0x1b722cc17c8
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc0ba7
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc09ae
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc09ae
mov r14d, 2
jmp 0x1b722cc0a3f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0a3f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0aee
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc0aee
mov r15d, 2
jmp 0x1b722cc0b7f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0b7f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc14c7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc0ec9
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm12
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0cd0
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc0cd0
mov r12d, 2
jmp 0x1b722cc0d61
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0d61
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm12
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0e10
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc0e10
mov r13d, 2
jmp 0x1b722cc0ea1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0ea1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc11b1
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc0fae
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc0fae
mov dword [rsp + 0x60], 2
jmp 0x1b722cc1042
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1042
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc10f2
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc10f2
mov dword [rsp + 0x5c], 2
jmp 0x1b722cc1186
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1186
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x5c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc14c7
mov eax, dword [rsp + 0x64]
sub eax, 0x6a
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc12b5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc12b5
mov dword [rsp + 0x58], 2
jmp 0x1b722cc1349
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1349
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x6a
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1408
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc1408
mov dword [rsp + 0x54], 2
jmp 0x1b722cc149c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc149c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x54]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x58]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc17b1
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc15ae
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc15ae
mov dword [rsp + 0x50], 2
jmp 0x1b722cc1642
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1642
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc16f2
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc16f2
mov dword [rsp + 0x70], 2
jmp 0x1b722cc1786
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1786
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x70]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x50]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 1
jb 0x1b722cc08c7
mov byte [rsi], 1
lea rcx, [0x1b722c40000]
mov eax, dword [rsi + 4]
call qword [rcx + rax*8 + 0xdf110]
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1891
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc1891
mov esi, 2
jmp 0x1b722cc1927
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1923
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si esi, xmm0
jmp 0x1b722cc1927
mov esi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, esi
test eax, eax
je 0x1b722cc2a57
xor eax, eax
lea rdx, [rbp + 0x2b0]
lea rcx, [rbp - 0x73]
mov byte [rbp - 0x73], al
call fcn.1b722cf5430
xor r14d, r14d
mov rsi, rax
cmp byte [rax], r14b
jne 0x1b722cc28be
mov dword [rsp + 0x64], r14d
mov ecx, dword [rsp + 0x64]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
nop dword [rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc1c90
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1a96
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc1a96
mov r14d, 2
jmp 0x1b722cc1b27
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1b27
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1bd5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc1bd5
mov r15d, 2
jmp 0x1b722cc1c66
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1c66
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc25b6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc1fb2
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1db8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc1db8
mov r12d, 2
jmp 0x1b722cc1e49
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1e49
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1ef7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc1ef7
mov r13d, 2
jmp 0x1b722cc1f88
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc1f88
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc229e
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2098
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc2098
mov dword [rsp + 0x60], 2
jmp 0x1b722cc212c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc212c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc21dd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc21dd
mov dword [rsp + 0x5c], 2
jmp 0x1b722cc2271
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2271
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc25b6
mov eax, dword [rsp + 0x64]
sub eax, 0x68
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc23a2
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc23a2
mov dword [rsp + 0x58], 2
jmp 0x1b722cc2436
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2436
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x68
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc24f5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc24f5
mov dword [rsp + 0x54], 2
jmp 0x1b722cc2589
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2589
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc28a4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc269e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc269e
mov dword [rsp + 0x50], 2
jmp 0x1b722cc2732
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2732
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc27e3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc27e3
mov dword [rsp + 0x70], 2
jmp 0x1b722cc2877
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2877
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0x16
jb 0x1b722cc19b0
xor r14d, r14d
lea rcx, [rsi + 1]
mov byte [rsi], 1
call fcn.1b722c41050
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc29b6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x1b722cf43eb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2a48
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
jmp 0x1b722cc2a4c
mov eax, dword [rsp + 0x30]
cmp r14d, eax
jl 0x1b722cf43eb
jmp 0x1b722cc2a5a
xor r14d, r14d
xor eax, eax
lea rdx, [rbp + 0x2e8]
lea rcx, [rbp - 0x72]
mov byte [rbp - 0x72], al
mov byte [rbp - 0x71], al
call fcn.1b722cf5710
movsd xmm6, qword [0x1b722d1a688]
mov rsi, rax
movsd xmm7, qword [0x1b722d1a680]
cmp byte [rax], 0
jne 0x1b722cc39bf
mov dword [rsp + 0x64], r14d
mov ecx, dword [rsp + 0x64]
cmp ecx, 0x1a
jae 0x1b722cc39bf
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc2d96
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2b9b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc2b9b
mov r14d, 2
jmp 0x1b722cc2c2c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2c2c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2cdb
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc2cdb
mov r15d, 2
jmp 0x1b722cc2d6c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2d6c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc36bc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc30ba
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2ebf
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc2ebf
mov r12d, 2
jmp 0x1b722cc2f50
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2f50
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc2fff
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc2fff
mov r13d, 2
jmp 0x1b722cc3090
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc3090
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc33a4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc319f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc319f
mov dword [rsp + 0x60], 2
jmp 0x1b722cc3233
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc3233
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc32e3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc32e3
mov dword [rsp + 0x5c], 2
jmp 0x1b722cc3377
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc3377
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc36bc
mov eax, dword [rsp + 0x64]
sub eax, 0x66
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc34a8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc34a8
mov dword [rsp + 0x58], 2
jmp 0x1b722cc353c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc353c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x66
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc35fb
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc35fb
mov dword [rsp + 0x54], 2
jmp 0x1b722cc368f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc368f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc39a8
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc37a3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc37a3
mov dword [rsp + 0x50], 2
jmp 0x1b722cc3837
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc3837
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc38e7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc38e7
mov dword [rsp + 0x70], 2
jmp 0x1b722cc397b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc397b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0x1a
jb 0x1b722cc2ab4
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp - 0x18]
mov qword [rsp + 0x38], rax
lea rcx, [rbp - 0x71]
call fcn.1b722cf55b0
movsd xmm8, qword [0x1b722d1a678]
xor ebx, ebx
movsd xmm9, qword [0x1b722d1a670]
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722cc4916
mov dword [rsp + 0x64], ebx
mov ecx, dword [rsp + 0x64]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc3cf1
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc3af9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc3af9
mov r14d, 2
jmp 0x1b722cc3b8a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc3b8a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc3c38
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc3c38
mov r15d, 2
jmp 0x1b722cc3cc9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc3cc9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc4611
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc4011
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc3e19
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc3e19
mov r12d, 2
jmp 0x1b722cc3eaa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc3eaa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc3f58
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc3f58
mov r13d, 2
jmp 0x1b722cc3fe9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc3fe9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc42fb
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc40f7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc40f7
mov dword [rsp + 0x60], 2
jmp 0x1b722cc418b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc418b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc423c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc423c
mov dword [rsp + 0x5c], 2
jmp 0x1b722cc42d0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc42d0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x5c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc4611
mov eax, dword [rsp + 0x64]
sub eax, 0x64
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc43ff
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc43ff
mov dword [rsp + 0x58], 2
jmp 0x1b722cc4493
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc4493
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x64
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc4552
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc4552
mov dword [rsp + 0x54], 2
jmp 0x1b722cc45e6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc45e6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x54]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x58]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc48fd
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc46f9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc46f9
mov dword [rsp + 0x50], 2
jmp 0x1b722cc478d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc478d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc483e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc483e
mov dword [rsp + 0x70], 2
jmp 0x1b722cc48d2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc48d2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x70]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x50]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 1
jb 0x1b722cc3a13
xor ebx, ebx
mov rcx, qword [rsp + 0x38]
lea rdx, [0x1b722c40000]
mov byte [rsi], 1
mov eax, dword [rsi + 4]
call qword [rdx + rax*8 + 0xdf610]
mov qword [0x1b722d20be0], rax
lea rdx, [rbp + 0x128]
xor eax, eax
lea rcx, [rbp - 0x6f]
mov byte [rbp - 0x70], al
mov byte [rbp - 0x6f], al
call fcn.1b722cf58a0
movsd xmm10, qword [0x1b722d1a668]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cc5895
mov dword [rsp + 0x64], ebx
mov ecx, dword [rsp + 0x64]
cmp ecx, 0xd
jae 0x1b722cc5895
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc4c68
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc4a6e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc4a6e
mov r14d, 2
jmp 0x1b722cc4aff
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc4aff
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc4bad
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc4bad
mov r15d, 2
jmp 0x1b722cc4c3e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc4c3e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5590
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc4f8c
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc4d91
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc4d91
mov r12d, 2
jmp 0x1b722cc4e22
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc4e22
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc4ed1
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc4ed1
mov r13d, 2
jmp 0x1b722cc4f62
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc4f62
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc5278
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5072
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc5072
mov dword [rsp + 0x60], 2
jmp 0x1b722cc5106
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5106
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc51b7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc51b7
mov dword [rsp + 0x5c], 2
jmp 0x1b722cc524b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc524b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5590
mov eax, dword [rsp + 0x64]
sub eax, 0x63
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc537c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc537c
mov dword [rsp + 0x58], 2
jmp 0x1b722cc5410
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5410
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x63
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc54cf
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc54cf
mov dword [rsp + 0x54], 2
jmp 0x1b722cc5563
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5563
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc587e
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5678
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc5678
mov dword [rsp + 0x50], 2
jmp 0x1b722cc570c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc570c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc57bd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc57bd
mov dword [rsp + 0x70], 2
jmp 0x1b722cc5851
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5851
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0xd
jb 0x1b722cc4988
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0x98]
mov qword [rsp + 0x38], rax
lea rcx, [rbp - 0x70]
call fcn.1b722cf5a20
movsd xmm6, qword [0x1b722d1a660]
xor r14d, r14d
mov rsi, rax
cmp byte [rax], r14b
jne 0x1b722cc67f5
mov dword [rsp + 0x64], r14d
mov ecx, dword [rsp + 0x64]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc5bc7
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc59cc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc59cc
mov r14d, 2
jmp 0x1b722cc5a5d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5a5d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5b0c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc5b0c
mov r15d, 2
jmp 0x1b722cc5b9d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5b9d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc64ef
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc5eeb
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5cf0
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc5cf0
mov r12d, 2
jmp 0x1b722cc5d81
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5d81
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5e30
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc5e30
mov r13d, 2
jmp 0x1b722cc5ec1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5ec1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc61d7
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc5fd1
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc5fd1
mov dword [rsp + 0x60], 2
jmp 0x1b722cc6065
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc6065
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc6116
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc6116
mov dword [rsp + 0x5c], 2
jmp 0x1b722cc61aa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc61aa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc64ef
mov eax, dword [rsp + 0x64]
sub eax, 0x62
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc62db
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc62db
mov dword [rsp + 0x58], 2
jmp 0x1b722cc636f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc636f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x62
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc642e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc642e
mov dword [rsp + 0x54], 2
jmp 0x1b722cc64c2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc64c2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc67db
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc65d6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc65d6
mov dword [rsp + 0x50], 2
jmp 0x1b722cc666a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc666a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc671a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc671a
mov dword [rsp + 0x70], 2
jmp 0x1b722cc67ae
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc67ae
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0xc
jb 0x1b722cc58e5
xor r14d, r14d
mov byte [rsi], 1
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov rcx, qword [rsp + 0x38]
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rsi + 1]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r8d, edi
xor edx, edx
mov ecx, 0x400
call rax
lea rcx, str.user32
mov qword [rsp + 0x38], rax
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.1b722c410f0
movsd xmm7, qword [0x1b722d1a658]
xor edx, edx
movsd xmm9, qword [0x1b722d1a650]
movsx ecx, al
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7b14
movsx eax, byte [0x1b722d1ee8a]
test rdi, rdi
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
mov rax, r14
cvtdq2pd xmm0, xmm0
sete al
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc694b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc694b
mov esi, 2
jmp 0x1b722cc69e1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc69dd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si esi, xmm0
jmp 0x1b722cc69e1
mov esi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, esi
test eax, eax
je 0x1b722cc7b14
xor eax, eax
lea rdx, [rbp + 0x2c8]
lea rcx, [rbp - 0x6e]
mov byte [rbp - 0x6e], al
call fcn.1b722cf5ba0
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cc797e
mov dword [rsp + 0x64], r14d
mov ecx, dword [rsp + 0x64]
cmp ecx, 0x18
jae 0x1b722cc797e
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc6d52
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc6b57
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc6b57
mov r14d, 2
jmp 0x1b722cc6be8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc6be8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc6c97
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc6c97
mov r15d, 2
jmp 0x1b722cc6d28
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc6d28
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7676
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc7074
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc6e7a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc6e7a
mov r12d, 2
jmp 0x1b722cc6f0b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc6f0b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc6fb9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc6fb9
mov r13d, 2
jmp 0x1b722cc704a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc704a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc735e
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7159
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc7159
mov dword [rsp + 0x60], 2
jmp 0x1b722cc71ed
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc71ed
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc729d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc729d
mov dword [rsp + 0x5c], 2
jmp 0x1b722cc7331
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7331
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7676
mov eax, dword [rsp + 0x64]
sub eax, 0x60
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7462
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc7462
mov dword [rsp + 0x58], 2
jmp 0x1b722cc74f6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc74f6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x60
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc75b5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc75b5
mov dword [rsp + 0x54], 2
jmp 0x1b722cc7649
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7649
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc7964
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc775e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc775e
mov dword [rsp + 0x50], 2
jmp 0x1b722cc77f2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc77f2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc78a3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc78a3
mov dword [rsp + 0x70], 2
jmp 0x1b722cc7937
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7937
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0x18
jb 0x1b722cc6a70
xor r14d, r14d
lea rcx, [rsi + 1]
mov byte [rsi], 1
call fcn.1b722c41050
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
add edi, edi
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7a75
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x1b722cf43eb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7b07
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
jmp 0x1b722cc7b0b
mov eax, dword [rsp + 0x30]
cmp r14d, eax
jl 0x1b722cf43eb
mov qword [rbp + 0x390], r14
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.1b722c410f0
movsd xmm10, qword [0x1b722d1a628]
xor edx, edx
movsd xmm11, qword [0x1b722d1a620]
movsx ecx, al
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccad04
xor eax, eax
lea rdx, [rbp + 0x138]
lea rcx, [rbp - 0x6c]
mov byte [rbp - 0x6d], al
mov byte [rbp - 0x6c], al
call fcn.1b722cf5d20
movsd xmm6, qword [0x1b722d1a648]
mov rsi, rax
movsd xmm8, qword [0x1b722d1a640]
cmp byte [rax], 0
jne 0x1b722cc8ade
mov dword [rsp + 0x64], r14d
mov ecx, dword [rsp + 0x64]
cmp ecx, 0xd
jae 0x1b722cc8ade
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
nop dword [rax + rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc7eb0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7cb6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc7cb6
mov r14d, 2
jmp 0x1b722cc7d47
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7d47
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7df5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc7df5
mov r15d, 2
jmp 0x1b722cc7e86
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7e86
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc87d6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc81d4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc7fd9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc7fd9
mov r12d, 2
jmp 0x1b722cc806a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc806a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8119
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc8119
mov r13d, 2
jmp 0x1b722cc81aa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc81aa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc84be
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc82b9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc82b9
mov dword [rsp + 0x60], 2
jmp 0x1b722cc834d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc834d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc83fd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc83fd
mov dword [rsp + 0x5c], 2
jmp 0x1b722cc8491
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8491
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc87d6
mov eax, dword [rsp + 0x64]
sub eax, 0x5e
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc85c2
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc85c2
mov dword [rsp + 0x58], 2
jmp 0x1b722cc8656
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8656
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x5e
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8715
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc8715
mov dword [rsp + 0x54], 2
jmp 0x1b722cc87a9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc87a9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc8ac4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc88be
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc88be
mov dword [rsp + 0x50], 2
jmp 0x1b722cc8952
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8952
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8a03
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc8a03
mov dword [rsp + 0x70], 2
jmp 0x1b722cc8a97
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8a97
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0xd
jb 0x1b722cc7bd0
xor r14d, r14d
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0x280]
mov qword [rsp + 0x40], rax
lea rcx, [rbp - 0x6d]
call fcn.1b722cf5ea0
movsd xmm7, qword [0x1b722d1a638]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cc9a42
mov dword [rsp + 0x64], r14d
mov ecx, dword [rsp + 0x64]
cmp ecx, 0x11
jae 0x1b722cc9a42
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc8e16
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8c1b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc8c1b
mov r14d, 2
jmp 0x1b722cc8cac
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8cac
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8d5b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc8d5b
mov r15d, 2
jmp 0x1b722cc8dec
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8dec
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc973c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc9138
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8f3e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc8f3e
mov r12d, 2
jmp 0x1b722cc8fcf
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc8fcf
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc907d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc907d
mov r13d, 2
jmp 0x1b722cc910e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc910e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc9424
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc921e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc921e
mov dword [rsp + 0x60], 2
jmp 0x1b722cc92b2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc92b2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc9363
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc9363
mov dword [rsp + 0x5c], 2
jmp 0x1b722cc93f7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc93f7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc973c
mov eax, dword [rsp + 0x64]
sub eax, 0x5d
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc9528
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc9528
mov dword [rsp + 0x58], 2
jmp 0x1b722cc95bc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc95bc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x5d
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc967b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc967b
mov dword [rsp + 0x54], 2
jmp 0x1b722cc970f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc970f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc9a28
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc9823
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc9823
mov dword [rsp + 0x50], 2
jmp 0x1b722cc98b7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc98b7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc9967
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc9967
mov dword [rsp + 0x70], 2
jmp 0x1b722cc99fb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc99fb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and dl, byte [rsp + 0x70]
add dl, dl
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub r8b, dl
add r8b, byte [rsp + 0x50]
mov byte [rax + rsi + 1], r8b
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0x11
jb 0x1b722cc8b34
xor r14d, r14d
mov rcx, qword [rsp + 0x40]
mov byte [rsi], 1
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rsi + 1]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rsp + 0x38]
lea r8, [rbp + 0x390]
mov edx, 0x20
call rax
test eax, eax
mov rcx, r14
movsx eax, byte [0x1b722d1ee8a]
xorps xmm2, xmm2
sete cl
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
cvtsi2sd xmm2, rcx
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc9b2d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc9b2d
mov edi, 2
jmp 0x1b722cc9bc3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc9bbf
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si edi, xmm0
jmp 0x1b722cc9bc3
mov edi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x1b722ccad04
xor eax, eax
lea rdx, [rbp + 0x348]
lea rcx, [rbp - 0x6b]
mov byte [rbp - 0x6b], al
call fcn.1b722cf6010
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722ccab6e
mov dword [rsp + 0x64], r14d
mov ecx, dword [rsp + 0x64]
cmp ecx, 0x1d
jae 0x1b722ccab6e
movsd xmm6, qword [0x1b722d1a630]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
nop dword [rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc9f40
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc9d46
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc9d46
mov r14d, 2
jmp 0x1b722cc9dd7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc9dd7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc9e85
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cc9e85
mov r15d, 2
jmp 0x1b722cc9f16
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cc9f16
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca866
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cca262
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca068
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cca068
mov r12d, 2
jmp 0x1b722cca0f9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca0f9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca1a7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cca1a7
mov r13d, 2
jmp 0x1b722cca238
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca238
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cca54e
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca348
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cca348
mov dword [rsp + 0x60], 2
jmp 0x1b722cca3dc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca3dc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca48d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cca48d
mov dword [rsp + 0x5c], 2
jmp 0x1b722cca521
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca521
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca866
mov eax, dword [rsp + 0x64]
sub eax, 0x5a
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca652
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cca652
mov dword [rsp + 0x58], 2
jmp 0x1b722cca6e6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca6e6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x5a
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca7a5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cca7a5
mov dword [rsp + 0x54], 2
jmp 0x1b722cca839
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca839
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccab54
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca94e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cca94e
mov dword [rsp + 0x50], 2
jmp 0x1b722cca9e2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cca9e2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccaa93
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccaa93
mov dword [rsp + 0x70], 2
jmp 0x1b722ccab27
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccab27
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0x1d
jb 0x1b722cc9c60
xor r14d, r14d
lea rcx, [rsi + 1]
mov byte [rsi], 1
call fcn.1b722c41050
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
add edi, edi
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccac65
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x1b722cf43eb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccacf7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
jmp 0x1b722ccacfb
mov eax, dword [rsp + 0x30]
cmp r14d, eax
jl 0x1b722cf43eb
xor eax, eax
movaps xmmword [rsp + 0x30d0], xmm13
lea rdx, [rbp - 0x10]
mov byte [rbp - 0x6a], al
lea rcx, [rbp - 0x6a]
call fcn.1b722cf61a0
movsd xmm6, qword [0x1b722d1a618]
mov rsi, rax
movsd xmm7, qword [0x1b722d1a610]
cmp byte [rax], 0
jne 0x1b722ccbc62
mov dword [rsp + 0x64], r14d
mov ecx, dword [rsp + 0x64]
cmp ecx, 1
jae 0x1b722ccbc62
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccb041
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccae48
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccae48
mov r14d, 2
jmp 0x1b722ccaed9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccaed9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccaf88
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccaf88
mov r15d, 2
jmp 0x1b722ccb019
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb019
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb961
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccb363
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb16a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccb16a
mov r12d, 2
jmp 0x1b722ccb1fb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb1fb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb2aa
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccb2aa
mov r13d, 2
jmp 0x1b722ccb33b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb33b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccb64b
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb448
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccb448
mov dword [rsp + 0x60], 2
jmp 0x1b722ccb4dc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb4dc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb58c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccb58c
mov dword [rsp + 0x5c], 2
jmp 0x1b722ccb620
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb620
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x5c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb961
mov eax, dword [rsp + 0x64]
sub eax, 0x58
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb74f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccb74f
mov dword [rsp + 0x58], 2
jmp 0x1b722ccb7e3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb7e3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x58
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb8a2
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccb8a2
mov dword [rsp + 0x54], 2
jmp 0x1b722ccb936
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccb936
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x54]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x58]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccbc4b
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccba48
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccba48
mov dword [rsp + 0x50], 2
jmp 0x1b722ccbadc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccbadc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccbb8c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccbb8c
mov dword [rsp + 0x70], 2
jmp 0x1b722ccbc20
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccbc20
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x70]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x50]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 1
jb 0x1b722ccad61
mov byte [rsi], 1
lea r8, [0x1b722c40000]
mov eax, dword [rsi + 4]
mov edx, 5
mov rcx, qword [rbp + 0x390]
call qword [r8 + rax*8 + 0xdf4d0]
xor eax, eax
lea rdx, [rbp - 8]
lea rcx, [rbp - 0x68]
mov byte [rbp - 0x69], al
mov byte [rbp - 0x68], al
call fcn.1b722cf6300
movsd xmm10, qword [0x1b722d1a608]
xor ebx, ebx
movsd xmm13, qword [0x1b722d1a600]
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722cccbd6
mov dword [rsp + 0x64], ebx
mov ecx, dword [rsp + 0x64]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccbfb1
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccbdb9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccbdb9
mov r14d, 2
jmp 0x1b722ccbe4a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccbe4a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccbef8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccbef8
mov r15d, 2
jmp 0x1b722ccbf89
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccbf89
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc8d1
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccc2d1
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc0d9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccc0d9
mov r12d, 2
jmp 0x1b722ccc16a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc16a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc218
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccc218
mov r13d, 2
jmp 0x1b722ccc2a9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc2a9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccc5bb
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc3b7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccc3b7
mov dword [rsp + 0x60], 2
jmp 0x1b722ccc44b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc44b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc4fc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccc4fc
mov dword [rsp + 0x5c], 2
jmp 0x1b722ccc590
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc590
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x5c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc8d1
mov eax, dword [rsp + 0x64]
sub eax, 0x56
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc6bf
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccc6bf
mov dword [rsp + 0x58], 2
jmp 0x1b722ccc753
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc753
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x56
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc812
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccc812
mov dword [rsp + 0x54], 2
jmp 0x1b722ccc8a6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc8a6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x54]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x58]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cccbbd
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm13
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccc9b9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccc9b9
mov dword [rsp + 0x50], 2
jmp 0x1b722ccca4d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccca4d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm13
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cccafe
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cccafe
mov dword [rsp + 0x70], 2
jmp 0x1b722cccb92
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cccb92
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x70]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x50]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 1
jb 0x1b722ccbcd3
xor ebx, ebx
mov byte [rsi], 1
lea rdx, [rbp + 0x298]
mov eax, dword [rsi + 4]
lea rcx, [rbp - 0x69]
mov dword [rsp + 0x64], eax
call fcn.1b722cf6460
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722ccdb2c
mov dword [rsp + 0x60], ebx
mov ecx, dword [rsp + 0x60]
cmp ecx, 0x12
jae 0x1b722ccdb2c
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cccf03
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cccd08
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cccd08
mov r14d, 2
jmp 0x1b722cccd99
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cccd99
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccce48
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccce48
mov r15d, 2
jmp 0x1b722ccced9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccced9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x60]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x60]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x60]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd827
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccd225
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd02b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccd02b
mov r12d, 2
jmp 0x1b722ccd0bc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd0bc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd16a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccd16a
mov r13d, 2
jmp 0x1b722ccd1fb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd1fb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x60]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x60]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x60]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccd50f
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd30a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccd30a
mov dword [rsp + 0x5c], 2
jmp 0x1b722ccd39e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd39e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd44e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccd44e
mov dword [rsp + 0x58], 2
jmp 0x1b722ccd4e2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd4e2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x60]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x60]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x60]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd827
mov eax, dword [rsp + 0x60]
sub eax, 0x57
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd613
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccd613
mov dword [rsp + 0x54], 2
jmp 0x1b722ccd6a7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd6a7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x60]
sub eax, 0x57
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd766
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccd766
mov dword [rsp + 0x50], 2
jmp 0x1b722ccd7fa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd7fa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x60]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x60]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x60]
sub dl, r8b
add dl, byte [rsp + 0x54]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccdb15
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd90f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccd90f
mov dword [rsp + 0x70], 2
jmp 0x1b722ccd9a3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccd9a3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccda54
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccda54
mov dword [rsp + 0x78], 2
jmp 0x1b722ccdae8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccdae8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x78], eax
movsxd rax, dword [rsp + 0x60]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x60]
and r8b, byte [rsp + 0x78]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x60]
sub dl, r8b
add dl, byte [rsp + 0x70]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x60]
inc eax
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x60]
cmp eax, 0x12
jb 0x1b722cccc21
mov eax, dword [rsp + 0x64]
lea rcx, [rsi + 1]
lea rdx, [0x1b722c40000]
mov byte [rsi], 1
call qword [rdx + rax*8 + 0xdf070]
mov qword [rsp + 0x38], rax
lea rdx, [rbp + 0x148]
xor eax, eax
lea rcx, [rbp - 0x64]
mov byte [rbp - 0x67], al
mov byte [rbp - 0x66], al
mov byte [rbp - 0x65], al
mov byte [rbp - 0x64], al
call fcn.1b722cf65e0
movsd xmm8, qword [0x1b722d1a5f8]
xor ebx, ebx
movsd xmm7, qword [0x1b722d1a5f0]
mov rsi, rax
movsd xmm9, qword [0x1b722d1a5e8]
movsd xmm6, qword [0x1b722d1a5e0]
cmp byte [rax], bl
jne 0x1b722cceac0
mov dword [rsp + 0x64], ebx
mov ecx, dword [rsp + 0x64]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccde95
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccdc9a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccdc9a
mov r14d, 2
jmp 0x1b722ccdd2b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccdd2b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccddda
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccddda
mov r15d, 2
jmp 0x1b722ccde6b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccde6b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce7bb
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cce1b7
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccdfbd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccdfbd
mov r12d, 2
jmp 0x1b722cce04e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce04e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce0fc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cce0fc
mov r13d, 2
jmp 0x1b722cce18d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce18d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cce4a3
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce29d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cce29d
mov dword [rsp + 0x60], 2
jmp 0x1b722cce331
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce331
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce3e2
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cce3e2
mov dword [rsp + 0x5c], 2
jmp 0x1b722cce476
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce476
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce7bb
mov eax, dword [rsp + 0x64]
sub eax, 0x52
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce5a7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cce5a7
mov dword [rsp + 0x58], 2
jmp 0x1b722cce63b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce63b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x52
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce6fa
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cce6fa
mov dword [rsp + 0x54], 2
jmp 0x1b722cce78e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce78e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cceaa7
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce8a2
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cce8a2
mov dword [rsp + 0x50], 2
jmp 0x1b722cce936
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce936
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x40], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cce9e6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cce9e6
mov dword [rsp + 0x70], 2
jmp 0x1b722ccea7a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccea7a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x40]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0xd
jb 0x1b722ccdbb3
xor ebx, ebx
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0x158]
mov qword [rsp + 0x40], rax
lea rcx, [rbp - 0x65]
call fcn.1b722cf6760
movsd xmm12, qword [0x1b722d1a5d8]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722ccfa21
mov dword [rsp + 0x64], ebx
mov ecx, dword [rsp + 0x64]
cmp ecx, 0xd
jae 0x1b722ccfa21
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccedf6
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccebfc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccebfc
mov r14d, 2
jmp 0x1b722ccec8d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccec8d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cced3b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cced3b
mov r15d, 2
jmp 0x1b722ccedcc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccedcc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf71c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccf11a
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccef1f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccef1f
mov r12d, 2
jmp 0x1b722ccefb0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccefb0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf05f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccf05f
mov r13d, 2
jmp 0x1b722ccf0f0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf0f0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccf404
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf1ff
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccf1ff
mov dword [rsp + 0x60], 2
jmp 0x1b722ccf293
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf293
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf343
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccf343
mov dword [rsp + 0x5c], 2
jmp 0x1b722ccf3d7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf3d7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x5c]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x60]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf71c
mov eax, dword [rsp + 0x64]
sub eax, 0x51
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf508
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccf508
mov dword [rsp + 0x58], 2
jmp 0x1b722ccf59c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf59c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x51
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf65b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccf65b
mov dword [rsp + 0x54], 2
jmp 0x1b722ccf6ef
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf6ef
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccfa0a
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm12
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf804
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccf804
mov dword [rsp + 0x50], 2
jmp 0x1b722ccf898
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf898
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm12
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf949
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccf949
mov dword [rsp + 0x70], 2
jmp 0x1b722ccf9dd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccf9dd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x64]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 0xd
jb 0x1b722cceb16
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 8]
mov qword [rsp + 0x68], rax
lea rcx, [rbp - 0x66]
call fcn.1b722cf68e0
xor ebx, ebx
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722cd0968
mov dword [rsp + 0x64], ebx
mov ecx, dword [rsp + 0x64]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccfd43
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccfb4a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccfb4a
mov r14d, 2
jmp 0x1b722ccfbdb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccfbdb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccfc8a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccfc8a
mov r15d, 2
jmp 0x1b722ccfd1b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccfd1b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0665
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd0065
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm13
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccfe6c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccfe6c
mov r12d, 2
jmp 0x1b722ccfefd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccfefd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm13
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ccffac
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ccffac
mov r13d, 2
jmp 0x1b722cd003d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd003d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd034f
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd014b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd014b
mov dword [rsp + 0x60], 2
jmp 0x1b722cd01df
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd01df
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0290
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd0290
mov dword [rsp + 0x5c], 2
jmp 0x1b722cd0324
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0324
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x5c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0665
mov eax, dword [rsp + 0x64]
sub eax, 0x54
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0453
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd0453
mov dword [rsp + 0x58], 2
jmp 0x1b722cd04e7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd04e7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x54
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd05a6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd05a6
mov dword [rsp + 0x54], 2
jmp 0x1b722cd063a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd063a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x54]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x58]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd094f
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd074c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd074c
mov dword [rsp + 0x50], 2
jmp 0x1b722cd07e0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd07e0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x78], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0890
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd0890
mov dword [rsp + 0x70], 2
jmp 0x1b722cd0924
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0924
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x70]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x50]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 1
jb 0x1b722ccfa63
xor ebx, ebx
mov byte [rsi], 1
lea rdx, [rbp + 0x10]
mov eax, dword [rsi + 4]
lea rcx, [rbp - 0x67]
mov dword [rsp + 0x64], eax
call fcn.1b722cf6a40
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cd18b3
mov dword [rsp + 0x60], ebx
mov ecx, dword [rsp + 0x60]
cmp ecx, 1
jae 0x1b722cd18b3
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd0c90
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm13
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0a97
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd0a97
mov r14d, 2
jmp 0x1b722cd0b28
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0b28
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm13
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0bd7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd0bd7
mov r15d, 2
jmp 0x1b722cd0c68
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0c68
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x60]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd15b0
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd0fb2
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0db9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd0db9
mov r12d, 2
jmp 0x1b722cd0e4a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0e4a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0ef9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd0ef9
mov r13d, 2
jmp 0x1b722cd0f8a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd0f8a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x60]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd129a
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1097
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd1097
mov dword [rsp + 0x5c], 2
jmp 0x1b722cd112b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd112b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd11db
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd11db
mov dword [rsp + 0x58], 2
jmp 0x1b722cd126f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd126f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x60]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
and r8d, dword [rsp + 0x58]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
sub edx, r8d
add edx, dword [rsp + 0x5c]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd15b0
mov eax, dword [rsp + 0x60]
sub eax, 0x53
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd139e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd139e
mov dword [rsp + 0x54], 2
jmp 0x1b722cd1432
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1432
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x60]
sub eax, 0x53
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd14f1
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd14f1
mov dword [rsp + 0x50], 2
jmp 0x1b722cd1585
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1585
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x60]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
and r8d, dword [rsp + 0x50]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
sub edx, r8d
add edx, dword [rsp + 0x54]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd189c
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1698
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd1698
mov dword [rsp + 0x70], 2
jmp 0x1b722cd172c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd172c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd17dd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd17dd
mov dword [rsp + 0x78], 2
jmp 0x1b722cd1871
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1871
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x78], eax
movsxd rax, dword [rsp + 0x60]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
and r8d, dword [rsp + 0x78]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
sub edx, r8d
add edx, dword [rsp + 0x70]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x60]
inc eax
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x60]
cmp eax, 1
jb 0x1b722cd09b0
mov rcx, qword [rsp + 0x40]
movsxd rdi, dword [rsp + 0x64]
mov byte [rsi], 1
movsxd rbx, dword [rsi + 4]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rdx, qword [rsp + 0x68]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r9d, 4
mov r8d, 0x3000
mov rdx, rbx
mov rcx, rdi
call rax
mov rdi, rax
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movaps xmm13, xmmword [rsp + 0x30d0]
xor edx, edx
movsx ecx, al
xor r14d, r14d
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1c67
movsx eax, byte [0x1b722d1ee8a]
test rdi, rdi
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
mov eax, r14d
cvtdq2pd xmm0, xmm0
sete al
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd19fe
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd19fe
mov edi, 2
jmp 0x1b722cd1a94
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1a90
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si edi, xmm0
jmp 0x1b722cd1a94
mov edi, dword [rsp + 0x30]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x1b722cd1c67
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1bc8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x1b722cf43eb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1c5a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
jmp 0x1b722cd1c5e
mov eax, dword [rsp + 0x30]
cmp r14d, eax
jl 0x1b722cf43eb
xor eax, eax
lea rdx, [rbp + 0x18]
lea rcx, [rbp - 0x63]
mov byte [rbp - 0x63], al
mov byte [rbp - 0x62], al
mov byte [rbp - 0x61], al
mov byte [rbp - 0x60], al
call fcn.1b722cf7000
movsd xmm6, qword [0x1b722d1a5d0]
mov rsi, rax
movsd xmm9, qword [0x1b722d1a5c8]
movsd xmm10, qword [0x1b722d1a5c0]
cmp byte [rax], 0
movsd xmm11, qword [0x1b722d1a5b8]
jne 0x1b722cd2bda
mov dword [rsp + 0x64], r14d
mov ecx, dword [rsp + 0x64]
cmp ecx, 1
jae 0x1b722cd2bda
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd1fb5
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1dbd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd1dbd
mov r14d, 2
jmp 0x1b722cd1e4e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1e4e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1efc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd1efc
mov r15d, 2
jmp 0x1b722cd1f8d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd1f8d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd28d7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd22d7
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd20de
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd20de
mov r12d, 2
jmp 0x1b722cd216f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd216f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd221e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd221e
mov r13d, 2
jmp 0x1b722cd22af
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd22af
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd25c1
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd23bd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd23bd
mov dword [rsp + 0x60], 2
jmp 0x1b722cd2451
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd2451
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd2502
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd2502
mov dword [rsp + 0x5c], 2
jmp 0x1b722cd2596
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd2596
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x5c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd28d7
mov eax, dword [rsp + 0x64]
sub eax, 0x4d
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd26c5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd26c5
mov dword [rsp + 0x58], 2
jmp 0x1b722cd2759
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd2759
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x64]
sub eax, 0x4d
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd2818
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd2818
mov dword [rsp + 0x54], 2
jmp 0x1b722cd28ac
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd28ac
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x54]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x58]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd2bc3
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd29bf
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd29bf
mov dword [rsp + 0x50], 2
jmp 0x1b722cd2a53
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd2a53
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd2b04
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd2b04
mov dword [rsp + 0x70], 2
jmp 0x1b722cd2b98
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd2b98
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x64]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
and r8d, dword [rsp + 0x70]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x64]
sub edx, r8d
add edx, dword [rsp + 0x50]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
mov eax, dword [rsp + 0x64]
cmp eax, 1
jb 0x1b722cd1cd7
mov byte [rsi], 1
lea rdx, [rbp + 0x20]
mov eax, dword [rsi + 4]
lea rcx, [rbp - 0x62]
mov dword [rsp + 0x64], eax
call fcn.1b722cf6ea0
xor ebx, ebx
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722cd3b25
mov dword [rsp + 0x60], ebx
mov ecx, dword [rsp + 0x60]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
nop word [rax + rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd2f00
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm12
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd2d07
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd2d07
mov r14d, 2
jmp 0x1b722cd2d98
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd2d98
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm12
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd2e47
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd2e47
mov r15d, 2
jmp 0x1b722cd2ed8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd2ed8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x60]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3820
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd3220
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3028
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd3028
mov r12d, 2
jmp 0x1b722cd30b9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd30b9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3167
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd3167
mov r13d, 2
jmp 0x1b722cd31f8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd31f8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x60]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd350a
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3306
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd3306
mov dword [rsp + 0x5c], 2
jmp 0x1b722cd339a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd339a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd344b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd344b
mov dword [rsp + 0x58], 2
jmp 0x1b722cd34df
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd34df
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x60]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
and r8d, dword [rsp + 0x58]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
sub edx, r8d
add edx, dword [rsp + 0x5c]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3820
mov eax, dword [rsp + 0x60]
sub eax, 0x4e
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd360e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd360e
mov dword [rsp + 0x54], 2
jmp 0x1b722cd36a2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd36a2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x60]
sub eax, 0x4e
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3761
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd3761
mov dword [rsp + 0x50], 2
jmp 0x1b722cd37f5
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd37f5
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x60]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
and r8d, dword [rsp + 0x50]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
sub edx, r8d
add edx, dword [rsp + 0x54]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd3b0c
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3908
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd3908
mov dword [rsp + 0x70], 2
jmp 0x1b722cd399c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd399c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3a4d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd3a4d
mov dword [rsp + 0x78], 2
jmp 0x1b722cd3ae1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3ae1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x78], eax
movsxd rax, dword [rsp + 0x60]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
and r8d, dword [rsp + 0x78]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x60]
sub edx, r8d
add edx, dword [rsp + 0x70]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x60]
inc eax
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x60]
cmp eax, 1
jb 0x1b722cd2c20
xor ebx, ebx
mov byte [rsi], 1
lea rdx, [rbp + 0x168]
mov eax, dword [rsi + 4]
lea rcx, [rbp - 0x61]
mov dword [rsp + 0x60], eax
call fcn.1b722cf6d20
movsd xmm7, qword [0x1b722d1a5b0]
mov rsi, rax
movsd xmm8, qword [0x1b722d1a5a0]
cmp byte [rax], 0
jne 0x1b722cd4a9b
mov dword [rsp + 0x5c], ebx
mov ecx, dword [rsp + 0x5c]
cmp ecx, 0xd
jae 0x1b722cd4a9b
movsd xmm6, qword [0x1b722d1a5a8]
mov r14d, dword [rsp + 0x30]
mov r15d, dword [rsp + 0x30]
mov r12d, dword [rsp + 0x30]
mov r13d, dword [rsp + 0x30]
nop dword [rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd3e72
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3c77
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd3c77
mov r14d, 2
jmp 0x1b722cd3d08
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3d08
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3db7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd3db7
mov r15d, 2
jmp 0x1b722cd3e48
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3e48
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x5c]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x5c]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x5c]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4796
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd4194
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd3f9a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd3f9a
mov r12d, 2
jmp 0x1b722cd402b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd402b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd40d9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd40d9
mov r13d, 2
jmp 0x1b722cd416a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd416a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x5c]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x5c]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x5c]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd447e
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4279
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd4279
mov dword [rsp + 0x58], 2
jmp 0x1b722cd430d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd430d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd43bd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd43bd
mov dword [rsp + 0x54], 2
jmp 0x1b722cd4451
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4451
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsxd rax, dword [rsp + 0x5c]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x5c]
and r8b, byte [rsp + 0x54]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x5c]
sub dl, r8b
add dl, byte [rsp + 0x58]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4796
mov eax, dword [rsp + 0x5c]
sub eax, 0x4a
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4582
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd4582
mov dword [rsp + 0x50], 2
jmp 0x1b722cd4616
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4616
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x5c]
sub eax, 0x4a
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd46d5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd46d5
mov dword [rsp + 0x70], 2
jmp 0x1b722cd4769
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4769
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x5c]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x5c]
and r8b, byte [rsp + 0x70]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x5c]
sub dl, r8b
add dl, byte [rsp + 0x50]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd4a84
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd487e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd487e
mov dword [rsp + 0x78], 2
jmp 0x1b722cd4912
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4912
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x78], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd49c3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd49c3
mov dword [rsp + 0x40], 2
jmp 0x1b722cd4a57
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4a57
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x40], eax
movsxd rax, dword [rsp + 0x5c]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x5c]
and r8b, byte [rsp + 0x40]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x5c]
sub dl, r8b
add dl, byte [rsp + 0x78]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x5c]
inc eax
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x5c]
cmp eax, 0xd
jb 0x1b722cd3b90
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0x178]
mov qword [rsp + 0x48], rax
lea rcx, [rbp - 0x60]
call fcn.1b722cf6ba0
xor r12d, r12d
mov rsi, rax
cmp byte [rax], r12b
jne 0x1b722cd59f3
mov dword [rsp + 0x40], r12d
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd4dc5
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4bca
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd4bca
mov r14d, 2
jmp 0x1b722cd4c5b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4c5b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4d0a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd4d0a
mov r15d, 2
jmp 0x1b722cd4d9b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4d9b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd56ed
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd50e9
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4eee
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd4eee
mov r12d, 2
jmp 0x1b722cd4f7f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd4f7f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd502e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd502e
mov r13d, 2
jmp 0x1b722cd50bf
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd50bf
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd53d5
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd51cf
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd51cf
mov dword [rsp + 0x5c], 2
jmp 0x1b722cd5263
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd5263
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm11
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd5314
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd5314
mov dword [rsp + 0x58], 2
jmp 0x1b722cd53a8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd53a8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd56ed
mov eax, dword [rsp + 0x40]
sub eax, 0x4c
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd54d9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd54d9
mov dword [rsp + 0x54], 2
jmp 0x1b722cd556d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd556d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x4c
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd562c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd562c
mov dword [rsp + 0x50], 2
jmp 0x1b722cd56c0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd56c0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x54]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd59d9
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd57d4
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd57d4
mov dword [rsp + 0x70], 2
jmp 0x1b722cd5868
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd5868
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd5918
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd5918
mov dword [rsp + 0x78], 2
jmp 0x1b722cd59ac
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd59ac
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x78], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x78]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x70]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xd
jb 0x1b722cd4ae3
xor r12d, r12d
movsxd rbx, dword [rsp + 0x64]
lea rcx, [rsi + 1]
movsxd rdi, dword [rsp + 0x60]
mov byte [rsi], 1
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rdx, qword [rsp + 0x48]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r9d, 4
mov r8d, 0x3000
mov rdx, rbx
mov rcx, rdi
call rax
mov r15, rax
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd5d99
movsx eax, byte [0x1b722d1ee8a]
test r15, r15
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
mov rax, r12
cvtdq2pd xmm0, xmm0
sete al
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm1, xmm0
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd5b30
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd5b30
mov esi, 2
jmp 0x1b722cd5bc6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd5bc2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si esi, xmm0
jmp 0x1b722cd5bc6
mov esi, dword [rsp + 0x40]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, esi
test eax, eax
je 0x1b722cd5d99
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd5cfa
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x1b722cf43eb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd5d8c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
jmp 0x1b722cd5d90
mov eax, dword [rsp + 0x40]
cmp r12d, eax
jl 0x1b722cf43eb
mov r14d, dword [rsp + 0x40]
mov esi, r12d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd5e96
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd5e96
mov r14d, 2
jmp 0x1b722cd5f27
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd5f27
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
cmp esi, r14d
jge 0x1b722cd5f53
mov eax, 0x10000
mov qword [rax], 0x2000050
mov qword [rax + 8], 0x2000100
add rax, 0x10
cmp rax, 0x1000000
jb 0x1b722cd5f31
inc esi
jmp 0x1b722cd5da1
mov rax, qword [0x1b722d20be0]
xor edx, edx
mov qword [0x14af40], r12
mov r8d, 0x600
mov qword [r15 + 0x50], rax
mov qword [r15 + 0x58], rax
mov rax, qword [rsp + 0x38]
mov qword [r15 + 0xb8], rax
mov rax, qword [0x1b722d20bf0]
mov qword [r15 + 0x100], 1
mov ecx, dword [rax + 0x38]
add rcx, qword [rax + 0x30]
mov qword [r15 + 0x108], rcx
lea rcx, [rbp + 0x5c0]
call fcn.1b722d0f630
xor edx, edx
lea rcx, [rbp + 0xbc0]
mov r8d, 0x600
call fcn.1b722d0f630
xor edx, edx
lea rcx, [rbp + 0x11c0]
mov r8d, 0x600
call fcn.1b722d0f630
xor edx, edx
lea rcx, [rbp + 0x17c0]
mov r8d, 0x600
call fcn.1b722d0f630
xor edx, edx
lea rcx, [rbp + 0x1dc0]
mov r8d, 0x600
call fcn.1b722d0f630
xor edx, edx
lea rcx, [rbp + 0x23c0]
mov r8d, 0x600
call fcn.1b722d0f630
xor edx, edx
lea rcx, [rbp + 0x29c0]
mov r8d, 0x600
call fcn.1b722d0f630
xor eax, eax
lea rdx, [rbp + 0x188]
lea rcx, [rbp - 0x5e]
mov byte [rbp - 0x5f], al
mov byte [rbp - 0x5e], al
call fcn.1b722cf7160
movsd xmm6, qword [0x1b722d1a598]
mov rsi, rax
movsd xmm9, qword [0x1b722d1a590]
movsd xmm10, qword [0x1b722d1a588]
cmp byte [rax], 0
jne 0x1b722cd6f96
mov dword [rsp + 0x40], r12d
mov ecx, dword [rsp + 0x40]
cmp ecx, 0xd
jae 0x1b722cd6f96
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd6368
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd616d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd616d
mov r14d, 2
jmp 0x1b722cd61fe
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd61fe
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd62ad
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd62ad
mov r15d, 2
jmp 0x1b722cd633e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd633e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6c8e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd668a
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6490
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd6490
mov r12d, 2
jmp 0x1b722cd6521
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6521
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd65cf
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd65cf
mov r13d, 2
jmp 0x1b722cd6660
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6660
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd6976
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6770
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd6770
mov dword [rsp + 0x64], 2
jmp 0x1b722cd6804
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6804
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd68b5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd68b5
mov dword [rsp + 0x60], 2
jmp 0x1b722cd6949
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6949
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6c8e
mov eax, dword [rsp + 0x40]
sub eax, 0x47
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6a7a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd6a7a
mov dword [rsp + 0x5c], 2
jmp 0x1b722cd6b0e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6b0e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x47
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6bcd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd6bcd
mov dword [rsp + 0x58], 2
jmp 0x1b722cd6c61
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6c61
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd6f7c
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6d76
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd6d76
mov dword [rsp + 0x54], 2
jmp 0x1b722cd6e0a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6e0a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6ebb
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd6ebb
mov dword [rsp + 0x50], 2
jmp 0x1b722cd6f4f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd6f4f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x54]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xd
jb 0x1b722cd6086
xor r12d, r12d
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0x198]
mov qword [rsp + 0x48], rax
lea rcx, [rbp - 0x5f]
call fcn.1b722cf72e0
movsd xmm7, qword [0x1b722d1a580]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cd7efb
mov dword [rsp + 0x40], r12d
mov ecx, dword [rsp + 0x40]
cmp ecx, 0xd
jae 0x1b722cd7efb
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop dword [rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd72d0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd70d6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd70d6
mov r14d, 2
jmp 0x1b722cd7167
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd7167
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd7215
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd7215
mov r15d, 2
jmp 0x1b722cd72a6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd72a6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd7bf8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd75f4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd73f9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd73f9
mov r12d, 2
jmp 0x1b722cd748a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd748a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd7539
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd7539
mov r13d, 2
jmp 0x1b722cd75ca
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd75ca
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd78e0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd76da
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd76da
mov dword [rsp + 0x64], 2
jmp 0x1b722cd776e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd776e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd781f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd781f
mov dword [rsp + 0x60], 2
jmp 0x1b722cd78b3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd78b3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd7bf8
mov eax, dword [rsp + 0x40]
sub eax, 0x46
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd79e4
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd79e4
mov dword [rsp + 0x5c], 2
jmp 0x1b722cd7a78
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd7a78
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x46
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd7b37
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd7b37
mov dword [rsp + 0x58], 2
jmp 0x1b722cd7bcb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd7bcb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd7ee4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd7cdf
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd7cdf
mov dword [rsp + 0x54], 2
jmp 0x1b722cd7d73
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd7d73
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd7e23
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd7e23
mov dword [rsp + 0x50], 2
jmp 0x1b722cd7eb7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd7eb7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and dl, byte [rsp + 0x50]
add dl, dl
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub r8b, dl
add r8b, byte [rsp + 0x54]
mov byte [rax + rsi + 1], r8b
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xd
jb 0x1b722cd6ff0
mov rcx, qword [rsp + 0x48]
mov byte [rsi], 1
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rsi + 1]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rdx, [rbp + 0x3b0]
mov ecx, 0x104
call rax
xor eax, eax
lea rdx, [rbp + 0x1c8]
lea rcx, [rbp - 0x5d]
mov byte [rbp - 0x5d], al
call fcn.1b722cf7460
movsd xmm8, qword [0x1b722d1a578]
xor ebx, ebx
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722cd8e98
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop dword [rax + rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd8257
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8057
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd8057
mov r14d, 2
jmp 0x1b722cd80e8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd80e8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8197
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd8197
mov r15d, 2
jmp 0x1b722cd8228
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8228
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r15w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r14w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8b8c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd8580
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8380
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd8380
mov r12d, 2
jmp 0x1b722cd8411
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8411
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd84c0
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd84c0
mov r13d, 2
jmp 0x1b722cd8551
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8551
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r13w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r12w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd886f
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8665
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd8665
mov dword [rsp + 0x64], 2
jmp 0x1b722cd86f9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd86f9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd87a9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd87a9
mov dword [rsp + 0x60], 2
jmp 0x1b722cd883d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd883d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x60]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x64]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8b8c
mov eax, dword [rsp + 0x40]
sub eax, 0x45
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8973
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd8973
mov dword [rsp + 0x5c], 2
jmp 0x1b722cd8a07
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8a07
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x45
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8ac6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd8ac6
mov dword [rsp + 0x58], 2
jmp 0x1b722cd8b5a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8b5a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x58]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x5c]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd8e7f
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8c74
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd8c74
mov dword [rsp + 0x54], 2
jmp 0x1b722cd8d08
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8d08
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8db9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd8db9
mov dword [rsp + 0x50], 2
jmp 0x1b722cd8e4d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8e4d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x50]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x54]
mov word [rsi + rax*2 + 2], dx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 7
jb 0x1b722cd7f70
xor ebx, ebx
mov byte [rsi], 1
call fcn.1b722cfd844
mov r9d, eax
lea rdx, [rsi + 2]
lea r8, [rbp + 0x3b0]
lea rcx, [rbp + 0x5c0]
call qword [sym.imp.USER32.dll_wsprintfW]
xor eax, eax
lea rdx, [rbp + 0x1d8]
lea rcx, [rbp - 0x5c]
mov byte [rbp - 0x5c], al
call fcn.1b722cf75c0
movsd xmm6, qword [0x1b722d1a570]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cd9e34
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 7
jae 0x1b722cd9e34
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop dword [rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd91f7
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd8ff7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd8ff7
mov r14d, 2
jmp 0x1b722cd9088
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9088
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9137
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd9137
mov r15d, 2
jmp 0x1b722cd91c8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd91c8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r15w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r14w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9b2c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd951e
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd931f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd931f
mov r12d, 2
jmp 0x1b722cd93b0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd93b0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd945e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd945e
mov r13d, 2
jmp 0x1b722cd94ef
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd94ef
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r13w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r12w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd980f
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9604
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd9604
mov dword [rsp + 0x64], 2
jmp 0x1b722cd9698
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9698
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9749
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd9749
mov dword [rsp + 0x60], 2
jmp 0x1b722cd97dd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd97dd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x60]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x64]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9b2c
mov eax, dword [rsp + 0x40]
sub eax, 0x44
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9913
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd9913
mov dword [rsp + 0x5c], 2
jmp 0x1b722cd99a7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd99a7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x44
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9a66
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd9a66
mov dword [rsp + 0x58], 2
jmp 0x1b722cd9afa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9afa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x58]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x5c]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd9e1d
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9c13
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd9c13
mov dword [rsp + 0x54], 2
jmp 0x1b722cd9ca7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9ca7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9d57
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd9d57
mov dword [rsp + 0x50], 2
jmp 0x1b722cd9deb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9deb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x50]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x54]
mov word [rsi + rax*2 + 2], dx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 7
jb 0x1b722cd8f10
mov byte [rsi], 1
call fcn.1b722cfd844
mov r9d, eax
lea rdx, [rsi + 2]
lea r8, [rbp + 0x3b0]
lea rcx, [rbp + 0xbc0]
call qword [sym.imp.USER32.dll_wsprintfW]
xor eax, eax
lea rdx, [rbp + 0x1e8]
lea rcx, [rbp - 0x5b]
mov byte [rbp - 0x5b], al
call fcn.1b722cf7720
movsd xmm7, qword [0x1b722d1a568]
xor ebx, ebx
movsd xmm10, qword [0x1b722d1a560]
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722cdadcc
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cda18d
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cd9f8d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cd9f8d
mov r14d, 2
jmp 0x1b722cda01e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda01e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda0cd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cda0cd
mov r15d, 2
jmp 0x1b722cda15e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda15e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r15w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r14w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdaac0
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cda4b4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda2b5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cda2b5
mov r12d, 2
jmp 0x1b722cda346
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda346
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda3f4
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cda3f4
mov r13d, 2
jmp 0x1b722cda485
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda485
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r13w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r12w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cda7a3
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda599
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cda599
mov dword [rsp + 0x64], 2
jmp 0x1b722cda62d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda62d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda6dd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cda6dd
mov dword [rsp + 0x60], 2
jmp 0x1b722cda771
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda771
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x60]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x64]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdaac0
mov eax, dword [rsp + 0x40]
sub eax, 0x42
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda8a7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cda8a7
mov dword [rsp + 0x5c], 2
jmp 0x1b722cda93b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda93b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x42
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cda9fa
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cda9fa
mov dword [rsp + 0x58], 2
jmp 0x1b722cdaa8e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdaa8e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x58]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x5c]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdadb3
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdaba8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdaba8
mov dword [rsp + 0x54], 2
jmp 0x1b722cdac3c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdac3c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdaced
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdaced
mov dword [rsp + 0x50], 2
jmp 0x1b722cdad81
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdad81
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x50]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x54]
mov word [rsi + rax*2 + 2], dx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 7
jb 0x1b722cd9ea6
xor ebx, ebx
mov byte [rsi], 1
call fcn.1b722cfd844
mov r9d, eax
lea rdx, [rsi + 2]
lea r8, [rbp + 0x3b0]
lea rcx, [rbp + 0x11c0]
call qword [sym.imp.USER32.dll_wsprintfW]
xor eax, eax
lea rdx, [rbp + 0x1f8]
lea rcx, [rbp - 0x5a]
mov byte [rbp - 0x5a], al
call fcn.1b722cf7880
movsd xmm9, qword [0x1b722d1a558]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cdbd64
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 7
jae 0x1b722cdbd64
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdb125
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdaf26
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdaf26
mov r14d, 2
jmp 0x1b722cdafb7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdafb7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb065
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdb065
mov r15d, 2
jmp 0x1b722cdb0f6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb0f6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r15w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r14w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdba5a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdb44c
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb24d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdb24d
mov r12d, 2
jmp 0x1b722cdb2de
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb2de
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb38c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdb38c
mov r13d, 2
jmp 0x1b722cdb41d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb41d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r13w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r12w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdb73d
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb532
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdb532
mov dword [rsp + 0x64], 2
jmp 0x1b722cdb5c6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb5c6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb677
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdb677
mov dword [rsp + 0x60], 2
jmp 0x1b722cdb70b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb70b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x60]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x64]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdba5a
mov eax, dword [rsp + 0x40]
sub eax, 0x41
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb841
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdb841
mov dword [rsp + 0x5c], 2
jmp 0x1b722cdb8d5
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb8d5
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x41
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdb994
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdb994
mov dword [rsp + 0x58], 2
jmp 0x1b722cdba28
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdba28
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x58]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x5c]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdbd4d
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdbb42
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdbb42
mov dword [rsp + 0x54], 2
jmp 0x1b722cdbbd6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdbbd6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdbc87
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdbc87
mov dword [rsp + 0x50], 2
jmp 0x1b722cdbd1b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdbd1b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x50]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x54]
mov word [rsi + rax*2 + 2], dx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 7
jb 0x1b722cdae40
mov byte [rsi], 1
call fcn.1b722cfd844
mov r9d, eax
lea rdx, [rsi + 2]
lea r8, [rbp + 0x3b0]
lea rcx, [rbp + 0x17c0]
call qword [sym.imp.USER32.dll_wsprintfW]
xor eax, eax
lea rdx, [rbp + 0x208]
lea rcx, [rbp - 0x59]
mov byte [rbp - 0x59], al
call fcn.1b722cf79e0
movsd xmm8, qword [0x1b722d1a550]
xor ebx, ebx
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722cdccf8
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdc0b5
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdbeb6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdbeb6
mov r14d, 2
jmp 0x1b722cdbf47
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdbf47
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdbff5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdbff5
mov r15d, 2
jmp 0x1b722cdc086
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc086
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r15w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r14w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc9ec
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdc3de
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc1de
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdc1de
mov r12d, 2
jmp 0x1b722cdc26f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc26f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc31e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdc31e
mov r13d, 2
jmp 0x1b722cdc3af
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc3af
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r13w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r12w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdc6cf
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc4c4
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdc4c4
mov dword [rsp + 0x64], 2
jmp 0x1b722cdc558
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc558
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc609
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdc609
mov dword [rsp + 0x60], 2
jmp 0x1b722cdc69d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc69d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x60]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x64]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc9ec
mov eax, dword [rsp + 0x40]
sub eax, 0x40
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc7d3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdc7d3
mov dword [rsp + 0x5c], 2
jmp 0x1b722cdc867
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc867
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x40
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc926
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdc926
mov dword [rsp + 0x58], 2
jmp 0x1b722cdc9ba
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdc9ba
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x58]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x5c]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdccdf
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdcad4
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdcad4
mov dword [rsp + 0x54], 2
jmp 0x1b722cdcb68
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdcb68
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdcc19
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdcc19
mov dword [rsp + 0x50], 2
jmp 0x1b722cdccad
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdccad
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x50]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x54]
mov word [rsi + rax*2 + 2], dx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 7
jb 0x1b722cdbdd0
xor ebx, ebx
mov r9d, dword [0x1b722d20bd8]
lea rdx, [rsi + 2]
lea r8, [rbp + 0x3b0]
mov byte [rsi], 1
lea rcx, [rbp + 0x1dc0]
call qword [sym.imp.USER32.dll_wsprintfW]
xor eax, eax
lea rdx, [rbp + 0x218]
lea rcx, [rbp - 0x58]
mov byte [rbp - 0x58], al
call fcn.1b722cf7b40
movsd xmm7, qword [0x1b722d1a548]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cddc8e
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 7
jae 0x1b722cddc8e
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdd04f
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdce4f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdce4f
mov r14d, 2
jmp 0x1b722cdcee0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdcee0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdcf8f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdcf8f
mov r15d, 2
jmp 0x1b722cdd020
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd020
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r15w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r14w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd986
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdd378
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd178
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdd178
mov r12d, 2
jmp 0x1b722cdd209
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd209
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd2b8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdd2b8
mov r13d, 2
jmp 0x1b722cdd349
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd349
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r13w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r12w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdd669
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd45e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdd45e
mov dword [rsp + 0x64], 2
jmp 0x1b722cdd4f2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd4f2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd5a3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdd5a3
mov dword [rsp + 0x60], 2
jmp 0x1b722cdd637
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd637
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x60]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x64]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd986
mov eax, dword [rsp + 0x40]
sub eax, 0x3f
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd76d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdd76d
mov dword [rsp + 0x5c], 2
jmp 0x1b722cdd801
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd801
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x3f
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd8c0
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdd8c0
mov dword [rsp + 0x58], 2
jmp 0x1b722cdd954
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdd954
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x58]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x5c]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cddc77
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdda6d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdda6d
mov dword [rsp + 0x54], 2
jmp 0x1b722cddb01
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cddb01
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cddbb1
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cddbb1
mov dword [rsp + 0x50], 2
jmp 0x1b722cddc45
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cddc45
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x50]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x54]
mov word [rsi + rax*2 + 2], dx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 7
jb 0x1b722cdcd68
lea rdx, [rsi + 2]
mov byte [rsi], 1
lea r8, [rbp + 0x1dc0]
lea rcx, [rbp + 0x23c0]
call qword [sym.imp.USER32.dll_wsprintfW]
xor eax, eax
lea rdx, [rbp + 0x228]
lea rcx, [rbp - 0x57]
mov byte [rbp - 0x57], al
call fcn.1b722cf7ca0
movsd xmm6, qword [0x1b722d1a540]
xor ebx, ebx
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722cdec16
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cddfd7
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdddd7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdddd7
mov r14d, 2
jmp 0x1b722cdde68
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdde68
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cddf17
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cddf17
mov r15d, 2
jmp 0x1b722cddfa8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cddfa8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r15w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r14w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde90c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cde300
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde100
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cde100
mov r12d, 2
jmp 0x1b722cde191
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde191
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde240
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cde240
mov r13d, 2
jmp 0x1b722cde2d1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde2d1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, r13w
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, r12w
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cde5ef
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde3e5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cde3e5
mov dword [rsp + 0x64], 2
jmp 0x1b722cde479
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde479
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde529
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cde529
mov dword [rsp + 0x60], 2
jmp 0x1b722cde5bd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde5bd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x60]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x64]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde90c
mov eax, dword [rsp + 0x40]
sub eax, 0x3e
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde6f3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cde6f3
mov dword [rsp + 0x5c], 2
jmp 0x1b722cde787
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde787
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x3e
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde846
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cde846
mov dword [rsp + 0x58], 2
jmp 0x1b722cde8da
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde8da
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x58]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x5c]
mov word [rsi + rax*2 + 2], dx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdebfd
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cde9f3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cde9f3
mov dword [rsp + 0x54], 2
jmp 0x1b722cdea87
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdea87
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdeb37
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdeb37
mov dword [rsp + 0x50], 2
jmp 0x1b722cdebcb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdebcb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
and r8w, word [rsp + 0x50]
add r8w, r8w
movzx edx, word [rsi + rax*2 + 2]
movsxd rax, dword [rsp + 0x40]
sub dx, r8w
add dx, word [rsp + 0x54]
mov word [rsi + rax*2 + 2], dx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 7
jb 0x1b722cddcf0
xor ebx, ebx
lea rdx, [rsi + 2]
mov byte [rsi], 1
lea r8, [rbp + 0x1dc0]
lea rcx, [rbp + 0x29c0]
call qword [sym.imp.USER32.dll_wsprintfW]
xor eax, eax
lea rdx, [rbp + 0x28]
lea rcx, [rbp - 0x56]
mov byte [rbp - 0x56], al
call fcn.1b722cf7e00
movsd xmm8, qword [0x1b722d1a538]
mov rsi, rax
movsd xmm9, qword [0x1b722d1a530]
cmp byte [rax], 0
jne 0x1b722cdfb87
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 1
jae 0x1b722cdfb87
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdef64
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cded6c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cded6c
mov r14d, 2
jmp 0x1b722cdedfd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdedfd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdeeab
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdeeab
mov r15d, 2
jmp 0x1b722cdef3c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdef3c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf884
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdf284
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf08c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdf08c
mov r12d, 2
jmp 0x1b722cdf11d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf11d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf1cb
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdf1cb
mov r13d, 2
jmp 0x1b722cdf25c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf25c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdf56e
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf36a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdf36a
mov dword [rsp + 0x64], 2
jmp 0x1b722cdf3fe
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf3fe
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf4af
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdf4af
mov dword [rsp + 0x60], 2
jmp 0x1b722cdf543
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf543
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x60]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x64]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf884
mov eax, dword [rsp + 0x40]
sub eax, 0x3c
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf672
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdf672
mov dword [rsp + 0x5c], 2
jmp 0x1b722cdf706
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf706
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x3c
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf7c5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdf7c5
mov dword [rsp + 0x58], 2
jmp 0x1b722cdf859
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf859
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x58]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x5c]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdfb70
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdf96c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdf96c
mov dword [rsp + 0x54], 2
jmp 0x1b722cdfa00
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdfa00
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdfab1
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdfab1
mov dword [rsp + 0x50], 2
jmp 0x1b722cdfb45
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdfb45
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x50]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x54]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 1
jb 0x1b722cdec86
mov byte [rsi], 1
lea rdx, [rbp + 0x23c0]
mov eax, dword [rsi + 4]
lea rcx, [rbp + 0x29c0]
xor r8d, r8d
lea r9, [0x1b722c40000]
call qword [r9 + rax*8 + 0xdf020]
xor eax, eax
lea rdx, [rbp + 0xa8]
lea rcx, [rbp - 0x54]
mov byte [rbp - 0x55], al
mov byte [rbp - 0x54], al
call fcn.1b722cf7f60
movsd xmm7, qword [0x1b722d1a528]
xor ebx, ebx
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722ce0b03
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdfed6
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdfcdc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdfcdc
mov r14d, 2
jmp 0x1b722cdfd6d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdfd6d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdfe1b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdfe1b
mov r15d, 2
jmp 0x1b722cdfeac
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdfeac
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce07fe
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce01fa
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cdffff
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cdffff
mov r12d, 2
jmp 0x1b722ce0090
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce0090
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce013f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce013f
mov r13d, 2
jmp 0x1b722ce01d0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce01d0
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce04e6
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce02e0
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce02e0
mov dword [rsp + 0x64], 2
jmp 0x1b722ce0374
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce0374
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce0425
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce0425
mov dword [rsp + 0x60], 2
jmp 0x1b722ce04b9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce04b9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce07fe
mov eax, dword [rsp + 0x40]
sub eax, 0x3b
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce05ea
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce05ea
mov dword [rsp + 0x5c], 2
jmp 0x1b722ce067e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce067e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x3b
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce073d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce073d
mov dword [rsp + 0x58], 2
jmp 0x1b722ce07d1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce07d1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce0aea
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce08e5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce08e5
mov dword [rsp + 0x54], 2
jmp 0x1b722ce0979
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce0979
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce0a29
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce0a29
mov dword [rsp + 0x50], 2
jmp 0x1b722ce0abd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce0abd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x54]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xc
jb 0x1b722cdfbf6
xor ebx, ebx
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0x1a8]
mov qword [rsp + 0x48], rax
lea rcx, [rbp - 0x55]
call fcn.1b722cf80e0
movsd xmm10, qword [0x1b722d1a520]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722ce1a6d
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 0xe
jae 0x1b722ce1a6d
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop dword [rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce0e42
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce0c47
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce0c47
mov r14d, 2
jmp 0x1b722ce0cd8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce0cd8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce0d87
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce0d87
mov r15d, 2
jmp 0x1b722ce0e18
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce0e18
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1768
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce1166
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce0f6b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce0f6b
mov r12d, 2
jmp 0x1b722ce0ffc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce0ffc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce10ab
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce10ab
mov r13d, 2
jmp 0x1b722ce113c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce113c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce1450
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce124b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce124b
mov dword [rsp + 0x64], 2
jmp 0x1b722ce12df
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce12df
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce138f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce138f
mov dword [rsp + 0x60], 2
jmp 0x1b722ce1423
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1423
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1768
mov eax, dword [rsp + 0x40]
sub eax, 0x3a
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1554
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce1554
mov dword [rsp + 0x5c], 2
jmp 0x1b722ce15e8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce15e8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x3a
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce16a7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce16a7
mov dword [rsp + 0x58], 2
jmp 0x1b722ce173b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce173b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce1a56
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1850
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce1850
mov dword [rsp + 0x54], 2
jmp 0x1b722ce18e4
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce18e4
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1995
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce1995
mov dword [rsp + 0x50], 2
jmp 0x1b722ce1a29
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1a29
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and dl, byte [rsp + 0x50]
add dl, dl
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub r8b, dl
add r8b, byte [rsp + 0x54]
mov byte [rax + rsi + 1], r8b
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xe
jb 0x1b722ce0b60
mov rcx, qword [rsp + 0x48]
mov byte [rsi], 1
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rsi + 1]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor ebx, ebx
lea rcx, [rbp + 0x29c0]
mov dword [rsp + 0x28], ebx
xor r9d, r9d
mov edx, 0xc0000000
mov dword [rsp + 0x20], 4
mov r8d, 1
call rax
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0xb8]
xor eax, eax
mov qword [rbp + 0x3a0], 0x200
lea rcx, [rbp - 0x52]
mov byte [rbp - 0x53], al
mov byte [rbp - 0x52], al
call fcn.1b722cf8270
movsd xmm6, qword [0x1b722d1a518]
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722ce2a11
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce1de6
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1beb
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce1beb
mov r14d, 2
jmp 0x1b722ce1c7c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1c7c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1d2b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce1d2b
mov r15d, 2
jmp 0x1b722ce1dbc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1dbc
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce270c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce2108
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1f0e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce1f0e
mov r12d, 2
jmp 0x1b722ce1f9f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce1f9f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce204d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce204d
mov r13d, 2
jmp 0x1b722ce20de
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce20de
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce23f4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce21ee
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce21ee
mov dword [rsp + 0x64], 2
jmp 0x1b722ce2282
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce2282
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce2333
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce2333
mov dword [rsp + 0x60], 2
jmp 0x1b722ce23c7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce23c7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce270c
mov eax, dword [rsp + 0x40]
sub eax, 0x39
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce24f8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce24f8
mov dword [rsp + 0x5c], 2
jmp 0x1b722ce258c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce258c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x39
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce264b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce264b
mov dword [rsp + 0x58], 2
jmp 0x1b722ce26df
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce26df
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce29f8
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce27f3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce27f3
mov dword [rsp + 0x54], 2
jmp 0x1b722ce2887
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce2887
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce2937
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce2937
mov dword [rsp + 0x50], 2
jmp 0x1b722ce29cb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce29cb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x54]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xc
jb 0x1b722ce1b04
xor ebx, ebx
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0x238]
mov qword [rsp + 0x68], rax
lea rcx, [rbp - 0x53]
call fcn.1b722cf83f0
movsd xmm8, qword [0x1b722d1a510]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722ce3972
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 0x10
jae 0x1b722ce3972
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce2d47
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce2b4d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce2b4d
mov r14d, 2
jmp 0x1b722ce2bde
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce2bde
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce2c8c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce2c8c
mov r15d, 2
jmp 0x1b722ce2d1d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce2d1d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce366d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce306b
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce2e70
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce2e70
mov r12d, 2
jmp 0x1b722ce2f01
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce2f01
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce2fb0
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce2fb0
mov r13d, 2
jmp 0x1b722ce3041
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3041
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce3355
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3150
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce3150
mov dword [rsp + 0x64], 2
jmp 0x1b722ce31e4
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce31e4
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3294
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce3294
mov dword [rsp + 0x60], 2
jmp 0x1b722ce3328
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3328
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce366d
mov eax, dword [rsp + 0x40]
sub eax, 0x38
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3459
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce3459
mov dword [rsp + 0x5c], 2
jmp 0x1b722ce34ed
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce34ed
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x38
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce35ac
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce35ac
mov dword [rsp + 0x58], 2
jmp 0x1b722ce3640
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3640
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce395b
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3755
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce3755
mov dword [rsp + 0x54], 2
jmp 0x1b722ce37e9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce37e9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce389a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce389a
mov dword [rsp + 0x50], 2
jmp 0x1b722ce392e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce392e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and dl, byte [rsp + 0x50]
add dl, dl
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub r8b, dl
add r8b, byte [rsp + 0x54]
mov byte [rax + rsi + 1], r8b
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0x10
jb 0x1b722ce2a67
mov rcx, qword [rsp + 0x68]
mov byte [rsi], 1
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rsi + 1]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rsp + 0x48]
lea r8, [rbp + 0x5c0]
xor r9d, r9d
lea rdx, [rbp + 0x3a0]
call rax
xor eax, eax
mov qword [rbp + 0x3a0], 0x200
lea rdx, [rbp + 0xc8]
mov byte [rbp - 0x51], al
lea rcx, [rbp - 0x50]
mov byte [rbp - 0x50], al
call fcn.1b722cf8560
movsd xmm7, qword [0x1b722d1a508]
xor ebx, ebx
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722ce490d
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop dword [rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce3ce2
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3ae7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce3ae7
mov r14d, 2
jmp 0x1b722ce3b78
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3b78
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3c27
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce3c27
mov r15d, 2
jmp 0x1b722ce3cb8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3cb8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4608
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce4004
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3e0a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce3e0a
mov r12d, 2
jmp 0x1b722ce3e9b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3e9b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3f49
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce3f49
mov r13d, 2
jmp 0x1b722ce3fda
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce3fda
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce42f0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce40ea
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce40ea
mov dword [rsp + 0x64], 2
jmp 0x1b722ce417e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce417e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce422f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce422f
mov dword [rsp + 0x60], 2
jmp 0x1b722ce42c3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce42c3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4608
mov eax, dword [rsp + 0x40]
sub eax, 0x37
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce43f4
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce43f4
mov dword [rsp + 0x5c], 2
jmp 0x1b722ce4488
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4488
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x37
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4547
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce4547
mov dword [rsp + 0x58], 2
jmp 0x1b722ce45db
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce45db
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce48f4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce46ef
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce46ef
mov dword [rsp + 0x54], 2
jmp 0x1b722ce4783
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4783
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4833
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce4833
mov dword [rsp + 0x50], 2
jmp 0x1b722ce48c7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce48c7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x54]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xc
jb 0x1b722ce3a00
xor ebx, ebx
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0x250]
mov qword [rsp + 0x68], rax
lea rcx, [rbp - 0x51]
call fcn.1b722cf86e0
movsd xmm9, qword [0x1b722d1a500]
mov rsi, rax
movsd xmm10, qword [0x1b722d1a4f8]
cmp byte [rax], 0
jne 0x1b722ce587d
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 0x10
jae 0x1b722ce587d
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop dword [rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce4c52
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4a57
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce4a57
mov r14d, 2
jmp 0x1b722ce4ae8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4ae8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4b97
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce4b97
mov r15d, 2
jmp 0x1b722ce4c28
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4c28
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5578
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce4f74
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4d7a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce4d7a
mov r12d, 2
jmp 0x1b722ce4e0b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4e0b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4eb9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce4eb9
mov r13d, 2
jmp 0x1b722ce4f4a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce4f4a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce5260
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce505a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce505a
mov dword [rsp + 0x64], 2
jmp 0x1b722ce50ee
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce50ee
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce519f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce519f
mov dword [rsp + 0x60], 2
jmp 0x1b722ce5233
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5233
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5578
mov eax, dword [rsp + 0x40]
sub eax, 0x35
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5364
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce5364
mov dword [rsp + 0x5c], 2
jmp 0x1b722ce53f8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce53f8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x35
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce54b7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce54b7
mov dword [rsp + 0x58], 2
jmp 0x1b722ce554b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce554b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce5866
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5660
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce5660
mov dword [rsp + 0x54], 2
jmp 0x1b722ce56f4
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce56f4
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce57a5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce57a5
mov dword [rsp + 0x50], 2
jmp 0x1b722ce5839
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5839
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and dl, byte [rsp + 0x50]
add dl, dl
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub r8b, dl
add r8b, byte [rsp + 0x54]
mov byte [rax + rsi + 1], r8b
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0x10
jb 0x1b722ce4970
mov rcx, qword [rsp + 0x68]
mov byte [rsi], 1
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rsi + 1]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rsp + 0x48]
lea r8, [rbp + 0xbc0]
xor r9d, r9d
lea rdx, [rbp + 0x3a0]
call rax
xor eax, eax
lea rdx, [rbp + 0xf8]
lea rcx, [rbp - 0x4e]
mov byte [rbp - 0x4f], al
mov byte [rbp - 0x4e], al
call fcn.1b722cf8850
movsd xmm6, qword [0x1b722d1a4f0]
xor ebx, ebx
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722ce680d
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop dword [rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce5be0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce59e6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce59e6
mov r14d, 2
jmp 0x1b722ce5a77
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5a77
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5b25
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce5b25
mov r15d, 2
jmp 0x1b722ce5bb6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5bb6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6508
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce5f04
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5d09
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce5d09
mov r12d, 2
jmp 0x1b722ce5d9a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5d9a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5e49
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce5e49
mov r13d, 2
jmp 0x1b722ce5eda
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5eda
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce61f0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce5fea
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce5fea
mov dword [rsp + 0x64], 2
jmp 0x1b722ce607e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce607e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce612f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce612f
mov dword [rsp + 0x60], 2
jmp 0x1b722ce61c3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce61c3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6508
mov eax, dword [rsp + 0x40]
sub eax, 0x34
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce62f4
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce62f4
mov dword [rsp + 0x5c], 2
jmp 0x1b722ce6388
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6388
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x34
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6447
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce6447
mov dword [rsp + 0x58], 2
jmp 0x1b722ce64db
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce64db
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce67f4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce65ef
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce65ef
mov dword [rsp + 0x54], 2
jmp 0x1b722ce6683
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6683
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6733
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce6733
mov dword [rsp + 0x50], 2
jmp 0x1b722ce67c7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce67c7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x54]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xd
jb 0x1b722ce5900
xor ebx, ebx
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0xd8]
mov qword [rsp + 0x68], rax
lea rcx, [rbp - 0x4f]
call fcn.1b722cf89d0
movsd xmm8, qword [0x1b722d1a4e8]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722ce7770
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 0xc
jae 0x1b722ce7770
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce6b45
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce694a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce694a
mov r14d, 2
jmp 0x1b722ce69db
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce69db
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6a8a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce6a8a
mov r15d, 2
jmp 0x1b722ce6b1b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6b1b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce746b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce6e69
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6c6e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce6c6e
mov r12d, 2
jmp 0x1b722ce6cff
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6cff
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6dae
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce6dae
mov r13d, 2
jmp 0x1b722ce6e3f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6e3f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce7153
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6f4e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce6f4e
mov dword [rsp + 0x64], 2
jmp 0x1b722ce6fe2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce6fe2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce7092
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce7092
mov dword [rsp + 0x60], 2
jmp 0x1b722ce7126
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce7126
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce746b
mov eax, dword [rsp + 0x40]
sub eax, 0x33
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce7257
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce7257
mov dword [rsp + 0x5c], 2
jmp 0x1b722ce72eb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce72eb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x33
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce73aa
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce73aa
mov dword [rsp + 0x58], 2
jmp 0x1b722ce743e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce743e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce7759
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce7553
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce7553
mov dword [rsp + 0x54], 2
jmp 0x1b722ce75e7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce75e7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce7698
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce7698
mov dword [rsp + 0x50], 2
jmp 0x1b722ce772c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce772c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and dl, byte [rsp + 0x50]
add dl, dl
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub r8b, dl
add r8b, byte [rsp + 0x54]
mov byte [rax + rsi + 1], r8b
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xc
jb 0x1b722ce6863
mov rcx, qword [rsp + 0x68]
mov byte [rsi], 1
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rsi + 1]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rsp + 0x48]
call rax
xor eax, eax
lea rdx, [rbp + 0x30]
lea rcx, [rbp - 0x4d]
mov byte [rbp - 0x4d], al
call fcn.1b722cf8b50
movsd xmm7, qword [0x1b722d1a4e0]
xor ebx, ebx
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722ce86d8
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce7ab5
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce78bc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce78bc
mov r14d, 2
jmp 0x1b722ce794d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce794d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce79fc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce79fc
mov r15d, 2
jmp 0x1b722ce7a8d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce7a8d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce83d5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce7dd5
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce7bdd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce7bdd
mov r12d, 2
jmp 0x1b722ce7c6e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce7c6e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce7d1c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce7d1c
mov r13d, 2
jmp 0x1b722ce7dad
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce7dad
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce80bf
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce7ebb
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce7ebb
mov dword [rsp + 0x64], 2
jmp 0x1b722ce7f4f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce7f4f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8000
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce8000
mov dword [rsp + 0x60], 2
jmp 0x1b722ce8094
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8094
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x60]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x64]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce83d5
mov eax, dword [rsp + 0x40]
sub eax, 0x32
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce81c3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce81c3
mov dword [rsp + 0x5c], 2
jmp 0x1b722ce8257
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8257
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x32
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8316
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce8316
mov dword [rsp + 0x58], 2
jmp 0x1b722ce83aa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce83aa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x58]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x5c]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce86bf
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce84bc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce84bc
mov dword [rsp + 0x54], 2
jmp 0x1b722ce8550
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8550
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8600
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce8600
mov dword [rsp + 0x50], 2
jmp 0x1b722ce8694
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8694
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x50]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x54]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 1
jb 0x1b722ce77d5
xor ebx, ebx
mov byte [rsi], 1
lea rdx, [rbp + 0x23c0]
mov eax, dword [rsi + 4]
lea rcx, [rbp + 0x29c0]
mov r8d, 1
lea r9, [0x1b722c40000]
call qword [r9 + rax*8 + 0xdf250]
xor eax, eax
lea rdx, [rbp + 0xe8]
lea rcx, [rbp - 0x4b]
mov byte [rbp - 0x4c], al
mov byte [rbp - 0x4b], al
call fcn.1b722cf8cb0
movsd xmm6, qword [0x1b722d1a4d8]
mov rsi, rax
movsd xmm10, qword [0x1b722d1a4d0]
cmp byte [rax], 0
jne 0x1b722ce966b
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 0xc
jae 0x1b722ce966b
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop dword [rax + rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce8a42
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8847
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce8847
mov r14d, 2
jmp 0x1b722ce88d8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce88d8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8987
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce8987
mov r15d, 2
jmp 0x1b722ce8a18
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8a18
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9366
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce8d64
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8b6a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce8b6a
mov r12d, 2
jmp 0x1b722ce8bfb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8bfb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8ca9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce8ca9
mov r13d, 2
jmp 0x1b722ce8d3a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8d3a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce904e
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8e49
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce8e49
mov dword [rsp + 0x64], 2
jmp 0x1b722ce8edd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8edd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce8f8d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce8f8d
mov dword [rsp + 0x60], 2
jmp 0x1b722ce9021
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9021
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9366
mov eax, dword [rsp + 0x40]
sub eax, 0x30
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9152
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce9152
mov dword [rsp + 0x5c], 2
jmp 0x1b722ce91e6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce91e6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x30
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce92a5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce92a5
mov dword [rsp + 0x58], 2
jmp 0x1b722ce9339
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9339
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce9654
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce944e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce944e
mov dword [rsp + 0x54], 2
jmp 0x1b722ce94e2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce94e2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9593
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce9593
mov dword [rsp + 0x50], 2
jmp 0x1b722ce9627
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9627
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x54]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xc
jb 0x1b722ce8760
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0x1b8]
mov qword [rsp + 0x48], rax
lea rcx, [rbp - 0x4c]
call fcn.1b722cf8e30
movsd xmm8, qword [0x1b722d1a4c8]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cea5cb
mov dword [rsp + 0x40], 0
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop dword [rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce99a0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce97a6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce97a6
mov r14d, 2
jmp 0x1b722ce9837
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9837
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce98e5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce98e5
mov r15d, 2
jmp 0x1b722ce9976
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9976
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea2c6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce9cc2
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9ac8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce9ac8
mov r12d, 2
jmp 0x1b722ce9b59
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9b59
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9c07
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce9c07
mov r13d, 2
jmp 0x1b722ce9c98
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9c98
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce9fae
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9da8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce9da8
mov dword [rsp + 0x64], 2
jmp 0x1b722ce9e3c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9e3c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9eed
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ce9eed
mov dword [rsp + 0x60], 2
jmp 0x1b722ce9f81
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ce9f81
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea2c6
mov eax, dword [rsp + 0x40]
sub eax, 0x2f
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea0b2
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cea0b2
mov dword [rsp + 0x5c], 2
jmp 0x1b722cea146
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea146
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x2f
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea205
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cea205
mov dword [rsp + 0x58], 2
jmp 0x1b722cea299
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea299
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cea5b4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea3ae
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cea3ae
mov dword [rsp + 0x54], 2
jmp 0x1b722cea442
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea442
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea4f3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cea4f3
mov dword [rsp + 0x50], 2
jmp 0x1b722cea587
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea587
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and dl, byte [rsp + 0x50]
add dl, dl
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub r8b, dl
add r8b, byte [rsp + 0x54]
mov byte [rax + rsi + 1], r8b
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xe
jb 0x1b722ce96c0
mov rcx, qword [rsp + 0x48]
mov byte [rsi], 1
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rsi + 1]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor ebx, ebx
lea rcx, [rbp + 0x29c0]
mov dword [rsp + 0x28], ebx
xor r9d, r9d
mov edx, 0xc0000000
mov dword [rsp + 0x20], 4
mov r8d, 1
call rax
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0x68]
xor eax, eax
mov qword [rbp + 0x3a0], 0x200
lea rcx, [rbp - 0x49]
mov byte [rbp - 0x4a], al
mov byte [rbp - 0x49], al
call fcn.1b722cf8fc0
movsd xmm7, qword [0x1b722d1a4c0]
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722ceb56d
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cea940
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea746
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cea746
mov r14d, 2
jmp 0x1b722cea7d7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea7d7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea885
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cea885
mov r15d, 2
jmp 0x1b722cea916
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cea916
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb268
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceac64
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceaa69
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceaa69
mov r12d, 2
jmp 0x1b722ceaafa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceaafa
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceaba9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceaba9
mov r13d, 2
jmp 0x1b722ceac3a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceac3a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceaf50
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cead4a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cead4a
mov dword [rsp + 0x64], 2
jmp 0x1b722ceadde
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceadde
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceae8f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceae8f
mov dword [rsp + 0x60], 2
jmp 0x1b722ceaf23
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceaf23
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb268
mov eax, dword [rsp + 0x40]
sub eax, 0x2e
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb054
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceb054
mov dword [rsp + 0x5c], 2
jmp 0x1b722ceb0e8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb0e8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x2e
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb1a7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceb1a7
mov dword [rsp + 0x58], 2
jmp 0x1b722ceb23b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb23b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceb554
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb34f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceb34f
mov dword [rsp + 0x54], 2
jmp 0x1b722ceb3e3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb3e3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb493
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceb493
mov dword [rsp + 0x50], 2
jmp 0x1b722ceb527
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb527
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x54]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xc
jb 0x1b722cea660
xor ebx, ebx
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0x268]
mov qword [rsp + 0x68], rax
lea rcx, [rbp - 0x4a]
call fcn.1b722cf9140
movsd xmm9, qword [0x1b722d1a4b8]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cec4d0
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 0x10
jae 0x1b722cec4d0
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceb8a5
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb6aa
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceb6aa
mov r14d, 2
jmp 0x1b722ceb73b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb73b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm10
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb7ea
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceb7ea
mov r15d, 2
jmp 0x1b722ceb87b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb87b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec1cb
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cebbc9
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceb9ce
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceb9ce
mov r12d, 2
jmp 0x1b722ceba5f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceba5f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cebb0e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cebb0e
mov r13d, 2
jmp 0x1b722cebb9f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cebb9f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cebeb3
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cebcae
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cebcae
mov dword [rsp + 0x64], 2
jmp 0x1b722cebd42
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cebd42
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cebdf2
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cebdf2
mov dword [rsp + 0x60], 2
jmp 0x1b722cebe86
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cebe86
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec1cb
mov eax, dword [rsp + 0x40]
sub eax, 0x2d
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cebfb7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cebfb7
mov dword [rsp + 0x5c], 2
jmp 0x1b722cec04b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec04b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x2d
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec10a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cec10a
mov dword [rsp + 0x58], 2
jmp 0x1b722cec19e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec19e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cec4b9
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec2b3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cec2b3
mov dword [rsp + 0x54], 2
jmp 0x1b722cec347
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec347
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec3f8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cec3f8
mov dword [rsp + 0x50], 2
jmp 0x1b722cec48c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec48c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and dl, byte [rsp + 0x50]
add dl, dl
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub r8b, dl
add r8b, byte [rsp + 0x54]
mov byte [rax + rsi + 1], r8b
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0x10
jb 0x1b722ceb5c3
mov rcx, qword [rsp + 0x68]
mov byte [rsi], 1
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rsi + 1]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rsp + 0x48]
lea r8, [rbp + 0x11c0]
xor r9d, r9d
lea rdx, [rbp + 0x3a0]
call rax
xor eax, eax
lea rdx, [rbp + 0x108]
lea rcx, [rbp - 0x41]
mov byte [rbp - 0x48], al
mov byte [rbp - 0x41], al
call fcn.1b722cf92b0
movsd xmm6, qword [0x1b722d1a4b0]
xor ebx, ebx
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722ced45d
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop dword [rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cec832
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec637
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cec637
mov r14d, 2
jmp 0x1b722cec6c8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec6c8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec777
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cec777
mov r15d, 2
jmp 0x1b722cec808
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec808
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced158
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cecb54
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec95a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cec95a
mov r12d, 2
jmp 0x1b722cec9eb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cec9eb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceca99
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceca99
mov r13d, 2
jmp 0x1b722cecb2a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cecb2a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cece40
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cecc3a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cecc3a
mov dword [rsp + 0x64], 2
jmp 0x1b722ceccce
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceccce
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cecd7f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cecd7f
mov dword [rsp + 0x60], 2
jmp 0x1b722cece13
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cece13
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced158
mov eax, dword [rsp + 0x40]
sub eax, 0x2c
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cecf44
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cecf44
mov dword [rsp + 0x5c], 2
jmp 0x1b722cecfd8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cecfd8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x2c
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced097
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ced097
mov dword [rsp + 0x58], 2
jmp 0x1b722ced12b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced12b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ced444
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced23f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ced23f
mov dword [rsp + 0x54], 2
jmp 0x1b722ced2d3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced2d3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced383
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ced383
mov dword [rsp + 0x50], 2
jmp 0x1b722ced417
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced417
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x54]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xd
jb 0x1b722cec550
xor ebx, ebx
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0x78]
mov qword [rsp + 0x68], rax
lea rcx, [rbp - 0x48]
call fcn.1b722cf9430
movsd xmm8, qword [0x1b722d1a4a8]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cee3bb
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 0xc
jae 0x1b722cee3bb
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ced790
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced596
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ced596
mov r14d, 2
jmp 0x1b722ced627
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced627
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced6d5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ced6d5
mov r15d, 2
jmp 0x1b722ced766
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced766
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee0b6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cedab4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced8b9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ced8b9
mov r12d, 2
jmp 0x1b722ced94a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced94a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ced9f9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ced9f9
mov r13d, 2
jmp 0x1b722ceda8a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceda8a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cedd9e
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cedb99
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cedb99
mov dword [rsp + 0x64], 2
jmp 0x1b722cedc2d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cedc2d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cedcdd
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cedcdd
mov dword [rsp + 0x60], 2
jmp 0x1b722cedd71
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cedd71
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee0b6
mov eax, dword [rsp + 0x40]
sub eax, 0x2b
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cedea2
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cedea2
mov dword [rsp + 0x5c], 2
jmp 0x1b722cedf36
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cedf36
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x2b
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cedff5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cedff5
mov dword [rsp + 0x58], 2
jmp 0x1b722cee089
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee089
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cee3a4
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee19e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cee19e
mov dword [rsp + 0x54], 2
jmp 0x1b722cee232
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee232
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x38], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee2e3
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cee2e3
mov dword [rsp + 0x50], 2
jmp 0x1b722cee377
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee377
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x38]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and dl, byte [rsp + 0x50]
add dl, dl
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub r8b, dl
add r8b, byte [rsp + 0x54]
mov byte [rax + rsi + 1], r8b
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xc
jb 0x1b722ced4b0
mov rcx, qword [rsp + 0x68]
mov byte [rsi], 1
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rsi + 1]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [rsp + 0x48]
call rax
xor eax, eax
lea rdx, [rbp + 0x118]
lea rcx, [rbp - 0x46]
mov byte [rbp - 0x47], al
mov byte [rbp - 0x46], al
call fcn.1b722cf95b0
movsd xmm7, qword [0x1b722d1a4a0]
xor ebx, ebx
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722cef333
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cee708
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee50d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cee50d
mov r14d, 2
jmp 0x1b722cee59e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee59e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee64d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cee64d
mov r15d, 2
jmp 0x1b722cee6de
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee6de
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef02e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceea2a
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee830
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cee830
mov r12d, 2
jmp 0x1b722cee8c1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee8c1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cee96f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cee96f
mov r13d, 2
jmp 0x1b722ceea00
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceea00
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceed16
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceeb10
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceeb10
mov dword [rsp + 0x64], 2
jmp 0x1b722ceeba4
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceeba4
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceec55
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceec55
mov dword [rsp + 0x60], 2
jmp 0x1b722ceece9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceece9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef02e
mov eax, dword [rsp + 0x40]
sub eax, 0x2a
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceee1a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceee1a
mov dword [rsp + 0x5c], 2
jmp 0x1b722ceeeae
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceeeae
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x2a
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceef6d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722ceef6d
mov dword [rsp + 0x58], 2
jmp 0x1b722cef001
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef001
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cef31a
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef115
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cef115
mov dword [rsp + 0x54], 2
jmp 0x1b722cef1a9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef1a9
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef259
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cef259
mov dword [rsp + 0x50], 2
jmp 0x1b722cef2ed
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef2ed
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x50]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x54]
mov byte [rax + rsi + 1], dl
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xd
jb 0x1b722cee426
xor ebx, ebx
lea rax, [rsi + 1]
mov byte [rsi], 1
lea rdx, [rbp + 0x88]
mov qword [rsp + 0x48], rax
lea rcx, [rbp - 0x47]
call fcn.1b722cf9730
movsd xmm6, qword [0x1b722d1a498]
mov rsi, rax
movsd xmm9, qword [0x1b722d1a490]
cmp byte [rax], 0
jne 0x1b722cf029c
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 0xc
jae 0x1b722cf029c
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cef673
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef478
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cef478
mov r14d, 2
jmp 0x1b722cef509
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef509
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef5b8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cef5b8
mov r15d, 2
jmp 0x1b722cef649
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef649
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r15b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r14b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceff97
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cef995
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef79b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cef79b
mov r12d, 2
jmp 0x1b722cef82c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef82c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef8da
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cef8da
mov r13d, 2
jmp 0x1b722cef96b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cef96b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, r13b
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, r12b
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cefc7f
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cefa7a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cefa7a
mov dword [rsp + 0x64], 2
jmp 0x1b722cefb0e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cefb0e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cefbbe
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cefbbe
mov dword [rsp + 0x60], 2
jmp 0x1b722cefc52
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cefc52
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x60]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x64]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceff97
mov eax, dword [rsp + 0x40]
sub eax, 0x28
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cefd83
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cefd83
mov dword [rsp + 0x5c], 2
jmp 0x1b722cefe17
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cefe17
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x28
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cefed6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cefed6
mov dword [rsp + 0x58], 2
jmp 0x1b722ceff6a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722ceff6a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and r8b, byte [rsp + 0x58]
add r8b, r8b
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub dl, r8b
add dl, byte [rsp + 0x5c]
mov byte [rax + rsi + 1], dl
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf0285
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf007f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf007f
mov dword [rsp + 0x54], 2
jmp 0x1b722cf0113
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0113
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf01c4
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf01c4
mov dword [rsp + 0x50], 2
jmp 0x1b722cf0258
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0258
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
movzx edx, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
and dl, byte [rsp + 0x50]
add dl, dl
movzx r8d, byte [rax + rsi + 1]
movsxd rax, dword [rsp + 0x40]
sub r8b, dl
add r8b, byte [rsp + 0x54]
mov byte [rax + rsi + 1], r8b
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 0xc
jb 0x1b722cef391
mov rcx, qword [rsp + 0x48]
mov byte [rsi], 1
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [rsi + 1]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
lea rcx, [rbp + 0x23c0]
call rax
xor eax, eax
lea rdx, [rbp + 0x38]
lea rcx, [rbp - 0x45]
mov byte [rbp - 0x45], al
call fcn.1b722cf98b0
movsd xmm8, qword [0x1b722d1a488]
xor ebx, ebx
mov rsi, rax
cmp byte [rax], bl
jne 0x1b722cf1207
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf05e2
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf03ea
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf03ea
mov r14d, 2
jmp 0x1b722cf047b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf047b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0529
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf0529
mov r15d, 2
jmp 0x1b722cf05ba
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf05ba
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0f02
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf0902
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf070a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf070a
mov r12d, 2
jmp 0x1b722cf079b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf079b
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0849
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf0849
mov r13d, 2
jmp 0x1b722cf08da
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf08da
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf0bec
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf09e8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf09e8
mov dword [rsp + 0x64], 2
jmp 0x1b722cf0a7c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0a7c
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0b2d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf0b2d
mov dword [rsp + 0x60], 2
jmp 0x1b722cf0bc1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0bc1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x60]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x64]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0f02
mov eax, dword [rsp + 0x40]
sub eax, 0x27
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0cf0
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf0cf0
mov dword [rsp + 0x5c], 2
jmp 0x1b722cf0d84
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0d84
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x27
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0e43
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf0e43
mov dword [rsp + 0x58], 2
jmp 0x1b722cf0ed7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0ed7
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x58]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x5c]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf11ee
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf0fea
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf0fea
mov dword [rsp + 0x54], 2
jmp 0x1b722cf107e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf107e
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf112f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf112f
mov dword [rsp + 0x50], 2
jmp 0x1b722cf11c3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf11c3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x50]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x54]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 1
jb 0x1b722cf0304
xor ebx, ebx
mov rcx, qword [0x1b722d20bc8]
lea rdx, [0x1b722c40000]
mov byte [rsi], 1
mov eax, dword [rsi + 4]
call qword [rdx + rax*8 + 0xdf6b0]
mov qword [rsp + 0x48], rax
lea rdx, [rbp + 0x40]
xor eax, eax
lea rcx, [rbp - 0x44]
mov byte [rbp - 0x44], al
call fcn.1b722cf9a10
movsd xmm6, qword [0x1b722d1a480]
mov rsi, rax
movsd xmm7, qword [0x1b722d1a478]
cmp byte [rax], 0
jne 0x1b722cf2181
mov dword [rsp + 0x40], ebx
mov ecx, dword [rsp + 0x40]
cmp ecx, 1
jae 0x1b722cf2181
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
nop word [rax + rax]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf1560
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1367
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf1367
mov r14d, 2
jmp 0x1b722cf13f8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf13f8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf14a7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf14a7
mov r15d, 2
jmp 0x1b722cf1538
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1538
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1e80
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf1882
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1689
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf1689
mov r12d, 2
jmp 0x1b722cf171a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf171a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf17c9
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf17c9
mov r13d, 2
jmp 0x1b722cf185a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf185a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf1b6a
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1967
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf1967
mov dword [rsp + 0x64], 2
jmp 0x1b722cf19fb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf19fb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1aab
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf1aab
mov dword [rsp + 0x60], 2
jmp 0x1b722cf1b3f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1b3f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x60]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x64]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1e80
mov eax, dword [rsp + 0x40]
sub eax, 0x25
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1c6e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf1c6e
mov dword [rsp + 0x5c], 2
jmp 0x1b722cf1d02
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1d02
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x25
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1dc1
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf1dc1
mov dword [rsp + 0x58], 2
jmp 0x1b722cf1e55
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1e55
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x58]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x5c]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf216a
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1f67
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf1f67
mov dword [rsp + 0x54], 2
jmp 0x1b722cf1ffb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf1ffb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x68], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf20ab
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf20ab
mov dword [rsp + 0x50], 2
jmp 0x1b722cf213f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf213f
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x68]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x50]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x54]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 1
jb 0x1b722cf1280
mov rdx, qword [rsp + 0x48]
lea r8, [0x1b722c40000]
mov rcx, qword [0x1b722d20bd0]
mov byte [rsi], 1
mov eax, dword [rsi + 4]
call qword [r8 + rax*8 + 0xdf750]
xor eax, eax
mov byte [rbp + 0x398], 1
lea rdx, [rbp + 0x48]
mov byte [rbp - 0x43], al
lea rcx, [rbp - 0x43]
call fcn.1b722cf9b70
movsd xmm9, qword [0x1b722d1a470]
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cf30f1
mov dword [rsp + 0x40], 0
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf24d0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf22d7
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf22d7
mov r14d, 2
jmp 0x1b722cf2368
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2368
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2417
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf2417
mov r15d, 2
jmp 0x1b722cf24a8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf24a8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2dee
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf27f0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf25f8
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf25f8
mov r12d, 2
jmp 0x1b722cf2689
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2689
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2737
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf2737
mov r13d, 2
jmp 0x1b722cf27c8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf27c8
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf2ad8
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf28d5
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf28d5
mov dword [rsp + 0x64], 2
jmp 0x1b722cf2969
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2969
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2a19
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf2a19
mov dword [rsp + 0x60], 2
jmp 0x1b722cf2aad
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2aad
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x60]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x64]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2dee
mov eax, dword [rsp + 0x40]
sub eax, 0x24
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2bdc
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf2bdc
mov dword [rsp + 0x5c], 2
jmp 0x1b722cf2c70
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2c70
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x24
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2d2f
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf2d2f
mov dword [rsp + 0x58], 2
jmp 0x1b722cf2dc3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2dc3
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x58]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x5c]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf30da
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2ed6
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf2ed6
mov dword [rsp + 0x54], 2
jmp 0x1b722cf2f6a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf2f6a
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf301b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf301b
mov dword [rsp + 0x50], 2
jmp 0x1b722cf30af
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf30af
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x50]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x54]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 1
jb 0x1b722cf21f0
mov rax, qword [0x1b722d20bf0]
lea rdx, [rbp + 0x398]
mov byte [rsi], 1
mov r8d, 1
mov r9d, dword [rsi + 4]
mov ecx, dword [rax + 0x38]
add rcx, qword [rax + 0x30]
lea rax, [0x1b722c40000]
call qword [rax + r9*8 + 0xdefd0]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf4271
movsx eax, byte [0x1b722d1ee8a]
xorps xmm2, xmm2
cvtsi2sd xmm2, qword [0x1b722d20c00]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf3220
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf3220
mov edi, 2
jmp 0x1b722cf32b6
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf32b2
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si edi, xmm0
jmp 0x1b722cf32b6
mov edi, dword [rsp + 0x40]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x1b722cf4271
xor eax, eax
lea rdx, [rbp + 0x50]
lea rcx, [rbp - 0x42]
mov byte [rbp - 0x42], al
call fcn.1b722cf9cd0
mov rsi, rax
cmp byte [rax], 0
jne 0x1b722cf4256
movsd xmm6, qword [0x1b722d1a468]
movsd xmm7, qword [0x1b722d1a460]
movsd xmm8, qword [0x1b722d1a458]
mov dword [rsp + 0x40], 0
mov ecx, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov r12d, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf3635
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf343c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf343c
mov r14d, 2
jmp 0x1b722cf34cd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf34cd
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf357c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf357c
mov r15d, 2
jmp 0x1b722cf360d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf360d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf3f53
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf3955
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf375d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf375d
mov r12d, 2
jmp 0x1b722cf37ee
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf37ee
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf389c
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf389c
mov r13d, 2
jmp 0x1b722cf392d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf392d
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf3c3d
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf3a3a
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf3a3a
mov dword [rsp + 0x64], 2
jmp 0x1b722cf3ace
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf3ace
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf3b7e
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf3b7e
mov dword [rsp + 0x60], 2
jmp 0x1b722cf3c12
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf3c12
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x60]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x64]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf3f53
mov eax, dword [rsp + 0x40]
sub eax, 0x21
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf3d41
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf3d41
mov dword [rsp + 0x5c], 2
jmp 0x1b722cf3dd5
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf3dd5
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x5c], eax
mov eax, dword [rsp + 0x40]
sub eax, 0x21
movd xmm2, eax
movsx eax, byte [0x1b722d1ee8a]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf3e94
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf3e94
mov dword [rsp + 0x58], 2
jmp 0x1b722cf3f28
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf3f28
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x58], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x58]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x5c]
mov dword [rsi + rax*4 + 4], edx
call fcn.1b722c410d0
movsx ebx, byte [0x1b722d20c08]
movsx ecx, al
imul ebx, ecx
add ebx, ebx
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf423f
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf403b
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf403b
mov dword [rsp + 0x54], 2
jmp 0x1b722cf40cf
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf40cf
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x54], eax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf4180
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x1b722cf4180
mov dword [rsp + 0x50], 2
jmp 0x1b722cf4214
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf4214
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x48]
cvttsd2si eax, xmm0
mov dword [rsp + 0x50], eax
movsxd rax, dword [rsp + 0x40]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
and r8d, dword [rsp + 0x50]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x40]
sub edx, r8d
add edx, dword [rsp + 0x54]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
cmp eax, 1
jb 0x1b722cf3355
mov rcx, qword [0x1b722d20c00]
lea rdx, [0x1b722c40000]
mov byte [rsi], 1
mov eax, dword [rsi + 4]
call qword [rdx + rax*8 + 0xdf8e0]
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1b722d1ee8a]
movd xmm1, eax
movsx eax, byte [0x1b722d1ee8c]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x48], xmm1
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf435d
call fcn.1b722c410d0
movsx edx, byte [0x1b722d20c08]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.1b722c41100
movsx ecx, al
sub ebx, ecx
call fcn.1b722c410e0
movsx ecx, byte [0x1b722d1ee8c]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x1b722cf43eb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
cmp eax, ecx
je 0x1b722cf43eb
call fcn.1b722c410c0
movsx ebx, al
call fcn.1b722c410b0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.1b722c410f0
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1b722d1ee89]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1b722d1ee88]
div ecx
movsx ecx, byte [0x1b722d1ee8b]
sub eax, ecx
mov ecx, eax
cvtsi2sd xmm0, rcx
mulsd xmm0, qword [rsp + 0x48]
movaps xmm10, xmmword [rsp + 0x3100]
xor eax, eax
movaps xmm11, xmmword [rsp + 0x30f0]
movaps xmm12, xmmword [rsp + 0x30e0]
mov rcx, qword [rbp + 0x2fc0]
xor rcx, rsp
call fcn.1b722cf9e40
lea r11, [rsp + 0x3150]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov r14, qword [rsp + 0x40]
mov byte [rsi], 1
lea rcx, [rsi + 1]
mov rdx, qword [r14]
mov r8, rdx
call fcn.1b722c41050
xor ecx, ecx
call fcn.1b722cfd838
int3
mov rdx, qword [rsp + 0x40]
lea rcx, [rsi + 1]
mov byte [rsi], 1
mov rdx, qword [rdx]
mov r8, rdx
call fcn.1b722c41050
xor ecx, ecx
call fcn.1b722cfd838
int3