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

Disassembly:
push rbp
push r12
push r13
push r14
push r15
sub rsp, 0x300
lea rbp, [rsp + 0xc0]
mov qword [rbp + 0x270], rbx
mov qword [rbp + 0x278], rsi
mov qword [rbp + 0x280], rdi
movaps xmmword [rbp + 0x230], xmm6
movaps xmmword [rbp + 0x220], xmm7
movaps xmmword [rbp + 0x210], xmm8
movaps xmmword [rbp + 0x200], xmm9
movaps xmmword [rbp + 0x1f0], xmm10
movaps xmmword [rbp + 0x1e0], xmm11
movaps xmmword [rbp + 0x1d0], xmm12
movaps xmmword [rbp + 0x1c0], xmm13
movaps xmmword [rbp + 0x1b0], xmm14
movaps xmmword [rbp + 0x1a0], xmm15
mov rax, qword [0x180123180]
xor rax, rbp
mov qword [rbp + 0x190], rax
and dword [rbp + 0xb0], 0
mov rsi, rcx
mov edi, dword [rbp + 0x290]
xor r11d, r11d
mov qword [rbp + 0x100], rcx
mov r12, r9
mov r9d, dword [rcx + 8]
mov ebx, r8d
mov ecx, dword [rcx + 0xc]
xorps xmm14, xmm14
mov r8, qword [rsi]
mov rax, rdx
mov dword [rbp], ecx
xorps xmm10, xmm10
mov ecx, r11d
mov dword [rbp + 0xac], r11d
mov dword [rbp + 0x48], ecx
xorps xmm15, xmm15
mov r10d, dword [r8 + 8]
xorps xmm13, xmm13
movsxd r13, dword [r8 + 4]
mov dword [rbp + 0x80], ecx
mov rcx, qword [r8 + 0x20]
mov qword [rbp + 0xe8], rcx
mov ecx, dword [rsi + 0x24]
mov dword [rbp + 0xc], ecx
mov ecx, dword [rsi + 0x28]
mov dword [rbp + 0x10], ecx
lea ecx, [r11 + 2]
movss dword [rbp + 0x54], xmm14
mov qword [rbp + 0x90], rdx
mov dword [rbp + 0x20], r9d
mov dword [rbp + 8], 0xf
mov dword [rbp + 0xf0], r11d
mov dword [rbp + 0x108], r11d
mov dword [rbp + 0x44], r11d
mov qword [rbp + 0x28], r8
mov dword [rbp + 0x3c], r10d
cmp edi, ecx
jl 0x1800b2b47
test rax, rax
je 0x1800b2b47
imul ebx, dword [rsi + 0x20]
lea r15d, [r11 + 1]
mov edx, dword [r8 + 0x28]
mov ecx, r11d
mov dword [rbp + 4], ecx
test edx, edx
js 0x1800b0758
mov eax, dword [r8 + 0x30]
shl eax, cl
cmp eax, ebx
je 0x1800b0755
add ecx, r15d
cmp ecx, edx
jle 0x1800b0744
mov dword [rbp + 4], ecx
cmp ecx, edx
jg 0x1800b2b47
mov r14, qword [rbp + 0x298]
mov eax, r15d
shl eax, cl
mov ecx, dword [r8 + 0x30]
imul ecx, eax
mov dword [rbp + 0x40], eax
mov eax, r13d
imul eax, r9d
mov dword [rbp + 0x34], ecx
cdqe
add rax, 0x3f
lea rax, [rsi + rax*4]
mov qword [rbp + 0xd8], rax
lea eax, [r13 + 0x400]
imul eax, r9d
movsxd rcx, eax
mov eax, r10d
imul eax, r9d
add rcx, 0x3f
lea rcx, [rsi + rcx*4]
cdqe
mov qword [rbp + 0x148], rax
shl rax, 2
mov qword [rbp + 0xa0], rcx
mov qword [rbp + 0x110], rax
lea rdx, [rax + rcx]
lea rcx, [rcx + rax*2]
mov qword [rbp + 0x140], rdx
add rax, rcx
mov qword [rbp + 0x150], rcx
mov qword [rbp + 0x138], rax
test r14, r14
jne 0x1800b0801
mov r14d, r15d
mov dword [rbp + 0x1c], r15d
mov dword [rbp + 0xe0], r15d
mov r15d, r11d
jmp 0x1800b082d
mov rcx, r14
call fcn.1800b9e30
bsr ecx, dword [r14 + 0x20]
mov r14d, dword [r14 + 0x18]
sub r14d, ecx
mov dword [rbp + 0xe0], eax
sub r14d, r15d
mov dword [rbp + 0x1c], r14d
lea r15d, [r14 + 4]
sar r15d, 3
xor r11d, r11d
cmp dword [rsi + 0x34], r11d
je 0x1800b084c
mov r8d, 0x60b
lea rdx, str..._.._.._third_party_opus_src_celt_celt_encoder.c
lea rcx, str.assertion_failed:_st__signalling0
call fcn.1800ab7c4
mov r11d, 0x4fb
cmp edi, r11d
mov eax, r11d
cmovl eax, edi
xor r10d, r10d
mov edi, eax
mov dword [rbp + 0x18], eax
sub edi, r15d
mov dword [rbp + 0x50], edi
cmp dword [rsi + 0x30], r10d
je 0x1800b08a7
mov r8d, dword [rsi + 0x2c]
cmp r8d, 0xffffffff
je 0x1800b08a7
mov rax, qword [rbp + 0x28]
mov edi, dword [rax]
mov eax, r8d
imul eax, ebx
mov ebx, dword [rbp + 0x18]
sar edi, 3
mov ecx, edi
sar ecx, 1
add eax, ecx
cdq
idiv edi
mov edi, dword [rbp + 0x50]
mov r9d, eax
mov dword [rbp + 0x5c], eax
sar r9d, 6
mov dword [rbp + 0x14], r9d
jmp 0x1800b0913
mov r8d, dword [rsi + 0x2c]
mov edx, r8d
imul edx, ebx
mov dword [rbp + 0x5c], r10d
cmp r8d, 0xffffffff
je 0x1800b0909
mov rax, qword [rbp + 0x28]
mov r9d, 1
mov ebx, dword [rbp + 0x18]
cmp r14d, r9d
mov ecx, dword [rax]
lea eax, [rdx + r14]
cmovle eax, edx
lea eax, [rax + rcx*4]
shl ecx, 3
cdq
idiv ecx
cmp dword [rsi + 0x34], r10d
lea edx, [r9 + 1]
mov ecx, r10d
setne cl
sub eax, ecx
mov ecx, ebx
cmp ebx, eax
cmovge ecx, eax
cmp ecx, edx
jge 0x1800b08ff
mov ebx, edx
mov dword [rbp + 0x18], edx
jmp 0x1800b090b
cmp ebx, eax
cmovge ebx, eax
mov dword [rbp + 0x18], ebx
jmp 0x1800b090b
mov ebx, eax
mov eax, ebx
sub eax, r15d
mov dword [rbp + 0x14], eax
mov ecx, dword [rbp + 4]
mov edx, 0x190
mov eax, dword [rbp]
mov r9d, 3
sar edx, cl
sub r9d, ecx
sub edx, 0x32
mov dword [rbp + 0xa8], r9d
mov ecx, r9d
lea eax, [rax + rax*4]
lea eax, [rax*8 + 0x14]
imul edx, eax
imul eax, ebx, 0x190
sar eax, cl
sub eax, edx
mov dword [rbp + 0x60], eax
cmp r8d, 0xffffffff
je 0x1800b0963
sub r8d, edx
cmp eax, r8d
cmovge eax, r8d
mov dword [rbp + 0x60], eax
cmp qword [rbp + 0x298], r10
jne 0x1800b0991
mov r8d, ebx
lea rcx, [rbp + 0x158]
mov rdx, r12
call fcn.1800b5818
lea r12, [rbp + 0x158]
xor r10d, r10d
mov qword [rbp + 0x298], r12
jmp 0x1800b0998
mov r12, qword [rbp + 0x298]
mov eax, dword [rbp + 0x5c]
test eax, eax
jle 0x1800b09f0
cmp dword [rsi + 0x38], r10d
je 0x1800b09f0
lea edx, [rax + rax]
mov ecx, r10d
sub edx, dword [rsi + 0xd4]
mov eax, 1
sar edx, 6
cmp r14d, eax
mov eax, 2
cmove ecx, eax
mov eax, edx
cmp ecx, edx
cmovg eax, ecx
cmp eax, edi
jge 0x1800b09d6
cmp ecx, edx
cmovle ecx, edx
jmp 0x1800b09d8
mov ecx, edi
cmp ecx, edi
jge 0x1800b09f0
lea ebx, [rcx + r15]
mov dword [rbp + 0x50], ecx
mov edx, ebx
mov dword [rbp + 0x18], ebx
mov rcx, r12
call fcn.1800b5908
mov rax, qword [rbp + 0x28]
mov edi, ebx
mov edx, dword [rbp + 0x34]
movabs r8, 0xffffffffffffff0
shl edi, 3
mov dword [rbp + 0x38], edi
mov eax, dword [rax + 0xc]
cmp dword [rbp + 0x10], eax
cmovle eax, dword [rbp + 0x10]
mov dword [rbp + 0x30], eax
lea eax, [rdx + r13]
mov dword [rbp + 0x58], eax
imul eax, dword [rbp + 0x20]
movsxd rcx, eax
shl rcx, 2
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x1800b0a34
mov rax, r8
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
mov r9d, dword [rbp]
sub rsp, rax
mov r8, qword [rbp + 0x90]
xor r10d, r10d
movaps xmm0, xmm10
movaps xmm1, xmm10
lea rax, [rsp + 0xc0]
mov qword [rbp + 0x88], rax
lea r11d, [r10 + 1]
mov eax, edx
sub eax, r13d
imul eax, r9d
cdq
idiv dword [rsi + 0x20]
test eax, eax
jle 0x1800b0a90
mov rcx, r8
mov edx, eax
maxss xmm0, dword [rcx]
minss xmm1, dword [rcx]
lea rcx, [rcx + 4]
sub rdx, r11
jne 0x1800b0a7f
movss xmm2, dword [0x1800ecd00]
movss xmm6, dword [rsi + 0xe4]
xorps xmm1, xmm2
maxss xmm0, xmm1
comiss xmm6, xmm0
ja 0x1800b0ad5
movaps xmm6, xmm10
movaps xmm0, xmm10
test eax, eax
jle 0x1800b0ace
mov rcx, r8
mov edx, eax
maxss xmm6, dword [rcx]
minss xmm0, dword [rcx]
lea rcx, [rcx + 4]
sub rdx, r11
jne 0x1800b0abd
xorps xmm0, xmm2
maxss xmm6, xmm0
cdqe
movaps xmm0, xmm10
movaps xmm1, xmm10
lea rcx, [r8 + rax*4]
mov eax, r13d
imul eax, r9d
cdq
idiv dword [rsi + 0x20]
test eax, eax
jle 0x1800b0b05
mov edx, eax
maxss xmm0, dword [rcx]
minss xmm1, dword [rcx]
lea rcx, [rcx + 4]
sub rdx, r11
jne 0x1800b0af4
mov ecx, dword [rsi + 0x40]
xorps xmm1, xmm2
movss xmm12, dword [0x1800ecad4]
maxss xmm0, xmm1
mov eax, r11d
movaps xmm1, xmm12
shl eax, cl
maxss xmm6, xmm0
movss dword [rsi + 0xe4], xmm0
movd xmm0, eax
mov eax, r10d
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, xmm6
setae al
mov dword [rbp + 0x64], eax
cmp r14d, r11d
jne 0x1800b0b61
mov r8d, 0xf
mov edx, eax
mov rcx, r12
call fcn.1800b5454
mov eax, dword [rbp + 0x64]
xor r10d, r10d
jmp 0x1800b0b67
mov eax, r10d
mov dword [rbp + 0x64], eax
test eax, eax
je 0x1800b0bb1
mov r9d, dword [rbp + 0x5c]
test r9d, r9d
jle 0x1800b0b9f
lea eax, [r15 + 2]
mov dword [rbp + 0x50], 2
cmp ebx, eax
mov rcx, r12
cmovl eax, ebx
mov edi, eax
mov dword [rbp + 0x18], eax
shl edi, 3
mov edx, eax
mov dword [rbp + 0x38], edi
mov dword [rbp + 0x14], eax
call fcn.1800b5908
xor r10d, r10d
bsr eax, dword [r12 + 0x20]
mov dword [rbp + 0x1c], edi
inc eax
add eax, edi
mov dword [r12 + 0x18], eax
mov r12, qword [rbp + 0x28]
mov ebx, r10d
mov r14, qword [rbp + 0x90]
add r12, 0x10
mov r15d, r10d
mov r9d, 1
cmp dword [rsi + 0x14], r10d
je 0x1800b0bde
comiss xmm6, dword [0x1800f1e80]
mov r8d, r9d
ja 0x1800b0be1
mov r8d, r10d
mov rdx, qword [rbp + 0x88]
lea rdi, [rsi + 0xc4]
mov r9d, dword [rbp + 0x20]
mov dword [rsp + 0x38], r8d
mov r8d, dword [rbp + 0x34]
movsxd rcx, ebx
movsxd rax, r15d
add rax, r13
lea rdi, [rdi + rcx*4]
mov qword [rsp + 0x30], rdi
lea rcx, [r14 + rcx*4]
lea rdx, [rdx + rax*4]
mov qword [rsp + 0x28], r12
mov eax, dword [rsi + 0x20]
mov dword [rsp + 0x20], eax
call fcn.1800b2d1c
mov edi, dword [rbp + 0x58]
mov r9d, 1
mov r8d, dword [rbp + 0x20]
add ebx, r9d
add r15d, edi
lea r10d, [r9 - 1]
cmp ebx, r8d
jl 0x1800b0bcc
mov r14d, dword [rbp + 0x1c]
lea eax, [r9 + 4]
mov ecx, dword [rbp + 0x50]
xor edx, edx
mov dword [rbp + 0xc0], eax
cmp dword [rsi + 0x44], edx
je 0x1800b0c60
cmp ecx, 3
jg 0x1800b0c72
mov eax, dword [rbp]
lea eax, [rax + rax*2]
shl eax, 2
cmp ecx, eax
jle 0x1800b0c8f
mov eax, 5
mov r13d, dword [rbp + 0xc]
test r13d, r13d
jne 0x1800b0c93
cmp dword [rbp + 0x64], edx
jne 0x1800b0c93
cmp dword [rsi + 0x18], edx
jne 0x1800b0c93
cmp dword [rsi + 0x1c], eax
jl 0x1800b0c93
mov eax, r9d
jmp 0x1800b0c95
mov r13d, dword [rbp + 0xc]
mov eax, edx
mov edx, dword [rsi + 0x68]
lea rbx, [rsi + 0x7c]
mov r15, qword [rbp + 0x88]
mov r9d, r8d
mov r8, qword [rbp + 0xd8]
mov qword [rsp + 0x58], rbx
mov dword [rsp + 0x50], ecx
mov rcx, rsi
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0x1c]
mov qword [rsp + 0x40], rax
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x38], rax
lea rax, [rbp + 8]
mov qword [rsp + 0x30], rax
mov eax, dword [rbp + 0x34]
mov dword [rsp + 0x28], edx
mov dword [rbp + 0xf8], edx
mov rdx, r15
mov dword [rsp + 0x20], eax
call fcn.1800b42f8
movss xmm1, dword [0x1800f1e14]
movss xmm0, dword [rbp + 0xb0]
comiss xmm0, xmm1
mov ecx, dword [rbp + 8]
mov dword [rbp + 0xc4], eax
mov dword [rbp + 0xf4], ecx
ja 0x1800b0d22
movss xmm0, dword [rsi + 0x70]
comiss xmm0, xmm1
jbe 0x1800b0d7c
xor r10d, r10d
cmp dword [rbx], r10d
je 0x1800b0d3f
movss xmm0, dword [rsi + 0x80]
cvtps2pd xmm0, xmm0
comisd xmm0, xmmword [0x1800f1e38]
jbe 0x1800b0d7f
movd xmm1, dword [rsi + 0x6c]
cvtdq2pd xmm1, xmm1
movd xmm2, ecx
movaps xmm0, xmm1
mulsd xmm0, qword [0x1800f1e50]
cvtdq2pd xmm2, xmm2
comisd xmm2, xmm0
ja 0x1800b0d6f
mulsd xmm1, qword [0x1800f1e48]
comisd xmm1, xmm2
jbe 0x1800b0d7f
mov ecx, 1
mov dword [rbp + 0xf0], ecx
jmp 0x1800b0d84
xor r10d, r10d
mov ecx, 1
mov r12d, 6
mov dword [rbp + 0xc8], r12d
test eax, eax
jne 0x1800b0dc9
mov ebx, dword [rbp + 0x38]
test r13d, r13d
jne 0x1800b0e4f
lea eax, [r14 + 0x10]
mov r14, qword [rbp + 0x298]
cmp eax, ebx
jg 0x1800b0e56
mov r8d, ecx
xor edx, edx
mov rcx, r14
call fcn.1800b5454
xor r10d, r10d
jmp 0x1800b0e56
mov r14, qword [rbp + 0x298]
mov r8d, ecx
mov edx, ecx
mov rcx, r14
call fcn.1800b5454
mov ebx, dword [rbp + 8]
mov r8d, r12d
inc ebx
mov rcx, r14
bsr edi, ebx
lea edx, [rdi - 4]
call fcn.1800b5970
lea ecx, [rdi - 4]
mov eax, 0x10
shl eax, cl
mov edx, ebx
sub edx, eax
mov r8d, edi
mov rcx, r14
call fcn.1800b54bc
mov edx, dword [rbp + 0x1c]
lea eax, [rbx - 1]
mov r8d, 3
mov dword [rbp + 0xf4], eax
mov rcx, r14
call fcn.1800b54bc
mov edx, dword [rbp + 0xf8]
lea r8, [0x1800f1b80]
mov r12d, 2
mov rcx, r14
mov r9d, r12d
call fcn.1800b5788
mov edi, dword [rbp + 0x58]
xor r10d, r10d
mov ebx, dword [rbp + 0x38]
jmp 0x1800b0e5c
mov r14, qword [rbp + 0x298]
mov r12d, 2
mov edx, dword [rsi + 0x1c]
mov r11d, 1
mov dword [rbp + 8], r10d
mov r9d, r10d
mov dword [rbp + 0x1c], r10d
cmp edx, r11d
jl 0x1800b0ee6
cmp dword [rsi + 0x44], r10d
jne 0x1800b0ee6
test r13d, r13d
je 0x1800b0e92
cmp dword [rbp + 0x14], 0xf
jge 0x1800b0e92
mov eax, r11d
cmp dword [rsi + 0xbc], r12d
jne 0x1800b0e95
mov eax, r10d
mov r12d, dword [rbp + 0x20]
lea rcx, [rbp + 0x44]
mov qword [rsp + 0x30], rcx
lea r9, [rbp + 0x54]
mov dword [rsp + 0x28], eax
mov r8d, r12d
lea rax, [rbp + 0x80]
mov edx, edi
mov rcx, r15
mov qword [rsp + 0x20], rax
call fcn.1800b5048
mov r13d, dword [rbp + 0x80]
xor r10d, r10d
mov edx, dword [rsi + 0x1c]
mov r9d, eax
movss xmm14, dword [rbp + 0x54]
mov dword [rbp + 8], eax
lea r11d, [r10 + 1]
mov dword [rbp + 0x48], r13d
jmp 0x1800b0eee
mov r12d, dword [rbp + 0x20]
mov r13d, dword [rbp + 0x48]
mov r8d, dword [rbp + 4]
mov edi, edx
test r8d, r8d
jle 0x1800b0f1a
bsr ecx, dword [r14 + 0x20]
mov eax, dword [r14 + 0x18]
sub eax, ecx
add eax, 2
cmp eax, ebx
jg 0x1800b0f1a
mov eax, r9d
neg eax
sbb edi, edi
and edi, dword [rbp + 0x40]
mov dword [rbp + 0x1c], edi
jmp 0x1800b0f2a
mov edx, edi
mov dword [rbp + 8], r10d
mov edi, dword [rbp + 0x1c]
mov dword [rbp + 0x108], r11d
mov eax, dword [rbp + 0x34]
movabs rbx, 0xffffffffffffff0
imul eax, r12d
movsxd rcx, eax
shl rcx, 2
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x1800b0f4e
mov rax, rbx
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
mov rcx, qword [rbp + 0x110]
sub rsp, rax
lea rax, [rcx + 0xf]
lea r12, [rsp + 0xc0]
mov qword [rbp + 0xd8], r12
cmp rax, rcx
ja 0x1800b0f7c
mov rax, rbx
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
sub rsp, rax
lea rax, [rsp + 0xc0]
mov qword [rbp + 0x70], rax
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x1800b0fa0
mov rax, rbx
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
sub rsp, rax
xor ecx, ecx
lea rax, [rsp + 0xc0]
mov qword [rbp + 0x98], rax
mov eax, 8
mov dword [rbp + 0x58], eax
test edi, edi
je 0x1800b0fd2
cmp edx, eax
jl 0x1800b0fd2
lea edi, [rax - 7]
jmp 0x1800b0fd4
mov edi, ecx
mov eax, dword [rbp + 0x3c]
mov r14d, dword [rbp]
imul eax, r14d
mov dword [rbp + 0x54], edi
mov dword [rbp + 0x80], eax
cdqe
mov rcx, rax
mov qword [rbp + 0xb8], rax
shl rcx, 2
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x1800b1004
mov rax, rbx
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
movss xmm11, dword [0x1800ecab8]
sub rsp, rax
lea rbx, [rsp + 0xc0]
mov qword [rbp + 0xd0], rbx
test edi, edi
je 0x1800b10d8
mov eax, dword [rsi + 0x4c]
mov r9, r12
mov rcx, qword [rbp + 0x28]
xor edx, edx
mov dword [rsp + 0x40], eax
mov eax, dword [rsi + 0x20]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp + 0x20]
mov dword [rsp + 0x30], r8d
mov r8, r15
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r14d
call fcn.1800b2ec0
mov eax, dword [rsi + 0x4c]
mov rdx, r12
mov r9d, dword [rbp + 0x30]
mov r8, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x28]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp + 4]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r14d
call fcn.1800bbe58
mov r9, qword [rbp + 0x70]
mov r8d, dword [rbp + 0x10]
mov edx, dword [rbp + 0x30]
mov rcx, qword [rbp + 0x28]
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], rbx
call fcn.1800bf1a4
mov rdx, qword [rbp + 0xb8]
xor eax, eax
test rdx, rdx
jle 0x1800b10d8
movd xmm1, dword [rbp + 4]
lea ecx, [rax + 1]
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm11
movaps xmm0, xmm1
addss xmm0, dword [rbx + rax*4]
movss dword [rbx + rax*4], xmm0
add rax, rcx
cmp rax, rdx
jl 0x1800b10c3
mov eax, dword [rsi + 0x4c]
mov r9, r12
mov edx, dword [rbp + 0x1c]
mov r8, r15
mov rcx, qword [rbp + 0x28]
mov dword [rsp + 0x40], eax
mov eax, dword [rsi + 0x20]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp + 4]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp + 0x20]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r14d
call fcn.1800b2ec0
movss xmm0, dword [r12]
ucomiss xmm0, xmm0
jp 0x1800b1133
jne 0x1800b1133
mov eax, 1
cmp r14d, eax
je 0x1800b1151
movsxd rax, dword [rbp + 0x34]
movss xmm0, dword [r12 + rax*4]
ucomiss xmm0, xmm0
jp 0x1800b1133
je 0x1800b114c
mov r8d, 0x6c1
lea rdx, str..._.._.._third_party_opus_src_celt_celt_encoder.c
lea rcx, str.assertion_failed:__celt_isnan_freq_0_____C1___celt_isnan_freq_N___
call fcn.1800ab7c4
mov eax, 1
mov ecx, 2
cmp dword [rbp + 0x20], ecx
jne 0x1800b1169
cmp r14d, eax
lea eax, [rcx - 2]
cmove r13d, eax
mov dword [rbp + 0x48], r13d
mov eax, dword [rsi + 0x4c]
mov rdx, r12
mov r15d, dword [rbp + 0x30]
mov r9d, r15d
mov r8, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x28]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp + 4]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r14d
call fcn.1800bbe58
movsxd rdx, dword [rbp + 0x10]
xor eax, eax
mov r13, rdx
movss xmm8, dword [0x1800f1b18]
mov rcx, qword [rbp + 0x70]
mov qword [rbp + 0x68], rdx
cmp dword [rsi + 0x44], eax
je 0x1800b11e7
mov eax, 2
cmp rdx, rax
jle 0x1800b11e7
lea r8d, [rax - 1]
movss xmm1, dword [rcx + rax*4]
movss xmm0, dword [rcx]
mulss xmm0, dword [0x1800eca2c]
minss xmm1, xmm0
maxss xmm1, xmm8
movss dword [rcx + rax*4], xmm1
add rax, r8
cmp rax, r13
jl 0x1800b11c0
mov rax, qword [rbp + 0x98]
mov r9, rcx
mov rcx, qword [rbp + 0x28]
mov r8d, edx
mov edx, r15d
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], rax
call fcn.1800bf1a4
mov rcx, qword [rbp + 0xb8]
shl rcx, 2
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x1800b1228
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
sub rsp, rax
shl r13, 2
mov r8, r13
xor edx, edx
lea r15, [rsp + 0xc0]
mov rcx, r15
mov qword [rbp + 0x78], r15
call fcn.1800e3436
movsxd r8, dword [rbp + 0x3c]
xor r11d, r11d
mov r9d, dword [rbp + 0xc]
movss xmm9, dword [0x1800eca94]
movss xmm6, dword [0x1800f0dcc]
mov qword [rbp + 0x90], r8
test r9d, r9d
jne 0x1800b150d
mov r15, qword [rsi + 0xf0]
test r15, r15
je 0x1800b1509
cmp dword [rsi + 0x44], r11d
jne 0x1800b1509
mov ebx, dword [rsi + 0x60]
lea eax, [r9 + 2]
cmp ebx, eax
movaps xmm15, xmm10
movaps xmm13, xmm10
mov r12d, r11d
cmovl ebx, eax
test r14d, r14d
jle 0x1800b1370
movss xmm3, dword [0x1800ecb90]
mov r14, r8
mov rsi, qword [rbp + 0xe8]
mov r10d, r11d
mov r11d, dword [rbp]
shl r14, 2
xor eax, eax
lea ecx, [rax + 1]
test ebx, ebx
jle 0x1800b1358
mov edi, ecx
mov r9d, ebx
mov rax, rsi
lea r8, [r15 + r10]
sub edi, ebx
mov esi, 2
movss xmm2, dword [r8]
minss xmm2, xmm9
comiss xmm2, xmm3
ja 0x1800b1302
movaps xmm2, xmm3
comiss xmm2, xmm10
jbe 0x1800b130d
mulss xmm2, xmm11
lea rdx, [rax + 2]
movd xmm1, edi
movsx ecx, word [rdx]
add edi, esi
movsx eax, word [rax]
add r8, 4
sub ecx, eax
mov rax, rdx
add r12d, ecx
cvtdq2ps xmm1, xmm1
movd xmm0, ecx
mov ecx, 1
mulss xmm1, xmm2
cvtdq2ps xmm0, xmm0
addss xmm13, xmm1
mulss xmm0, xmm2
addss xmm15, xmm0
sub r9, rcx
jne 0x1800b12f0
mov rsi, qword [rbp + 0xe8]
xor eax, eax
add r10, r14
sub r11, rcx
jne 0x1800b12d9
mov rsi, qword [rbp + 0x100]
test r12d, r12d
jg 0x1800b138c
mov r8d, 0x6ea
lea rdx, str..._.._.._third_party_opus_src_celt_celt_encoder.c
lea rcx, str.assertion_failed:_count_0
call fcn.1800ab7c4
xor r11d, r11d
mulss xmm13, dword [0x1800f0e58]
lea ecx, [rbx - 1]
mov r10d, dword [rbp]
lea eax, [rbx + 1]
xorps xmm0, xmm0
imul ecx, eax
cvtsi2ss xmm0, r12d
imul ecx, ebx
divss xmm15, xmm0
imul ecx, r10d
xorps xmm0, xmm0
addss xmm15, xmm6
cvtsi2ss xmm0, ecx
divss xmm13, xmm0
movss xmm0, dword [0x1800f1e84]
mulss xmm13, xmm11
minss xmm13, dword [0x1800f1e00]
comiss xmm13, xmm0
ja 0x1800b13e7
movaps xmm13, xmm0
mov rcx, qword [rbp + 0xe8]
mov edi, r11d
movsxd r9, ebx
mov ebx, 1
movsx eax, word [rcx + r9*2]
lea r14d, [rbx + 1]
cdq
sub eax, edx
lea rdx, [rcx + 2]
sar eax, 1
movsx ecx, word [rdx]
cmp ecx, eax
jge 0x1800b1419
add edi, ebx
add rdx, r14
jmp 0x1800b140b
mov r15, qword [rbp + 0x78]
mov edx, r11d
test r9, r9
jle 0x1800b14b4
mov rax, qword [rsi + 0xf0]
neg edi
mov r11, qword [rbp + 0x90]
mov rcx, r15
sub rcx, rax
mov r8, r9
movss xmm0, dword [rax]
movd xmm1, edi
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm13
addss xmm1, xmm15
cmp r10d, r14d
jne 0x1800b1462
maxss xmm0, dword [rax + r11*4]
minss xmm0, xmm10
subss xmm0, xmm1
comiss xmm0, xmm9
jbe 0x1800b147d
subss xmm0, xmm9
add edx, ebx
movss dword [rcx + rax], xmm0
add edi, ebx
add rax, 4
sub r8, rbx
jne 0x1800b1442
cmp edx, 3
jl 0x1800b14b1
addss xmm15, xmm9
comiss xmm15, xmm10
jbe 0x1800b14e0
mov r8, r9
xor edx, edx
shl r8, 2
mov rcx, r15
movaps xmm15, xmm10
movaps xmm13, xmm10
call fcn.1800e3436
xor r11d, r11d
mulss xmm13, dword [0x1800f1e74]
addss xmm15, xmm6
mov edi, dword [rbp + 0x54]
mov r12, qword [rbp + 0xd8]
mov rbx, qword [rbp + 0xd0]
mov r8, qword [rbp + 0x90]
mov r9d, dword [rbp + 0xc]
jmp 0x1800b150d
xor r11d, r11d
mov eax, r11d
movss xmm1, dword [r15 + rax*4]
movaps xmm0, xmm10
subss xmm1, xmm9
maxss xmm0, xmm1
movss dword [r15 + rax*4], xmm0
add rax, rbx
cmp rax, r9
jl 0x1800b14e6
jmp 0x1800b14b4
mov r15, qword [rbp + 0x78]
mov r14d, dword [rsi + 0x44]
test r14d, r14d
jne 0x1800b15e7
movss xmm1, dword [0x1800f1e9c]
cmp dword [rbp + 0x1c], r11d
je 0x1800b1537
movd xmm2, dword [rbp + 4]
cvtdq2ps xmm2, xmm2
mulss xmm2, xmm11
jmp 0x1800b153b
movaps xmm2, xmm10
mov rdx, qword [rbp + 0x68]
movsxd rax, r9d
cmp rax, rdx
jge 0x1800b1590
mov rcx, qword [rbp + 0x98]
sub rdx, rax
mov r10d, 1
lea rcx, [rcx + rax*4]
mov eax, dword [rbp]
movss xmm0, dword [rcx]
subss xmm1, xmm12
subss xmm0, xmm2
maxss xmm1, xmm0
cmp eax, 2
jne 0x1800b1582
movss xmm0, dword [rcx + r8*4]
subss xmm0, xmm2
maxss xmm1, xmm0
add rcx, 4
addss xmm10, xmm1
sub rdx, r10
jne 0x1800b155e
mov eax, dword [rbp + 0x10]
movss xmm1, dword [rsi + 0xf8]
sub eax, r9d
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm10, xmm0
movss xmm0, dword [0x1800f1e94]
subss xmm10, xmm1
maxss xmm0, xmm10
movss xmm10, dword [0x1800ecb18]
comiss xmm0, xmm10
ja 0x1800b15cf
movaps xmm10, xmm0
movaps xmm0, xmm10
mulss xmm0, dword [0x1800f0d58]
addss xmm0, xmm1
movss dword [rsi + 0xf8], xmm0
test edi, edi
jne 0x1800b1608
mov r8, qword [rbp + 0xb8]
mov rcx, rbx
mov rdx, qword [rbp + 0x98]
shl r8, 2
call sub.VCRUNTIME140.dll_memcpy
xor r11d, r11d
cmp dword [rbp + 4], r11d
jle 0x1800b179f
mov r9, qword [rbp + 0x298]
mov edx, dword [r9 + 0x20]
mov ebx, edx
mov r8d, dword [r9 + 0x18]
mov edi, r8d
bsr ecx, edx
mov eax, r8d
sub eax, ecx
mov ecx, dword [rbp + 8]
add eax, 2
cmp eax, dword [rbp + 0x38]
jg 0x1800b177e
test ecx, ecx
jne 0x1800b177e
cmp dword [rsi + 0x1c], 5
jl 0x1800b177e
test r14d, r14d
jne 0x1800b177e
mov eax, dword [rbp + 0xc]
test eax, eax
jne 0x1800b177e
mov ecx, dword [rbp + 0x10]
mov r9d, eax
mov r14d, dword [rbp]
mov r8d, dword [rbp + 0x3c]
mov rdx, qword [rbp + 0xa0]
mov dword [rsp + 0x28], r14d
mov dword [rsp + 0x20], ecx
mov rcx, qword [rbp + 0x98]
call fcn.1800b4118
test eax, eax
je 0x1800b1774
mov eax, dword [rsi + 0x4c]
mov r9, r12
mov ecx, dword [rbp + 0x40]
mov edx, ecx
mov ebx, dword [rbp + 4]
mov r8, qword [rbp + 0x88]
mov dword [rsp + 0x40], eax
mov eax, dword [rsi + 0x20]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp + 0x20]
mov dword [rsp + 0x30], ebx
mov dword [rbp + 0x1c], ecx
mov rcx, qword [rbp + 0x28]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r14d
mov dword [rbp + 8], 1
call fcn.1800b2ec0
mov eax, dword [rsi + 0x4c]
mov rdx, r12
mov r9d, dword [rbp + 0x30]
mov r8, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x28]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], r14d
call fcn.1800bbe58
mov rax, qword [rbp + 0x98]
mov r9, qword [rbp + 0x70]
mov r8d, dword [rbp + 0x10]
mov edx, dword [rbp + 0x30]
mov rcx, qword [rbp + 0x28]
mov dword [rsp + 0x28], r14d
mov qword [rsp + 0x20], rax
call fcn.1800bf1a4
mov rdx, qword [rbp + 0xb8]
xor r11d, r11d
test rdx, rdx
jle 0x1800b175f
mov rcx, qword [rbp + 0xd0]
lea edi, [r11 + 1]
movd xmm1, ebx
mov eax, r11d
cvtdq2ps xmm1, xmm1
mulss xmm1, xmm11
movaps xmm0, xmm1
addss xmm0, dword [rcx + rax*4]
movss dword [rcx + rax*4], xmm0
add rax, rdi
cmp rax, rdx
jl 0x1800b174a
mov r9, qword [rbp + 0x298]
movaps xmm14, xmm6
mov ebx, dword [r9 + 0x20]
mov edi, dword [r9 + 0x18]
jmp 0x1800b177b
mov r9, qword [rbp + 0x298]
mov ecx, dword [rbp + 8]
bsr eax, ebx
mov ebx, 2
sub edi, eax
add edi, ebx
cmp edi, dword [rbp + 0x38]
jg 0x1800b17a4
mov edx, ecx
lea r8d, [rbx + 1]
mov rcx, r9
call fcn.1800b5454
jmp 0x1800b17a4
mov ebx, 2
mov eax, dword [rbp + 0x34]
mov edx, dword [rbp]
imul eax, edx
movsxd rcx, eax
shl rcx, 2
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x1800b17c7
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
mov ecx, dword [rbp + 0x40]
sub rsp, rax
mov r9, qword [rbp + 0x70]
mov dword [rsp + 0x30], ecx
lea rax, [rsp + 0xc0]
mov rcx, qword [rbp + 0x28]
mov r8, rax
mov dword [rsp + 0x28], edx
mov edx, dword [rbp + 0x30]
mov dword [rsp + 0x20], edx
mov rdx, r12
mov qword [rbp + 0x88], rax
call fcn.1800bcde4
mov r12d, dword [rbp]
mov r8d, dword [rbp + 0x14]
mov r9d, dword [rbp + 0xc]
imul eax, r12d, 0xf
cmp r8d, eax
jl 0x1800b1835
xor eax, eax
test r9d, r9d
jne 0x1800b1837
cmp dword [rsi + 0x1c], ebx
jl 0x1800b1837
mov ecx, dword [rsi + 0x44]
test ecx, ecx
jne 0x1800b1837
lea r14d, [r9 + 1]
jmp 0x1800b183d
xor eax, eax
mov ecx, dword [rsi + 0x44]
mov r14d, eax
mov rdi, qword [rbp + 0x90]
movabs rbx, 0xffffffffffffff0
shl rdi, 2
lea rax, [rdi + 0xf]
cmp rax, rdi
ja 0x1800b185e
mov rax, rbx
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
sub rsp, rax
lea rax, [rdi + 0xf]
lea rdx, [rsp + 0xc0]
mov qword [rbp + 0x120], rdx
cmp rax, rdi
ja 0x1800b1885
mov rax, rbx
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
sub rsp, rax
lea rax, [rdi + 0xf]
lea rbx, [rsp + 0xc0]
cmp rax, rdi
ja 0x1800b18ac
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
sub rsp, rax
lea rax, [rsp + 0xc0]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x98], rbx
mov qword [rbp + 0x130], rax
lea rax, [rsi + 0x7c]
mov qword [rsp + 0x90], rax
lea rax, [rbp + 0x54]
mov qword [rsp + 0x88], r15
mov dword [rsp + 0x80], ecx
mov rcx, qword [rbp + 0x98]
mov qword [rsp + 0x78], rax
mov eax, dword [rbp + 4]
mov dword [rsp + 0x70], r8d
mov r8d, dword [rbp + 0x3c]
mov dword [rsp + 0x68], eax
mov rax, qword [rbp + 0xe8]
mov qword [rsp + 0x60], rax
mov eax, dword [rsi + 0x38]
mov dword [rsp + 0x58], eax
mov eax, dword [rsi + 0x30]
mov dword [rsp + 0x50], eax
mov eax, dword [rbp + 8]
mov dword [rsp + 0x48], eax
mov rax, qword [rbp + 0x28]
mov rax, qword [rax + 0x40]
mov qword [rsp + 0x40], rax
mov eax, dword [rsi + 0x40]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp + 0x10]
mov qword [rsp + 0x30], rdx
mov rdx, qword [rbp + 0xd0]
mov dword [rsp + 0x28], r12d
mov dword [rsp + 0x20], eax
call fcn.1800b33d8
lea rax, [rdi + 0xf]
movaps xmm7, xmm0
cmp rax, rdi
ja 0x1800b197a
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
sub rsp, rax
xor edx, edx
lea r15, [rsp + 0xc0]
mov qword [rbp + 0x128], r15
test r14d, r14d
je 0x1800b1a27
movsxd r14, dword [rbp + 0x30]
mov ecx, 0x50
mov r8d, dword [rbp + 8]
mov eax, 0x5000
cdq
mov qword [rsp + 0x50], rbx
idiv dword [rbp + 0x14]
mov r9, r15
mov edx, r14d
add eax, 2
cmp eax, ecx
cmovl eax, ecx
mov ecx, dword [rbp + 0x48]
mov dword [rsp + 0x48], ecx
mov ecx, dword [rbp + 4]
movss dword [rsp + 0x40], xmm14
mov dword [rsp + 0x38], ecx
mov ecx, dword [rbp + 0x34]
mov dword [rsp + 0x30], ecx
mov rcx, qword [rbp + 0x88]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rbp + 0x28]
mov dword [rsp + 0x20], eax
call fcn.1800b48e0
mov rbx, qword [rbp + 0x68]
mov rdx, r14
mov dword [rbp + 0x48], eax
cmp r14, rbx
jge 0x1800b1a8a
lea rdi, [r15 + r14*4]
mov eax, 1
mov ecx, dword [rdi - 4]
mov dword [r15 + rdx*4], ecx
add rdx, rax
cmp rdx, rbx
jl 0x1800b1a16
jmp 0x1800b1a8a
cmp dword [rbp + 0xc], edx
je 0x1800b1a6e
cmp dword [rbp + 0x44], edx
je 0x1800b1a3d
cmp dword [rbp + 0x10], edx
jle 0x1800b1a83
mov eax, 1
jmp 0x1800b1a77
cmp dword [rbp + 0x14], 0xf
jge 0x1800b1a6e
mov eax, 2
cmp dword [rsi + 0xbc], eax
je 0x1800b1a6e
cmp dword [rbp + 0x10], edx
jle 0x1800b1a64
and r13, 0xfffffffffffffffc
mov rcx, r15
mov r8, r13
call fcn.1800e3436
mov r13d, dword [rbp + 8]
mov dword [rbp + 0x48], r13d
jmp 0x1800b1a86
cmp dword [rbp + 0x10], edx
jle 0x1800b1a83
movsxd rax, dword [rbp + 8]
shr r13, 2
mov rdi, r15
mov rcx, r13
rep stosd dword [rdi], eax
mov dword [rbp + 0x48], edx
mov rbx, qword [rbp + 0x68]
mov rcx, qword [rbp + 0xb8]
shl rcx, 2
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x1800b1aa8
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
movsxd rsi, dword [rbp + 0xc]
sub rsp, rax
movsd xmm6, qword [0x1800f1b60]
xor eax, eax
movss xmm4, dword [0x1800ecb00]
mov r10d, eax
mov r13, qword [rbp + 0x98]
mov r9d, eax
mov r15, qword [rbp + 0xa0]
lea r11, [rsp + 0xc0]
mov eax, dword [rbp + 0x3c]
mov ecx, 1
mov r14, qword [rbp + 0x138]
mov qword [rbp + 0xd8], r11
mov qword [rbp + 0x78], rsi
cmp rsi, rbx
jge 0x1800b1b73
movsxd rcx, r9d
mov rdi, r15
add rcx, rsi
mov r8, r14
sub rdi, r14
sub r8, r13
mov r12d, 1
lea rax, [rcx*4]
mov rcx, rbx
add rax, r13
sub rcx, rsi
movss xmm3, dword [rax]
lea rdx, [r8 + rax]
movaps xmm0, xmm3
subss xmm0, dword [rdx + rdi]
cvtps2pd xmm1, xmm0
andps xmm1, xmm6
cvtpd2ps xmm2, xmm1
comiss xmm4, xmm2
jbe 0x1800b1b5e
movss xmm0, dword [rdx]
mulss xmm0, xmm9
subss xmm3, xmm0
movss dword [rax], xmm3
add rax, 4
sub rcx, r12
jne 0x1800b1b2e
mov r12d, dword [rbp]
mov ecx, 1
mov eax, dword [rbp + 0x3c]
add r10d, ecx
add r9d, eax
cmp r10d, r12d
jl 0x1800b1b00
mov rsi, qword [rbp + 0x100]
xor eax, eax
mov r15d, dword [rbp + 4]
mov edx, eax
mov rdi, qword [rbp + 0x298]
mov r9d, dword [rbp + 0x30]
mov eax, dword [rsi + 0x44]
lea rcx, [rsi + 0x58]
cmp dword [rsi + 0x1c], 4
mov r8d, dword [rbp + 0x10]
mov dword [rsp + 0x80], eax
setge dl
mov eax, dword [rsi + 0x3c]
mov dword [rsp + 0x78], eax
mov eax, dword [rsi + 0x10]
mov dword [rsp + 0x70], edx
mov edx, dword [rbp + 0xc]
mov qword [rsp + 0x68], rcx
mov rcx, qword [rbp + 0x28]
mov dword [rsp + 0x60], eax
mov eax, dword [rbp + 0x50]
mov dword [rsp + 0x58], eax
mov eax, dword [rbp + 0x38]
mov dword [rsp + 0x50], r15d
mov dword [rsp + 0x48], r12d
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], r11
mov dword [rsp + 0x30], eax
mov rax, qword [rbp + 0xa0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
call fcn.1800bf294
bsr eax, dword [rdi + 0x20]
mov ecx, dword [rdi + 0x18]
mov r14d, dword [rdi + 8]
sub ecx, eax
mov r9d, dword [rbp + 8]
mov eax, r9d
mov r13d, dword [rbp + 0x48]
shl r14d, 3
neg eax
lea edx, [rcx - 1]
sbb r8d, r8d
xor edi, edi
and r8d, 0xfffffffe
add r8d, 4
test r15d, r15d
jle 0x1800b1c50
lea eax, [r8 + rcx]
cmp eax, r14d
ja 0x1800b1c50
lea r10d, [rdi + 1]
mov r15d, r10d
mov dword [rbp + 0x44], r10d
jmp 0x1800b1c5c
mov r15d, edi
mov dword [rbp + 0x44], edi
mov r10d, 1
mov r12d, edi
mov ecx, edi
mov rdi, qword [rbp + 0x78]
sub r14d, r15d
cmp rdi, rbx
jge 0x1800b1cde
mov rsi, qword [rbp + 0x128]
mov eax, r9d
mov r15, qword [rbp + 0x298]
neg eax
mov r13, qword [rbp + 0x68]
sbb ebx, ebx
lea eax, [r8 + rdx]
cmp eax, r14d
ja 0x1800b1cb8
xor ecx, dword [rsi + rdi*4]
mov edx, ecx
mov rcx, r15
call fcn.1800b5454
bsr eax, dword [r15 + 0x20]
mov edx, dword [r15 + 0x18]
mov r10d, 1
mov ecx, dword [rsi + rdi*4]
sub edx, eax
sub edx, r10d
or r12d, ecx
jmp 0x1800b1cbb
mov dword [rsi + rdi*4], ecx
add rdi, r10
lea r8d, [rbx + 5]
cmp rdi, r13
jl 0x1800b1c86
mov rsi, qword [rbp + 0x100]
mov r15d, dword [rbp + 0x44]
mov r13d, dword [rbp + 0x48]
mov rdi, qword [rbp + 0x78]
mov r9d, dword [rbp + 8]
movsxd rbx, dword [rbp + 4]
lea r8, [0x1800f17c8]
xor r14d, r14d
test r15d, r15d
je 0x1800b1d1e
lea eax, [r12 + r9*4]
movsxd rcx, eax
lea rdx, [rcx + rbx*8]
mov al, byte [rdx + r8 + 2]
cmp byte [rdx + r8], al
je 0x1800b1d1e
mov r15, qword [rbp + 0x298]
mov r8d, r10d
mov rcx, r15
mov edx, r13d
call fcn.1800b5454
jmp 0x1800b1d28
mov r15, qword [rbp + 0x298]
mov r13d, r14d
mov r10, qword [rbp + 0x68]
mov r11d, dword [rbp + 8]
cmp rdi, r10
jge 0x1800b1d83
mov r9, qword [rbp + 0x128]
lea eax, [r11*2]
add eax, r13d
mov r8, rbx
mov rdx, rdi
shl r8, 3
lea rbx, [0x1800f17c8]
mov r14d, 1
lea edi, [rax + rax]
mov eax, dword [r9 + rdx*4]
add eax, edi
cdqe
add rax, r8
movsx eax, byte [rax + rbx]
mov dword [r9 + rdx*4], eax
add rdx, r14
cmp rdx, r10
jl 0x1800b1d61
mov rdi, qword [rbp + 0x78]
xor r14d, r14d
bsr eax, dword [r15 + 0x20]
mov ecx, dword [r15 + 0x18]
mov ebx, dword [rbp + 0x38]
sub ecx, eax
mov eax, 3
add ecx, eax
cmp ecx, ebx
jg 0x1800b1deb
cmp dword [rsi + 0x44], r14d
je 0x1800b1db3
lea r12d, [rax - 1]
mov dword [rsi + 0x68], r14d
mov dword [rsi + 0x54], r12d
mov eax, r12d
jmp 0x1800b1dd4
cmp dword [rbp + 0xc], r14d
je 0x1800b214b
cmp dword [rsi + 0x1c], r14d
je 0x1800b21ce
test r11d, r11d
je 0x1800b1dd1
mov eax, 2
mov dword [rsi + 0x54], eax
mov r9d, 5
lea r8, [0x1800f1b7c]
mov edx, eax
mov rcx, r15
call fcn.1800b5788
cmp dword [rsi + 0x44], r14d
je 0x1800b1e13
mov eax, 0x55555556
imul dword [rbp + 0x14]
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 8
cmp edx, eax
cmovg edx, eax
mov rax, qword [rbp + 0x120]
mov dword [rax], edx
mov r13, qword [rbp + 0x90]
shl r13, 2
mov qword [rbp + 0x48], r13
lea rax, [r13 + 0xf]
cmp rax, r13
ja 0x1800b1e35
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
mov r9d, dword [rbp]
sub rsp, rax
mov r8d, dword [rbp + 4]
mov rcx, qword [rbp + 0x28]
lea r14, [rsp + 0xc0]
mov rdx, r14
mov qword [rbp + 0x130], r14
call fcn.1800abbb0
xor eax, eax
shl ebx, 3
mov rcx, r15
mov dword [rbp + 0x14], eax
mov r12d, eax
mov dword [rbp + 0x44], ebx
call fcn.1800b9e30
mov r11, qword [rbp + 0x68]
mov r15d, eax
mov dword [rbp + 0x40], eax
cmp rdi, r11
jge 0x1800b1fc0
mov rcx, qword [rbp + 0x120]
mov rsi, r14
mov rax, qword [rbp + 0x78]
sub rsi, rcx
mov r9d, dword [rbp + 0x40]
mov r8d, 0x30
mov qword [rbp + 0xd0], rdi
mov r10d, r12d
lea r15, [rcx + rax*4]
mov rax, qword [rbp + 0xe8]
mov ecx, dword [rbp + 4]
movsx edx, word [rax + rdi*2 + 2]
movsx eax, word [rax + rdi*2]
sub edx, eax
imul edx, dword [rbp]
shl edx, cl
mov ecx, dword [rbp + 0xc8]
cmp edx, r8d
mov r12d, edx
mov eax, edx
cmovl r12d, r8d
shl eax, 3
cmp eax, r12d
mov r8d, ecx
cmovl r12d, eax
xor edx, edx
sub ebx, r10d
lea eax, [r9 + rcx*8]
mov r13d, edx
mov r14d, edx
cmp eax, ebx
jge 0x1800b1f8a
cmp r13d, dword [rsi + r15]
jge 0x1800b1f58
mov edi, dword [r15]
cmp r14d, edi
mov rcx, qword [rbp + 0x298]
setl dl
call fcn.1800b5454
mov rcx, qword [rbp + 0x298]
call fcn.1800b9e30
mov r9d, eax
cmp r14d, edi
jge 0x1800b1f58
add dword [rbp + 0x14], r12d
mov eax, 1
add r14d, eax
mov r8d, eax
lea eax, [r9 + 8]
add r13d, r12d
sub ebx, r12d
mov edx, 0
cmp eax, ebx
jl 0x1800b1f07
mov r10d, dword [rbp + 0x14]
mov r11, qword [rbp + 0x68]
mov dword [rbp + 0x40], r9d
test r14d, r14d
je 0x1800b1f83
mov eax, dword [rbp + 0xc8]
mov edi, 2
dec eax
cmp eax, edi
mov ecx, eax
cmovl ecx, edi
mov dword [rbp + 0xc8], ecx
mov rdi, qword [rbp + 0xd0]
mov ebx, dword [rbp + 0x44]
inc rdi
mov dword [r15], r13d
mov r8d, 0x30
add r15, 4
mov qword [rbp + 0xd0], rdi
cmp rdi, r11
jl 0x1800b1eb6
mov rsi, qword [rbp + 0x100]
mov r15d, dword [rbp + 0x40]
mov r12d, dword [rbp + 0x14]
mov r13, qword [rbp + 0x48]
mov r8d, dword [rbp]
mov ecx, 0xd
mov r14d, dword [rbp + 4]
lea eax, [rcx - 0xb]
cmp r8d, eax
jne 0x1800b21e9
test r14d, r14d
je 0x1800b20e8
mov rax, qword [rbp + 0x28]
lea r8d, [rcx - 0xc]
mov r13, qword [rbp + 0x88]
movaps xmm4, xmm8
movsxd r11, dword [rbp + 0x34]
mov r9d, ecx
mov r10, qword [rax + 0x20]
mov rdi, r10
movsx eax, word [rdi]
mov ecx, r14d
shl eax, cl
lea rdi, [rdi + 2]
movsxd rdx, eax
movsx eax, word [rdi]
shl eax, cl
movsxd rcx, eax
cmp rdx, rcx
jge 0x1800b2094
lea rax, [rdx*4]
add rax, r13
sub rcx, rdx
mov edx, 1
movss xmm3, dword [rax + r11*4]
movss xmm1, dword [rax]
cvtps2pd xmm0, xmm3
cvtps2pd xmm1, xmm1
andps xmm0, xmm6
cvtpd2ps xmm2, xmm0
andps xmm1, xmm6
cvtpd2ps xmm0, xmm1
addss xmm2, xmm0
movss xmm0, dword [rax]
subss xmm0, xmm3
addss xmm3, dword [rax]
add rax, 4
addss xmm2, xmm8
cvtps2pd xmm1, xmm0
movaps xmm8, xmm2
andps xmm1, xmm6
cvtps2pd xmm0, xmm3
cvtpd2ps xmm2, xmm1
andps xmm0, xmm6
cvtpd2ps xmm0, xmm0
addss xmm2, xmm0
addss xmm2, xmm4
movaps xmm4, xmm2
sub rcx, rdx
jne 0x1800b2032
mov r8, rdx
sub r9, r8
jne 0x1800b2003
movsx edx, word [r10 + 0x1a]
lea eax, [r9 + 5]
mulss xmm4, dword [0x1800f1e20]
lea ecx, [r14 + 1]
mov r13, qword [rbp + 0x48]
shl edx, cl
lea ecx, [rax + 8]
cmp r14d, r8d
cmovg eax, ecx
add eax, edx
movd xmm0, edx
cvtdq2ps xmm0, xmm0
movd xmm1, eax
xor eax, eax
cvtdq2ps xmm1, xmm1
mulss xmm0, xmm8
mulss xmm1, xmm4
comiss xmm1, xmm0
seta al
mov dword [rbp + 0xac], eax
mov eax, 0x10624dd3
lea rdi, [rsi + 0xec]
imul dword [rbp + 0x60]
mov r9d, 0x15
lea r8, [0x1800f1bf0]
sar edx, 6
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, dword [rdi]
mov dword [rsp + 0x20], eax
movd xmm0, edx
lea rdx, [0x1800f1b90]
cvtdq2ps xmm0, xmm0
call fcn.1800bcb6c
mov r9d, dword [rbp + 0xc]
mov edx, eax
mov r10d, dword [rbp + 0x10]
cmp r9d, eax
mov ecx, r9d
cmovle ecx, eax
cmp r10d, ecx
jge 0x1800b21da
mov edx, r10d
jmp 0x1800b21e1
cmp dword [rbp + 0x1c], r14d
jne 0x1800b21c4
cmp dword [rsi + 0x1c], eax
jl 0x1800b21c4
mov r9d, dword [rbp]
lea eax, [r9 + r9*4]
add eax, eax
cmp dword [rbp + 0x50], eax
jl 0x1800b21c4
mov rdx, qword [rbp + 0x130]
lea rax, [rsi + 0x64]
cmp dword [rbp + 0xc4], r14d
lea r8, [rsi + 0x5c]
mov qword [rsp + 0x50], rdx
mov ecx, r14d
mov edx, dword [rbp + 0x40]
setne cl
mov dword [rsp + 0x48], edx
mov edx, dword [rbp + 0x30]
mov dword [rsp + 0x40], r9d
mov r9d, dword [rsi + 0x54]
mov dword [rsp + 0x38], edx
mov rdx, qword [rbp + 0x88]
mov dword [rsp + 0x30], ecx
lea rcx, [rsi + 0x68]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rbp + 0x28]
mov qword [rsp + 0x20], rax
call fcn.1800bed44
jmp 0x1800b1dd1
cmp dword [rsi + 0x1c], r14d
jne 0x1800b1dcc
mov dword [rsi + 0x54], r14d
mov eax, r14d
jmp 0x1800b1dd4
cmp r9d, edx
cmovg edx, r9d
mov r8d, dword [rbp]
mov dword [rdi], edx
jmp 0x1800b21fa
mov r9d, dword [rbp + 0xc]
lea rdi, [rsi + 0xec]
mov edx, dword [rdi]
mov r10d, dword [rbp + 0x10]
sub ebx, r12d
lea eax, [r15 + 0x30]
cmp eax, ebx
jg 0x1800b22b3
xor eax, eax
test r9d, r9d
jg 0x1800b2277
cmp dword [rsi + 0x44], eax
jne 0x1800b2277
mov eax, dword [rsi + 0x4c]
lea rcx, [rsi + 0xe8]
mov dword [rsp + 0x68], eax
mov r9d, r10d
mov eax, dword [rbp + 0x60]
mov dword [rsp + 0x60], eax
lea rax, [rsi + 0x7c]
movss dword [rsp + 0x58], xmm13
mov dword [rsp + 0x50], edx
mov rdx, qword [rbp + 0x88]
movss dword [rsp + 0x48], xmm14
mov qword [rsp + 0x40], rcx
mov rcx, qword [rbp + 0x28]
mov qword [rsp + 0x38], rax
mov eax, dword [rbp + 0x34]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], r8d
mov r8, qword [rbp + 0x98]
mov dword [rsp + 0x20], r14d
call fcn.1800b021c
jmp 0x1800b2282
mov dword [rsi + 0xe8], eax
mov eax, 5
mov r14, qword [rbp + 0x298]
lea r8, [0x1800f1b70]
mov rcx, r14
mov dword [rbp + 0xc0], eax
mov r9d, 7
mov edx, eax
call fcn.1800b5788
mov rcx, r14
call fcn.1800b9e30
mov r15d, eax
jmp 0x1800b22ba
mov r14, qword [rbp + 0x298]
mov edx, dword [rbp + 0x5c]
test edx, edx
jle 0x1800b254e
mov ecx, dword [rbp + 0xa8]
mov eax, 0x4fb
mov r10, qword [rbp + 0x28]
mov r9d, dword [rbp + 4]
mov r11d, dword [rbp + 0xc]
mov r8d, dword [rbp]
mov r14d, dword [r10 + 0x28]
sar eax, cl
sub r14d, r9d
cmp dword [rbp + 0x18], eax
cmovl eax, dword [rbp + 0x18]
xor ecx, ecx
mov dword [rbp + 0xc4], eax
test r11d, r11d
jne 0x1800b230e
lea eax, [r8 + r8*4]
shl eax, 6
sub edx, eax
sub edx, 0xa0
jmp 0x1800b231f
lea ecx, [r8 + r8*8]
shl ecx, 3
sub edx, ecx
xor ecx, ecx
add edx, 0xffffffe0
cmovs edx, ecx
mov ebx, dword [rsi + 0x38]
test ebx, ebx
je 0x1800b2335
mov eax, dword [rsi + 0xdc]
mov ecx, r14d
sar eax, cl
add edx, eax
xor ecx, ecx
test r11d, r11d
jne 0x1800b23c7
cmp qword [rsi + 0xf0], rcx
mov eax, ecx
movss xmm0, dword [rsi + 0xe8]
mov rcx, r10
movss dword [rsp + 0x88], xmm10
setne al
movss dword [rsp + 0x80], xmm15
mov dword [rsp + 0x78], eax
mov eax, dword [rsi + 0x44]
mov dword [rsp + 0x70], eax
mov eax, dword [rbp + 0xf0]
movss dword [rsp + 0x68], xmm7
mov dword [rsp + 0x60], eax
mov eax, dword [rbp + 0x54]
movss dword [rsp + 0x58], xmm14
mov dword [rsp + 0x50], eax
mov eax, dword [rdi]
movss dword [rsp + 0x48], xmm0
mov dword [rsp + 0x40], ebx
mov dword [rsp + 0x38], eax
mov eax, dword [rsi + 0x60]
mov dword [rsp + 0x30], r8d
mov r8d, edx
mov dword [rsp + 0x28], eax
lea rdx, [rsi + 0x7c]
mov eax, dword [rbp + 0x60]
mov dword [rsp + 0x20], eax
call fcn.1800b30e8
mov r11d, dword [rbp + 0xc]
jmp 0x1800b241a
mov edi, dword [rsi + 0xc0]
mov ecx, dword [rbp + 0xa8]
cmp edi, 0x64
jge 0x1800b23e4
mov eax, 0x60
sar eax, cl
add edx, eax
cmp edi, 0x64
jle 0x1800b23ef
mov eax, 0x90
sar eax, cl
sub edx, eax
movaps xmm0, xmm14
subss xmm0, xmm9
mulss xmm0, dword [0x1800f1e7c]
cvttss2si eax, xmm0
add edx, eax
comiss xmm14, dword [0x1800f1e1c]
jbe 0x1800b241c
mov eax, 0x190
cmp edx, eax
cmovg eax, edx
mov edx, eax
lea ecx, [r15 + 0x3f]
add edx, r15d
add ecx, r12d
mov eax, 2
sar ecx, 6
xor r15d, r15d
add ecx, eax
test r11d, r11d
je 0x1800b2454
mov eax, dword [rbp + 0xe0]
add eax, 0x167
add eax, r12d
sar eax, 6
cmp ecx, eax
cmovg eax, ecx
mov ecx, eax
lea eax, [r15 + 2]
mov r11d, dword [rbp + 0xc4]
lea r8d, [rdx + 0x20]
mov r9d, dword [rbp + 0x5c]
mov r10d, dword [rbp + 0x64]
sar r8d, 6
cmp ecx, r8d
cmovg r8d, ecx
cmp r11d, r8d
cmovl r8d, r11d
sub edx, r9d
mov ecx, r8d
shl ecx, 6
test r10d, r10d
je 0x1800b248f
mov r8d, eax
mov ecx, 0x80
mov eax, dword [rsi + 0xe0]
test r10d, r10d
mov edi, r15d
cmove edi, edx
cmp eax, 0x3ca
jge 0x1800b24be
inc eax
mov dword [rsi + 0xe0], eax
add eax, 0x14
movd xmm0, eax
cvtdq2ps xmm0, xmm0
divss xmm12, xmm0
jmp 0x1800b24c7
movss xmm12, dword [0x1800eca30]
test ebx, ebx
je 0x1800b2531
sub ecx, r9d
add dword [rsi + 0xd4], ecx
test ebx, ebx
je 0x1800b2531
mov edx, dword [rsi + 0xd8]
mov ecx, r14d
mov eax, dword [rsi + 0xd4]
shl edi, cl
sub edi, edx
sub edi, dword [rsi + 0xdc]
movd xmm0, edi
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm12
cvttss2si ecx, xmm0
add ecx, edx
mov dword [rsi + 0xd8], ecx
neg ecx
mov dword [rsi + 0xdc], ecx
test eax, eax
jns 0x1800b2531
cdq
mov dword [rsi + 0xd4], r15d
and edx, 0x3f
add eax, edx
sar eax, 6
neg eax
test r10d, r10d
cmovne eax, r15d
add r8d, eax
mov r14, qword [rbp + 0x298]
cmp r11d, r8d
mov rcx, r14
cmovl r8d, r11d
mov edx, r8d
mov dword [rbp + 0x18], r8d
call fcn.1800b5908
lea rax, [r13 + 0xf]
movabs rdx, 0xffffffffffffff0
cmp rax, r13
ja 0x1800b2564
mov rax, rdx
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
sub rsp, rax
lea rax, [r13 + 0xf]
lea r15, [rsp + 0xc0]
cmp rax, r13
ja 0x1800b2584
mov rax, rdx
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
mov rcx, qword [rbp + 0x48]
sub rsp, rax
lea rax, [rcx + 0xf]
lea r13, [rsp + 0xc0]
cmp rax, rcx
ja 0x1800b25a8
mov rax, rdx
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
mov ebx, dword [rbp + 0x18]
sub rsp, rax
mov rcx, r14
shl ebx, 6
lea r12, [rsp + 0xc0]
call fcn.1800b9e30
mov edi, dword [rbp + 4]
mov ecx, ebx
sub ecx, eax
xor r9d, r9d
lea edx, [rcx - 1]
cmp dword [rbp + 8], r9d
je 0x1800b25f6
lea eax, [r9 + 2]
cmp edi, eax
jl 0x1800b25f6
lea eax, [rdi*8 + 0x10]
cmp ecx, eax
jle 0x1800b25f6
lea eax, [r9 + 8]
jmp 0x1800b25fc
mov eax, r9d
mov dword [rbp + 0x58], eax
mov r10d, dword [rbp + 0x10]
sub edx, eax
lea ecx, [r10 - 1]
cmp dword [rsi + 0x7c], r9d
je 0x1800b2666
mov ecx, dword [rbp]
mov r8d, dword [rbp + 0x60]
imul eax, ecx, 0x7d00
cmp r8d, eax
jge 0x1800b2625
mov ecx, 0xd
jmp 0x1800b265b
imul eax, ecx, 0xbb80
cmp r8d, eax
jge 0x1800b2637
mov ecx, 0x10
jmp 0x1800b265b
imul eax, ecx, 0xea60
cmp r8d, eax
jge 0x1800b2649
mov ecx, 0x12
jmp 0x1800b265b
imul eax, ecx, 0x13880
mov ecx, r9d
cmp r8d, eax
setge cl
add ecx, 0x13
mov eax, dword [rsi + 0x9c]
cmp eax, ecx
cmovg ecx, eax
mov eax, dword [rsi + 0x60]
mov r8d, 1
cmp dword [rsi + 0x44], r9d
mov r9, qword [rbp + 0x120]
cmovne ecx, r8d
mov dword [rsp + 0x90], ecx
mov rcx, qword [rbp + 0x28]
mov dword [rsp + 0x88], eax
mov eax, dword [rbp]
mov dword [rsp + 0x80], r8d
mov r8d, r10d
mov qword [rsp + 0x78], r14
mov dword [rsp + 0x70], edi
mov dword [rsp + 0x68], eax
lea rax, [rbp + 0x118]
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x50], r13
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0xac]
mov dword [rsp + 0x40], edx
mov edx, dword [rbp + 0xc]
mov qword [rsp + 0x38], rax
lea rax, [rsi + 0xec]
mov qword [rsp + 0x30], rax
mov eax, dword [rbp + 0xc0]
mov dword [rsp + 0x28], eax
mov rax, qword [rbp + 0x130]
mov qword [rsp + 0x20], rax
call fcn.1800bab0c
mov edx, dword [rsi + 0x60]
mov edi, eax
test edx, edx
je 0x1800b2722
lea eax, [rdx - 1]
mov ecx, edi
cmp eax, edi
cmovg ecx, eax
inc edx
cmp edx, ecx
jl 0x1800b2724
cmp eax, edi
mov edx, edi
cmovg edx, eax
jmp 0x1800b2724
mov edx, edi
mov eax, dword [rbp]
mov r9, qword [rbp + 0xa0]
mov r8d, dword [rbp + 0x10]
mov rcx, qword [rbp + 0x28]
mov dword [rsp + 0x38], eax
mov rax, qword [rbp + 0xd8]
mov qword [rsp + 0x30], r14
mov dword [rsi + 0x60], edx
mov edx, dword [rbp + 0xc]
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], rax
call fcn.1800bfdc8
mov rcx, qword [rbp + 0xb8]
lea rax, [rcx + 0xf]
cmp rax, rcx
ja 0x1800b2775
movabs rax, 0xffffffffffffff0
and rax, 0xfffffffffffffff0
call fcn.1800df0f0
mov r8, qword [rbp + 0x88]
lea r14, [rsi + 0x50]
sub rsp, rax
sub ebx, dword [rbp + 0x58]
movsxd rax, dword [rbp + 0x34]
xor ecx, ecx
lea rdx, [rsp + 0xc0]
lea rax, [r8 + rax*4]
lea r9d, [rcx + 2]
cmp dword [rbp], r9d
mov r9d, dword [rbp + 0x10]
cmove rcx, rax
mov eax, dword [rsi + 0x48]
mov dword [rsp + 0xb0], eax
mov eax, dword [rsi + 0x4c]
mov dword [rsp + 0xa8], eax
mov eax, dword [rsi + 0x1c]
mov dword [rsp + 0xa0], eax
mov eax, dword [rbp + 4]
mov qword [rsp + 0x98], r14
mov dword [rsp + 0x90], edi
mov rdi, qword [rbp + 0x298]
mov dword [rsp + 0x88], eax
mov eax, dword [rbp + 0x118]
mov qword [rsp + 0x80], rdi
mov dword [rsp + 0x78], eax
mov rax, qword [rbp + 0x128]
mov dword [rsp + 0x70], ebx
mov rbx, qword [rbp + 0x28]
mov qword [rsp + 0x68], rax
mov eax, dword [rsi + 0xec]
mov dword [rsp + 0x60], eax
mov eax, dword [rbp + 0xac]
mov dword [rsp + 0x58], eax
mov eax, dword [rsi + 0x54]
mov dword [rsp + 0x50], eax
mov eax, dword [rbp + 0x1c]
mov dword [rsp + 0x48], eax
mov rax, qword [rbp + 0x70]
mov qword [rsp + 0x40], r13
mov r13d, 1
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rdx
mov rdx, rbx
mov qword [rsp + 0x28], rcx
mov ecx, r13d
mov qword [rsp + 0x20], r8
mov r8d, dword [rbp + 0xc]
call fcn.1800bced8
xor eax, eax
cmp dword [rbp + 0x58], eax
jbe 0x1800b2887
mov edx, eax
mov r8d, r13d
lea eax, [r13 + 1]
mov rcx, rdi
cmp dword [rsi + 0x78], eax
setl dl
call fcn.1800b54bc
mov edx, dword [rbp]
mov rcx, rdi
mov eax, dword [rbp + 0x18]
mov r9, qword [rbp + 0xa0]
mov r8d, dword [rbp + 0x10]
bsr edi, dword [rcx + 0x20]
mov dword [rsp + 0x48], edx
mov edx, dword [rbp + 0xc]
inc edi
mov qword [rsp + 0x40], rcx
shl eax, 3
sub eax, dword [rcx + 0x18]
mov rcx, rbx
add eax, edi
mov dword [rsp + 0x38], eax
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], r15
mov r15, qword [rbp + 0xd8]
mov qword [rsp + 0x20], r15
call fcn.1800bfbec
mov r13, qword [rbp + 0x138]
xor edx, edx
mov r8, qword [rbp + 0x110]
mov rcx, r13
call fcn.1800e3436
movss xmm1, dword [0x1800ecb88]
xor r11d, r11d
mov rbx, qword [rbp + 0x78]
mov edi, r11d
mov eax, dword [rbp]
mov r8d, r11d
mov r12, qword [rbp + 0x68]
mov r9d, dword [rbp + 0x3c]
lea edx, [r11 + 1]
cmp rbx, r12
jge 0x1800b295f
movsxd rcx, r8d
mov rdx, r15
add rcx, rbx
sub rdx, r13
mov r10d, 1
lea rax, [rcx*4]
mov rcx, r12
add rax, r13
sub rcx, rbx
movaps xmm0, xmm11
minss xmm0, dword [rdx + rax]
comiss xmm1, xmm0
jbe 0x1800b294c
movaps xmm0, xmm1
movss dword [rax], xmm0
add rax, 4
sub rcx, r10
jne 0x1800b293b
mov eax, dword [rbp]
mov rdx, r10
add edi, edx
add r8d, r9d
cmp edi, eax
jl 0x1800b2913
mov r15, qword [rbp + 0xa0]
cmp dword [rbp + 0x64], r11d
je 0x1800b299c
cmp dword [rbp + 0x80], r11d
jle 0x1800b299c
mov rcx, qword [rbp + 0xb8]
mov rax, 0xffffffffc1e00000
shl rcx, 2
mov rdi, r15
shr rcx, 2
rep stosd dword [rdi], eax
mov eax, dword [rbp]
mov ecx, dword [rbp + 0xf4]
movss xmm0, dword [rbp + 0xb0]
mov dword [rsi + 0x6c], ecx
mov ecx, dword [rbp + 0xf8]
mov dword [rsi + 0x74], ecx
mov ecx, 2
movss dword [rsi + 0x70], xmm0
cmp dword [rbp + 0x20], ecx
jne 0x1800b29df
cmp eax, edx
jne 0x1800b29df
mov rax, qword [rbp + 0x48]
mov rdx, r15
mov r8, rax
lea rcx, [rax + r15]
call sub.VCRUNTIME140.dll_memcpy
xor r11d, r11d
cmp dword [rbp + 8], 0
jne 0x1800b2a0d
mov rdi, qword [rbp + 0x110]
mov r8, rdi
lea rdx, [rdi + r15]
lea rcx, [r15 + rdi*2]
call sub.VCRUNTIME140.dll_memcpy
mov r8, rdi
lea rcx, [rdi + r15]
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
jmp 0x1800b2a48
mov rdi, qword [rbp + 0x148]
test rdi, rdi
jle 0x1800b2a4b
mov rcx, qword [rbp + 0x140]
mov r11d, 1
mov rdx, qword [rbp + 0x110]
movss xmm0, dword [rcx]
mov rax, rcx
sub rax, rdx
minss xmm0, dword [rax]
movss dword [rcx], xmm0
add rcx, 4
sub rdi, r11
jne 0x1800b2a2d
xor r11d, r11d
mov r13, qword [rbp + 0x150]
mov r8d, r11d
mov rsi, qword [rbp + 0x140]
mov edx, r11d
mov r11, qword [rbp + 0x90]
xor r10d, r10d
test rbx, rbx
jle 0x1800b2aa6
movsxd rax, edx
mov rdi, rsi
mov r9, rbx
lea rcx, [rax*4]
mov rax, r15
sub rax, r13
add rcx, r13
sub rdi, r13
mov dword [rax + rcx], r10d
mov dword [rcx], 0xc1e00000
mov dword [rdi + rcx], 0xc1e00000
lea rcx, [rcx + 4]
sub r9, 1
jne 0x1800b2a8b
cmp r12, r11
jge 0x1800b2aea
movsxd rcx, edx
mov rdi, r15
add rcx, r12
mov r9, rsi
sub rdi, r13
sub r9, r13
lea rax, [rcx*4]
mov rcx, r11
add rax, r13
sub rcx, r12
mov dword [rax + rdi], r10d
mov dword [rax], 0xc1e00000
mov dword [rax + r9], 0xc1e00000
lea rax, [rax + 4]
sub rcx, 1
jne 0x1800b2ace
add edx, dword [rbp + 0x3c]
mov eax, 1
add r8d, eax
cmp r8d, dword [rbp + 0x20]
jl 0x1800b2a69
mov rsi, qword [rbp + 0x100]
xor ebx, ebx
mov r13d, dword [rbp + 0x18]
cmp dword [rbp + 8], ebx
jne 0x1800b2b1e
cmp dword [rbp + 0x108], ebx
jne 0x1800b2b1e
mov dword [rsi + 0x78], ebx
jmp 0x1800b2b21
add dword [rsi + 0x78], eax
mov rdi, qword [rbp + 0x298]
mov ecx, dword [rdi + 0x20]
mov dword [r14], ecx
mov rcx, rdi
call fcn.1800b5610
cmp dword [rdi + 0x30], ebx
mov eax, 0xfffffffd
cmovne r13d, eax
mov eax, r13d
jmp 0x1800b2b4a
or eax, 0xffffffff
mov rcx, qword [rbp + 0x190]
xor rcx, rbp
call fcn.1800de930
mov rbx, qword [rbp + 0x270]
mov rsi, qword [rbp + 0x278]
mov rdi, qword [rbp + 0x280]
movaps xmm6, xmmword [rbp + 0x230]
movaps xmm7, xmmword [rbp + 0x220]
movaps xmm8, xmmword [rbp + 0x210]
movaps xmm9, xmmword [rbp + 0x200]
movaps xmm10, xmmword [rbp + 0x1f0]
movaps xmm11, xmmword [rbp + 0x1e0]
movaps xmm12, xmmword [rbp + 0x1d0]
movaps xmm13, xmmword [rbp + 0x1c0]
movaps xmm14, xmmword [rbp + 0x1b0]
movaps xmm15, xmmword [rbp + 0x1a0]
lea rsp, [rbp + 0x240]
pop r15
pop r14
pop r13
pop r12
pop rbp
ret