Function at 0x14000a020
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
mov qword [rsp + 8], rcx
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x18d0]
mov eax, 0x19d0
call fcn.14002dcd0
sub rsp, rax
mov r14, r9
mov rsi, r8
mov r15, rdx
mov r12, rcx
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xor r13d, r13d
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000a3e6
mov r8d, 0x208
lea rdx, [rbp - 0x60]
xor ecx, ecx
call qword [0x140063078]
mov ecx, r13d
xorps xmm2, xmm2
test eax, eax
movsx eax, byte [0x1400754c2]
sete cl
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
cvtsi2sd xmm2, rcx
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000a174
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000a174
mov edi, 5
jmp 0x14000a209
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000a203
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si edi, xmm0
jmp 0x14000a209
mov edi, dword [rbp + 0x1920]
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x14000a3e6
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000a340
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x14000a3da
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000a3cf
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si eax, xmm0
jmp 0x14000a3d5
mov eax, dword [rbp + 0x1920]
cmp r13d, eax
jge 0x14000a3e6
mov rax, 0xffffffffffffffff
jmp 0x14001004d
xor edx, edx
lea rcx, [rbp + 0x680]
mov r8d, 0x1208
call fcn.14002e4a0
lea rax, [rbp - 0x60]
mov rbx, 0xffffffffffffffff
inc rbx
cmp word [rax + rbx*2], r13w
jne 0x14000a405
add rbx, rbx
lea rdx, [rbp - 0x60]
mov r8, rbx
lea rcx, [rbp + 0x680]
call fcn.14002de00
movsxd r13, dword [rsi + 0x3c]
mov eax, 0x20
mov word [rbp + rbx + 0x680], ax
add r13, rsi
movzx eax, word [r14]
mov word [rbp + rbx + 0x682], ax
mov qword [rsp + 0x58], r13
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000a7c1
xor r14d, r14d
xorps xmm2, xmm2
cmp dword [r13], 0x4550
mov eax, r14d
setne al
cvtsi2sd xmm2, rax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000a551
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000a551
mov edi, 5
jmp 0x14000a5e6
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000a5e0
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si edi, xmm0
jmp 0x14000a5e6
mov edi, dword [rbp + 0x1920]
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
add ebx, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x14000a7c1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000a71d
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x14000a7b7
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000a7ac
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si eax, xmm0
jmp 0x14000a7b2
mov eax, dword [rbp + 0x1920]
cmp r14d, eax
jge 0x14000a7c1
mov eax, 0xfffffffe
jmp 0x14001004d
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ab6c
mov qword [rsp + 0x48], r12
lea rdx, [rbp + 0x680]
mov qword [rsp + 0x40], r15
xor r9d, r9d
xor r15d, r15d
xor r8d, r8d
mov qword [rsp + 0x38], r15
xor ecx, ecx
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 4
mov dword [rsp + 0x20], 1
call qword [0x140063088]
mov ecx, r15d
xorps xmm2, xmm2
test eax, eax
movsx eax, byte [0x1400754c2]
sete cl
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
cvtsi2sd xmm2, rcx
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000a8fe
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000a8fe
mov edi, 5
jmp 0x14000a993
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000a98d
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si edi, xmm0
jmp 0x14000a993
mov edi, dword [rbp + 0x1920]
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x14000ab6f
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000aac8
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x14000ab62
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ab57
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si eax, xmm0
jmp 0x14000ab5d
mov eax, dword [rbp + 0x1920]
cmp r15d, eax
jge 0x14000ab6f
mov eax, 0xfffffffd
jmp 0x14001004d
xor r15d, r15d
xor edx, edx
lea rcx, [rbp + 0x1b0]
mov r8d, 0x4d0
call fcn.14002e4a0
mov dword [rbp + 0x1e0], 0x10000b
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000b06f
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14000ac67
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14000ac67
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x346beceb
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14000ac62
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14000ac40
cmp r8d, 0x1f2c8c78
je 0x14000ac6c
test r9d, r9d
jne 0x14000ac20
mov rax, qword [rax]
jmp 0x14000abf0
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rdx, [rbp + 0x1b0]
mov rcx, qword [r12 + 8]
add rax, r10
call rax
movsx ecx, byte [0x1400754c2]
test eax, eax
movd xmm1, ecx
movsx ecx, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, ecx
mov rcx, r15
cvtdq2pd xmm0, xmm0
sete cl
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
mulsd xmm1, xmm0
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ad4f
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000ad4f
mov edi, 5
jmp 0x14000ade4
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000adde
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si edi, xmm0
jmp 0x14000ade4
mov edi, dword [rbp + 0x1920]
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x14000b06f
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14000aeb7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14000aeb7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x837570af
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14000aeb2
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14000ae90
cmp r8d, 0x7fb25817
je 0x14000aebc
test r9d, r9d
jne 0x14000ae70
mov rax, qword [rax]
jmp 0x14000ae40
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov edx, 0xfffffffc
mov rcx, qword [r12]
add rax, r10
call rax
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000afcb
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x14000b065
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000b05a
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si eax, xmm0
jmp 0x14000b060
mov eax, dword [rbp + 0x1920]
cmp r15d, eax
jge 0x14000b06f
mov eax, 0xfffffffc
jmp 0x14001004d
mov rax, qword gs:[0x60]
mov r14, qword [r13 + 0x30]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop dword [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14000b107
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14000b107
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x23ad6427
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14000b102
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14000b0e0
cmp r8d, 0xf4c54b8e
je 0x14000b10c
test r9d, r9d
jne 0x14000b0c0
mov rax, qword [rax]
jmp 0x14000b090
mov ecx, dword [rdi + 0x24]
mov rdx, r14
add rcx, r10
mov dword [rsp + 0x20], 0x40
movzx r8d, word [rcx + r9*2]
mov r9d, 0x3000
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
mov r8d, dword [r13 + 0x50]
add rax, r10
mov rcx, qword [r12]
call rax
mov qword [rbp - 0x78], rax
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*2]
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000b56f
cmp qword [rbp - 0x78], 0
mov rax, r15
xorps xmm2, xmm2
sete al
cvtsi2sd xmm2, rax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000b248
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000b248
mov r14d, 5
jmp 0x14000b2df
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000b2d8
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si r14d, xmm0
jmp 0x14000b2df
mov r14d, dword [rbp + 0x1920]
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
shl edi, 3
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
imul eax, r14d
test eax, eax
je 0x14000b56f
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14000b3b7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14000b3b7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x31b8090f
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14000b3b2
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14000b390
cmp r8d, 0x3254b4f7
je 0x14000b3bc
test r9d, r9d
jne 0x14000b370
mov rax, qword [rax]
jmp 0x14000b340
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov edx, 0xfffffffb
mov rcx, qword [r12]
add rax, r10
call rax
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000b4cb
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x14000b565
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000b55a
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si eax, xmm0
jmp 0x14000b560
mov eax, dword [rbp + 0x1920]
cmp r15d, eax
jge 0x14000b56f
mov eax, 0xfffffffb
jmp 0x14001004d
mov r9d, dword [r13 + 0x54]
mov r8, rsi
mov rdx, qword [rbp - 0x78]
mov rcx, qword [r12]
mov qword [rsp + 0x20], r15
call fcn.14001e58b
mov r14d, r15d
mov dword [rbp + 0x1920], r15d
mov r15d, dword [rbp + 0x1920]
nop dword [rax]
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp - 0x80], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000b691
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000b691
mov r15d, 5
jmp 0x14000b71c
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000b71c
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp - 0x80]
cvttsd2si r15d, xmm0
cmp r14d, r15d
jge 0x14000b79a
xor eax, eax
mov edi, eax
cmp ax, word [r13 + 6]
jae 0x14000b78b
xor r14d, r14d
mov ebx, r14d
nop dword [rax]
nop word [rax + rax]
movsxd rax, dword [rsi + 0x3c]
mov rcx, qword [r12]
add rax, rbx
mov qword [rsp + 0x20], r14
mov r8d, dword [rax + rsi + 0x11c]
mov edx, dword [rax + rsi + 0x114]
add r8, rsi
add rdx, qword [rbp - 0x78]
mov r9d, dword [rax + rsi + 0x118]
call fcn.14001e58b
movzx eax, word [r13 + 6]
inc rdi
add rbx, 0x28
cmp rdi, rax
jb 0x14000b740
mov r14d, dword [rbp + 0x1920]
inc r14d
mov dword [rbp + 0x1920], r14d
jmp 0x14000b5a0
movaps xmmword [rsp + 0x19c0], xmm6
lea rdx, [rbp - 0x70]
movaps xmmword [rsp + 0x19b0], xmm7
lea rcx, [rbp + 0x1920]
movaps xmmword [rsp + 0x19a0], xmm8
movaps xmmword [rsp + 0x1990], xmm9
mov byte [rbp + 0x1920], 0
call fcn.140010070
xor r14d, r14d
mov rsi, rax
cmp byte [rax], r14b
jne 0x14000c704
movsd xmm6, qword [0x14006c588]
movsd xmm7, qword [0x14006c580]
movsd xmm8, qword [0x14006c578]
movsd xmm9, qword [0x14006c570]
mov dword [rsp + 0x50], r14d
mov ecx, dword [rsp + 0x50]
mov r14d, dword [rbp + 0x1920]
mov r15d, dword [rbp + 0x1920]
mov r12d, dword [rbp + 0x1920]
mov r13d, dword [rbp + 0x1920]
nop dword [rax]
call fcn.140001c10
movsx ebx, byte [0x140076b00]
movsx ecx, al
imul ebx, ecx
shl ebx, 3
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000bb02
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
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.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000b915
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000b915
mov r14d, 5
jmp 0x14000b9a1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000b9a1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
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.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ba4e
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000ba4e
mov r15d, 5
jmp 0x14000bada
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000bada
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c400
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000be17
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
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.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000bc2a
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000bc2a
mov r12d, 5
jmp 0x14000bcb6
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000bcb6
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
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.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000bd63
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000bd63
mov r13d, 5
jmp 0x14000bdef
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000bdef
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c10
movsx ebx, byte [0x140076b00]
movsx ecx, al
imul ebx, ecx
shl ebx, 3
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000c0f8
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
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.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000beff
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000beff
mov dword [rsp + 0x64], 5
jmp 0x14000bf8e
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000bf8e
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
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.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c03e
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000c03e
mov dword [rsp + 0x60], 5
jmp 0x14000c0cd
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c0cd
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, dword [rsp + 0x60]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, dword [rsp + 0x64]
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c400
mov eax, dword [rsp + 0x50]
sub eax, 0x47
movd xmm2, eax
movsx eax, byte [0x1400754c2]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1400754c4]
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.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c1f9
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000c1f9
mov dword [rsp + 0x6c], 5
jmp 0x14000c288
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c288
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x6c], eax
mov eax, dword [rsp + 0x50]
sub eax, 0x47
movd xmm2, eax
movsx eax, byte [0x1400754c2]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1400754c4]
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.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c346
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000c346
mov dword [rsp + 0x68], 5
jmp 0x14000c3d5
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c3d5
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x68], eax
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, dword [rsp + 0x68]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, dword [rsp + 0x6c]
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000c6de
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
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.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c4e7
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000c4e7
mov dword [rbp - 0x80], 5
jmp 0x14000c575
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c575
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rbp - 0x80], eax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
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.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c625
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000c625
mov dword [rsp + 0x70], 5
jmp 0x14000c6b4
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c6b4
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x78]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, dword [rsp + 0x70]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, dword [rbp - 0x80]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cmp eax, 1
jb 0x14000b830
mov r13, qword [rsp + 0x58]
xor r14d, r14d
mov r12, qword [rbp + 0x1900]
mov byte [rsi], 1
lea r8, [rbp - 0x78]
movsxd rcx, dword [rsi + 4]
mov r9d, 8
mov rax, qword [rbp + 0x238]
mov qword [rsp + 0x20], r14
lea rdx, [rax + rcx*8]
mov rcx, qword [r12]
call fcn.14001e58b
mov eax, dword [r13 + 0x28]
add rax, qword [rbp - 0x78]
mov qword [rbp + 0x230], rax
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
add edi, edi
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000cc0f
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14000c807
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14000c807
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x1120eca7
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14000c802
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14000c7e0
cmp r8d, 0xeddb91c0
je 0x14000c80c
test r9d, r9d
jne 0x14000c7c0
mov rax, qword [rax]
jmp 0x14000c790
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
lea rdx, [rbp + 0x1b0]
mov rcx, qword [r12 + 8]
add rax, r10
call rax
movsx ecx, byte [0x1400754c2]
test eax, eax
movd xmm1, ecx
movsx ecx, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, ecx
mov rcx, r14
cvtdq2pd xmm0, xmm0
sete cl
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
mulsd xmm1, xmm0
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c8ef
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000c8ef
mov edi, 5
jmp 0x14000c984
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000c97e
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si edi, xmm0
jmp 0x14000c984
mov edi, dword [rbp + 0x1920]
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x14000cc0f
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14000ca57
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14000ca57
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0x5aabfb21
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14000ca52
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14000ca30
cmp r8d, 0x3f6ca665
je 0x14000ca5c
test r9d, r9d
jne 0x14000ca10
mov rax, qword [rax]
jmp 0x14000c9e0
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov edx, 0xfffffff7
mov rcx, qword [r12]
add rax, r10
call rax
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000cb6b
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x14000cc05
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000cbfa
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si eax, xmm0
jmp 0x14000cc00
mov eax, dword [rbp + 0x1920]
cmp r14d, eax
jge 0x14000cc0f
mov eax, 0xfffffff7
jmp 0x14001002b
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ef62
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14000cce7
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14000cce7
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xd9d0f59
lea rcx, [rbx + r9*4]
mov edx, dword [rcx + r10]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14000cce2
nop
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14000ccc0
cmp r8d, 0x4f61426a
je 0x14000ccec
test r9d, r9d
jne 0x14000cca0
mov rax, qword [rax]
jmp 0x14000cc70
mov ecx, dword [rdi + 0x24]
add rcx, r10
movzx edx, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + rdx*4]
mov rcx, qword [r12 + 8]
add rax, r10
call rax
movsx ecx, byte [0x1400754c2]
test eax, eax
movd xmm1, ecx
movsx ecx, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, ecx
mov rcx, r14
cvtdq2pd xmm0, xmm0
sete cl
addsd xmm0, xmm0
subsd xmm1, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
mulsd xmm1, xmm0
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000cdc8
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000cdc8
mov edi, 5
jmp 0x14000ce5d
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ce57
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si edi, xmm0
jmp 0x14000ce5d
mov edi, dword [rbp + 0x1920]
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*4]
add ebx, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
imul eax, edi
test eax, eax
je 0x14000ef62
lea rdx, [rbp - 0x70]
mov byte [rbp + 0x1920], 0
lea rcx, [rbp + 0x1920]
call fcn.1400101e0
movsd xmm8, qword [0x14006c558]
mov rsi, rax
movsd xmm9, qword [0x14006c550]
cmp byte [rax], 0
jne 0x14000ddef
mov dword [rsp + 0x50], r14d
mov ecx, dword [rsp + 0x50]
cmp ecx, 1
jae 0x14000ddef
movsd xmm6, qword [0x14006c568]
movsd xmm7, qword [0x14006c560]
mov r14d, dword [rbp + 0x1920]
mov r15d, dword [rbp + 0x1920]
mov r12d, dword [rbp + 0x1920]
mov r13d, dword [rbp + 0x1920]
nop word [rax + rax]
call fcn.140001c10
movsx ebx, byte [0x140076b00]
movsx ecx, al
imul ebx, ecx
shl ebx, 3
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000d1f2
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d005
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000d005
mov r14d, 5
jmp 0x14000d091
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d091
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d13e
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000d13e
mov r15d, 5
jmp 0x14000d1ca
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d1ca
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000daed
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000d507
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d31a
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000d31a
mov r12d, 5
jmp 0x14000d3a6
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d3a6
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d453
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000d453
mov r13d, 5
jmp 0x14000d4df
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d4df
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c10
movsx ebx, byte [0x140076b00]
movsx ecx, al
imul ebx, ecx
shl ebx, 3
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000d7e5
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d5ef
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000d5ef
mov dword [rsp + 0x70], 5
jmp 0x14000d67e
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d67e
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d72d
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000d72d
mov dword [rbp - 0x80], 5
jmp 0x14000d7bb
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d7bb
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rbp - 0x80], eax
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, dword [rbp - 0x80]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, dword [rsp + 0x70]
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000daed
mov eax, dword [rsp + 0x50]
sub eax, 0x41
movd xmm2, eax
movsx eax, byte [0x1400754c2]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d8e6
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000d8e6
mov dword [rsp + 0x68], 5
jmp 0x14000d975
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000d975
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x50]
sub eax, 0x41
movd xmm2, eax
movsx eax, byte [0x1400754c2]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000da33
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000da33
mov dword [rsp + 0x6c], 5
jmp 0x14000dac2
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000dac2
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x6c], eax
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, dword [rsp + 0x6c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, dword [rsp + 0x68]
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000ddce
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000dbd5
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000dbd5
mov dword [rsp + 0x60], 5
jmp 0x14000dc64
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000dc64
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000dd14
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000dd14
mov dword [rsp + 0x64], 5
jmp 0x14000dda3
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000dda3
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, dword [rsp + 0x64]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cmp eax, 1
jb 0x14000cf20
mov r12, qword [rbp + 0x1900]
xor r14d, r14d
mov byte [rsi], 1
mov rax, qword gs:[0x60]
mov esi, dword [rsi + 4]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop word [rax + rax]
mov r10, qword [rax + 0x30]
movsxd rcx, dword [r10 + 0x3c]
mov edi, dword [rcx + r10 + 0x88]
add rdi, r10
cmp rdi, r10
je 0x14000de87
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x14000de87
mov ebx, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
mov r8d, 0xaef33ef7
lea rcx, [r10 + r9*4]
mov edx, dword [rcx + rbx]
add rdx, r10
movzx ecx, byte [rdx]
inc rdx
test cl, cl
je 0x14000de82
nop dword [rax]
movsx ecx, cl
lea rdx, [rdx + 1]
xor ecx, r8d
imul r8d, ecx, 0x1000193
movzx ecx, byte [rdx - 1]
test cl, cl
jne 0x14000de60
cmp r8d, 0xa5b2497f
je 0x14000de8c
test r9d, r9d
jne 0x14000de40
mov rax, qword [rax]
jmp 0x14000de10
mov ecx, dword [rdi + 0x24]
mov edx, esi
add rcx, r10
movzx r8d, word [rcx + r9*2]
mov ecx, dword [rdi + 0x1c]
add rcx, r10
mov eax, dword [rcx + r8*4]
mov rcx, qword [r12]
add rax, r10
call rax
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000df99
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x14000e037
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e028
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si eax, xmm0
jmp 0x14000e02e
mov eax, dword [rbp + 0x1920]
cmp r14d, eax
jge 0x14000ef62
lea rdx, [rbp - 0x70]
mov byte [rbp + 0x1920], 0
lea rcx, [rbp + 0x1920]
call fcn.140010340
mov rsi, rax
cmp byte [rax], 0
jne 0x140010025
mov dword [rsp + 0x50], r14d
mov ecx, dword [rsp + 0x50]
cmp ecx, 1
jae 0x140010025
movsd xmm6, qword [0x14006c548]
movsd xmm7, qword [0x14006c540]
mov r14d, dword [rbp + 0x1920]
mov r15d, dword [rbp + 0x1920]
mov r12d, dword [rbp + 0x1920]
mov r13d, dword [rbp + 0x1920]
call fcn.140001c10
movsx ebx, byte [0x140076b00]
movsx ecx, al
imul ebx, ecx
shl ebx, 3
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000e36c
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e17e
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000e17e
mov r14d, 5
jmp 0x14000e20a
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e20a
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e2b8
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000e2b8
mov r15d, 5
jmp 0x14000e344
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e344
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ec67
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000e683
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e495
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000e495
mov r12d, 5
jmp 0x14000e521
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e521
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e5cf
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000e5cf
mov r13d, 5
jmp 0x14000e65b
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e65b
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c10
movsx ebx, byte [0x140076b00]
movsx ecx, al
imul ebx, ecx
shl ebx, 3
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000e95f
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e76a
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000e76a
mov dword [rsp + 0x70], 5
jmp 0x14000e7f9
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e7f9
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e8a7
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000e8a7
mov dword [rbp - 0x80], 5
jmp 0x14000e935
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000e935
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rbp - 0x80], eax
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, dword [rbp - 0x80]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, dword [rsp + 0x70]
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ec67
mov eax, dword [rsp + 0x50]
sub eax, 0x3f
movd xmm2, eax
movsx eax, byte [0x1400754c2]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ea60
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000ea60
mov dword [rsp + 0x68], 5
jmp 0x14000eaef
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000eaef
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x50]
sub eax, 0x3f
movd xmm2, eax
movsx eax, byte [0x1400754c2]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ebad
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000ebad
mov dword [rsp + 0x6c], 5
jmp 0x14000ec3c
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ec3c
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x6c], eax
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, dword [rsp + 0x6c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, dword [rsp + 0x68]
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000ef46
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ed4e
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000ed4e
mov dword [rsp + 0x60], 5
jmp 0x14000eddd
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000eddd
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ee8c
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000ee8c
mov dword [rsp + 0x64], 5
jmp 0x14000ef1b
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ef1b
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, dword [rsp + 0x64]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cmp eax, 1
jb 0x14000e098
jmp 0x140010025
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm2, xmm2
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm2, rax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rbp + 0x1920], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f04f
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
jne 0x14000f0ed
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f0de
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rbp + 0x1920]
cvttsd2si eax, xmm0
jmp 0x14000f0e4
mov eax, dword [rbp + 0x1920]
cmp r14d, eax
jge 0x14001002b
lea rdx, [rbp - 0x70]
mov byte [rbp + 0x1920], 0
lea rcx, [rbp + 0x1920]
call fcn.1400104b0
mov rsi, rax
cmp byte [rax], 0
jne 0x140010025
mov dword [rsp + 0x50], r14d
mov ecx, dword [rsp + 0x50]
cmp ecx, 1
jae 0x140010025
movsd xmm6, qword [0x14006c548]
movsd xmm7, qword [0x14006c540]
movsd xmm8, qword [0x14006c538]
movsd xmm9, qword [0x14006c530]
mov r14d, dword [rbp + 0x1920]
mov r15d, dword [rbp + 0x1920]
mov r12d, dword [rbp + 0x1920]
mov r13d, dword [rbp + 0x1920]
call fcn.140001c10
movsx ebx, byte [0x140076b00]
movsx ecx, al
imul ebx, ecx
shl ebx, 3
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000f432
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f245
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000f245
mov r14d, 5
jmp 0x14000f2d1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f2d1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si r14d, xmm0
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm6
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f37e
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000f37e
mov r15d, 5
jmp 0x14000f40a
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f40a
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si r15d, xmm0
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, r15d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, r14d
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
shl edi, 2
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000fd2d
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*2]
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000f747
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f55a
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000f55a
mov r12d, 5
jmp 0x14000f5e6
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f5e6
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si r12d, xmm0
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm7
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f693
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000f693
mov r13d, 5
jmp 0x14000f71f
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f71f
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si r13d, xmm0
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, r13d
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, r12d
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c10
movsx ebx, byte [0x140076b00]
movsx ecx, al
imul ebx, ecx
shl ebx, 3
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000fa25
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f82f
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000f82f
mov dword [rsp + 0x70], 5
jmp 0x14000f8be
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f8be
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x70], eax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm8
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f96d
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000f96d
mov dword [rbp - 0x80], 5
jmp 0x14000f9fb
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000f9fb
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rbp - 0x80], eax
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, dword [rbp - 0x80]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, dword [rsp + 0x70]
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
lea ebx, [rcx + rcx*8]
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000fd2d
mov eax, dword [rsp + 0x50]
sub eax, 0x3d
movd xmm2, eax
movsx eax, byte [0x1400754c2]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000fb26
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000fb26
mov dword [rsp + 0x68], 5
jmp 0x14000fbb5
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000fbb5
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x50]
sub eax, 0x3d
movd xmm2, eax
movsx eax, byte [0x1400754c2]
cvtdq2pd xmm2, xmm2
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000fc73
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000fc73
mov dword [rsp + 0x6c], 5
jmp 0x14000fd02
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000fd02
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x6c], eax
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, dword [rsp + 0x6c]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, dword [rsp + 0x68]
mov dword [rsi + rax*4 + 4], edx
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*8]
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14001000e
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000fe15
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000fe15
mov dword [rsp + 0x60], 5
jmp 0x14000fea4
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000fea4
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1400754c2]
movd xmm1, eax
movsx eax, byte [0x1400754c4]
cvtdq2pd xmm1, xmm1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm9
movsd qword [rsp + 0x58], xmm1
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ff54
call fcn.140001c10
movsx edx, byte [0x140076b00]
movsx ecx, al
imul edx, ecx
lea ebx, [rdx + rdx*4]
add ebx, ebx
call fcn.140001c40
movsx ecx, al
sub ebx, ecx
call fcn.140001c20
movsx ecx, byte [0x1400754c4]
movsx edx, al
add edx, ebx
add ecx, edx
je 0x14000ff54
mov dword [rsp + 0x64], 5
jmp 0x14000ffe3
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx ecx, al
imul ecx, ebx
imul ebx, ecx, 7
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, ebx
add eax, ecx
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
cmp eax, ecx
je 0x14000ffe3
call fcn.140001c00
movsx ebx, al
call fcn.140001bf0
movsx edi, al
imul edi, ebx
call fcn.140001c30
movsx ecx, al
xor edx, edx
movsx eax, byte [0x1400754c1]
add ecx, edi
add eax, ecx
xorps xmm0, xmm0
movsx ecx, byte [0x1400754c0]
div ecx
movsx ecx, byte [0x1400754c3]
sub eax, ecx
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x58]
cvttsd2si eax, xmm0
mov dword [rsp + 0x64], eax
movsxd rax, dword [rsp + 0x50]
mov r8d, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
and r8d, dword [rsp + 0x64]
add r8d, r8d
mov edx, dword [rsi + rax*4 + 4]
movsxd rax, dword [rsp + 0x50]
sub edx, r8d
add edx, dword [rsp + 0x60]
mov dword [rsi + rax*4 + 4], edx
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x50]
cmp eax, 1
jb 0x14000f160
mov byte [rsi], 1
mov eax, dword [rsi + 4]
movaps xmm8, xmmword [rsp + 0x19a0]
movaps xmm7, xmmword [rsp + 0x19b0]
movaps xmm6, xmmword [rsp + 0x19c0]
movaps xmm9, xmmword [rsp + 0x1990]
lea r11, [rsp + 0x19d0]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret