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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
mov dword [rax + 0x18], r8d
mov dword [rax + 0x10], edx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x68]
sub rsp, 0x130
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
mov r13d, r9d
mov edi, edx
mov r15, qword [0x7ff61b639970]
mov qword [rbp - 0x18], r15
mov rax, qword [r15 + 0x3ed0]
mov byte [rax + 0xb0], 1
mov r12, qword [r15 + 0x3ed0]
cmp byte [r12 + 0xb3], 0
jne 0x7ff61abd9f5c
lea eax, [r8 - 1]
cmp eax, 0x3f
jbe 0x7ff61abd9e41
mov r8d, 0x13e
lea rdx, [0x7ff61acf86e0]
lea rcx, [0x7ff61acf8740]
call qword [sym.imp.ucrtbase.dll__wassert]
mov eax, r13d
movss xmm7, dword [rbp + 0x98]
xorps xmm6, xmm6
and eax, 0x1000000
mov dword [rsp + 0x50], eax
je 0x7ff61abd9e79
comiss xmm7, xmm6
jae 0x7ff61abd9e79
mov r8d, pe_nt_image_headers64
lea rdx, [0x7ff61acf86e0]
lea rcx, [0x7ff61acf87d8]
call qword [sym.imp.ucrtbase.dll__wassert]
mov ebx, r13d
and ebx, 0x3000000
mov dword [rsp + 0x30], ebx
lea rcx, [rsp + 0x68]
call fcn.7ff61ab7cc60
movss xmm8, dword [0x7ff61ad34000]
test ebx, ebx
je 0x7ff61abd9eaa
movss xmm3, dword [rsp + 0x6c]
maxss xmm3, xmm8
jmp 0x7ff61abd9ead
xorps xmm3, xmm3
movss xmm2, dword [rsp + 0x68]
maxss xmm2, xmm8
mov rdx, qword [rbp + 0x90]
mov rdx, qword [rdx]
lea rcx, [rsp + 0x70]
call fcn.7ff61ab71d40
movss xmm2, dword [rsp + 0x74]
addss xmm2, dword [r12 + 0xfc]
movss xmm0, dword [r12 + 0xf8]
movss xmm1, dword [rsp + 0x70]
addss xmm1, xmm0
movss dword [rsp + 0x58], xmm0
movss xmm0, dword [r12 + 0xfc]
movss dword [rsp + 0x5c], xmm0
movss dword [rsp + 0x60], xmm1
movss dword [rsp + 0x64], xmm2
test ebx, ebx
je 0x7ff61abd9f63
xor edx, edx
lea rcx, [rsp + 0x58]
call fcn.7ff61ab82d70
test al, al
je 0x7ff61abd9f63
movss xmm0, dword [rsp + 0x60]
subss xmm0, dword [rsp + 0x58]
movss dword [rsp + 0x38], xmm0
movss xmm1, dword [rsp + 0x64]
subss xmm1, dword [rsp + 0x5c]
movss dword [rsp + 0x3c], xmm1
movss xmm1, dword [0x7ff61ace169c]
lea rcx, [rsp + 0x38]
call fcn.7ff61ab84870
xor al, al
jmp 0x7ff61abdb01e
lea rsi, [r15 + 0x4b38]
lea rcx, [rsi + 0x10]
mov r8d, 0xffffffff
mov edx, edi
call fcn.7ff61ab7d920
mov rcx, rax
movsxd rbx, dword [rax]
cmp ebx, 0xffffffff
je 0x7ff61abd9fb5
test ebx, ebx
js 0x7ff61abd9f8e
cmp ebx, dword [rsi]
jl 0x7ff61abd9fa8
mov r8d, 0x6fe
lea rdx, [0x7ff61acd7850]
lea rcx, [0x7ff61acd78c0]
call qword [sym.imp.ucrtbase.dll__wassert]
imul rbx, rbx, 0x228
add rbx, qword [rsi + 8]
jmp 0x7ff61abd9fc5
mov eax, dword [rsi + 0x20]
mov dword [rcx], eax
mov rcx, rsi
call fcn.7ff61abd94c0
mov rbx, rax
mov ecx, dword [r15 + 0x3e50]
xor r14d, r14d
cmp dword [rbx + 0x70], ecx
je 0x7ff61abd9fe6
mov dword [rsp + 0x40], r14d
mov dword [rsp + 0x48], edi
mov eax, dword [rbx + 4]
mov dword [rsp + 0x4c], eax
jmp 0x7ff61abda034
movsx edi, word [rbx + 0x80]
inc edi
mov eax, dword [rbp + 0x78]
add eax, edi
mov dword [rsp + 0x48], eax
mov eax, dword [rbx + 4]
mov dword [rsp + 0x4c], eax
mov dword [rsp + 0x40], edi
test edi, edi
jle 0x7ff61abda034
mov dword [rsp + 0x40], edi
mov ecx, dword [rbp + 0x80]
cmp dword [rbx + 0x74], ecx
je 0x7ff61abda034
mov r8d, 0x153
lea rdx, [0x7ff61acf86e0]
lea rcx, [0x7ff61acf8800]
call qword [sym.imp.ucrtbase.dll__wassert]
mov dword [rsp + 0x40], edi
mov rdx, rbx
mov rcx, rsi
call fcn.7ff61abdd0e0
mov dword [rsp + 0x44], eax
mov edi, dword [r15 + 0x4b20]
inc edi
mov dword [r15 + 0x4b20], edi
cmp edi, dword [r15 + 0x4b28]
jle 0x7ff61abda190
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rbp - 0x78], xmm0
movups xmmword [rbp - 0x68], xmm0
movups xmmword [rbp - 0x58], xmm0
movups xmmword [rbp - 0x48], xmm0
movups xmmword [rbp - 0x38], xmm0
movups xmmword [rbp - 0x28], xmm0
mov dword [rsp + 0x7c], 0xbf800000
mov ecx, dword [r15 + 0x4b2c]
cmp edi, ecx
jle 0x7ff61abda101
test ecx, ecx
je 0x7ff61abda0a2
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x7ff61abda0a7
mov eax, 8
mov esi, edi
cmp eax, edi
cmovg esi, eax
cmp esi, ecx
jle 0x7ff61abda101
movsxd rax, esi
imul rcx, rax, 0x70
call fcn.7ff61ab85870
mov qword [rsp + 0x38], rax
mov rdx, qword [r15 + 0x4b30]
test rdx, rdx
je 0x7ff61abda0f3
movsxd rcx, dword [r15 + 0x4b28]
imul r8, rcx, 0x70
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r15 + 0x4b30]
call fcn.7ff61ab85890
mov rax, qword [rsp + 0x38]
mov qword [r15 + 0x4b30], rax
mov dword [r15 + 0x4b2c], esi
movsxd rax, dword [r15 + 0x4b28]
cmp edi, eax
jle 0x7ff61abda170
movsxd rdx, edi
cmp rax, rdx
jge 0x7ff61abda170
imul rcx, rax, 0x70
sub rdx, rax
nop dword [rax + rax]
mov rax, qword [r15 + 0x4b30]
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [rax + rcx], xmm0
movups xmm1, xmmword [rbp - 0x78]
movups xmmword [rax + rcx + 0x10], xmm1
movups xmm0, xmmword [rbp - 0x68]
movups xmmword [rax + rcx + 0x20], xmm0
movups xmm1, xmmword [rbp - 0x58]
movups xmmword [rax + rcx + 0x30], xmm1
movups xmm0, xmmword [rbp - 0x48]
movups xmmword [rax + rcx + 0x40], xmm0
movups xmm1, xmmword [rbp - 0x38]
movups xmmword [rax + rcx + 0x50], xmm1
movups xmm0, xmmword [rbp - 0x28]
movups xmmword [rax + rcx + 0x60], xmm0
lea rcx, [rcx + 0x70]
sub rdx, 1
jne 0x7ff61abda120
mov dword [r15 + 0x4b28], edi
lea rcx, [rbp - 0x78]
call fcn.7ff61abc3f60
nop
mov rcx, qword [rbp - 0x68]
test rcx, rcx
je 0x7ff61abda190
call fcn.7ff61ab85890
nop
movsxd rdi, dword [r15 + 0x4b20]
test edi, edi
jle 0x7ff61abda1a4
cmp edi, dword [r15 + 0x4b28]
jle 0x7ff61abda1be
mov r8d, 0x6fe
lea rdx, [0x7ff61acd7850]
lea rcx, [0x7ff61acd78c0]
call qword [sym.imp.ucrtbase.dll__wassert]
imul rcx, rdi, 0x70
mov rsi, qword [r15 + 0x4b30]
add rsi, 0xffffffffffffff90
add rsi, rcx
mov qword [rsp + 0x38], rsi
mov qword [rbx + 0x10], rsi
mov eax, dword [rsp + 0x44]
mov dword [rsi], eax
mov rax, qword [rbx + 0x10]
add rax, 0x10
mov qword [rbx + 0x1a0], rax
mov dword [rax], r14d
mov dword [rax + 4], 1
test r13d, 0xe000
sete al
mov byte [rbx + 0x21d], al
test r13d, 0xe000
jne 0x7ff61abda22d
cmp dword [rsp + 0x50], 0
jne 0x7ff61abda225
test byte [r12 + 0xc], 0x40
mov eax, 0x8000
je 0x7ff61abda22a
mov eax, 0x2000
or r13d, eax
mov eax, r13d
and eax, 0xe000
mov ecx, r13d
bts ecx, 0x12
cmp eax, 0x4000
cmovne ecx, r13d
mov edx, ecx
bts edx, 9
test cl, 1
cmove edx, ecx
mov ecx, edx
and ecx, 0xfffcffff
test edx, 0x3000000
cmove ecx, edx
mov edx, ecx
btr edx, 0xb
bt ecx, 0xc
cmovae edx, ecx
mov r8d, edx
or r8d, 0x10
test dl, 0xf
cmovne r8d, edx
mov rax, qword [r12 + 0x370]
mov edi, r8d
or edi, 0x10
test dword [rax + 0xc], 0x100
cmove edi, r8d
mov eax, dword [rbp + 0x78]
mov dword [rbx], eax
mov dword [rbx + 4], edi
mov r13d, dword [rsp + 0x40]
mov word [rbx + 0x80], r13w
mov eax, dword [r15 + 0x3e50]
mov dword [rbx + 0x70], eax
mov qword [rbx + 0x188], r12
mov qword [rbx + 0x180], r12
mov eax, dword [rbp + 0x80]
mov dword [rbx + 0x74], eax
mov byte [rbx + 0x211], 0
movss dword [rbx + 0xd4], xmm7
mov rax, qword [rbp + 0x90]
movsd xmm0, qword [rax]
movsd qword [rsi + 8], xmm0
test r13d, r13d
jle 0x7ff61abda3ae
mov esi, dword [rbx + 0x1b8]
cmp esi, r13d
jge 0x7ff61abda3a9
mov ecx, dword [rbx + 0x1bc]
cmp esi, ecx
jne 0x7ff61abda380
inc esi
test ecx, ecx
je 0x7ff61abda31e
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x7ff61abda323
mov eax, 8
cmp eax, esi
cmovg esi, eax
cmp esi, ecx
jle 0x7ff61abda380
movsxd rax, esi
lea rcx, [rax + rax*2]
shl rcx, 2
call fcn.7ff61ab85870
mov r13, rax
mov rdx, qword [rbx + 0x1c0]
test rdx, rdx
je 0x7ff61abda36e
movsxd rcx, dword [rbx + 0x1b8]
lea r8, [rcx + rcx*2]
shl r8, 2
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx + 0x1c0]
call fcn.7ff61ab85890
mov qword [rbx + 0x1c0], r13
mov dword [rbx + 0x1bc], esi
mov r13d, dword [rsp + 0x40]
movsxd rax, dword [rbx + 0x1b8]
lea rdx, [rax + rax*2]
mov rcx, qword [rbx + 0x1c0]
movaps xmm0, xmm6
unpcklps xmm0, xmm6
movsd qword [rcx + rdx*4], xmm0
movss dword [rcx + rdx*4 + 8], xmm6
inc dword [rbx + 0x1b8]
mov rsi, qword [rsp + 0x38]
movss xmm9, dword [0x7ff61ace1694]
cmp dword [rsp + 0x30], 0
je 0x7ff61abda56a
movaps xmm1, xmm9
movaps xmm0, xmm9
mov eax, edi
and eax, 0x3000000
cmp eax, 0x1000000
jne 0x7ff61abda3e0
movss xmm0, dword [0x7ff61acfae34]
bt edi, 0x18
jae 0x7ff61abda403
comiss xmm7, xmm6
jbe 0x7ff61abda403
movaps xmm1, xmm7
ucomiss xmm7, xmm9
jp 0x7ff61abda3f6
je 0x7ff61abda403
ucomiss xmm0, xmm9
jp 0x7ff61abda40b
jne 0x7ff61abda40b
movaps xmm0, xmm6
jmp 0x7ff61abda40b
ucomiss xmm0, xmm9
jp 0x7ff61abda40b
je 0x7ff61abda42c
ucomiss xmm1, xmm9
jp 0x7ff61abda416
jne 0x7ff61abda416
movaps xmm1, xmm6
movss dword [rsp + 0x30], xmm1
movss dword [rsp + 0x34], xmm0
lea rcx, [rsp + 0x30]
call fcn.7ff61ab924c0
test dword [rsp + 0x4c], 0x3000000
jne 0x7ff61abda449
mov qword [rsp + 0x30], 0
lea rcx, [rsp + 0x30]
call fcn.7ff61ab925a0
movss xmm0, dword [rsp + 0x60]
subss xmm0, dword [rsp + 0x58]
movss dword [rsp + 0x30], xmm0
movss xmm1, dword [rsp + 0x64]
subss xmm1, dword [rsp + 0x5c]
movss dword [rsp + 0x34], xmm1
mov eax, edi
shr eax, 0xd
and eax, 0x800
mov dword [rsp + 0x20], eax
xor r9d, r9d
lea r8, [rsp + 0x30]
mov edx, dword [rsp + 0x48]
mov rcx, qword [rbp + 0x70]
call fcn.7ff61ab70160
mov rax, qword [r15 + 0x3ed0]
mov qword [rbx + 0x188], rax
movups xmm0, xmmword [rax + 0x210]
movups xmmword [rbx + 0x110], xmm0
movss xmm2, dword [rax + 0x18]
movss xmm3, dword [rax + 0x1c]
movss xmm0, dword [rax + 0x20]
movss xmm1, dword [rax + 0x24]
movss dword [rbx + 0xf0], xmm2
movss dword [rbx + 0xf4], xmm3
addss xmm2, xmm0
movss dword [rbx + 0xf8], xmm2
addss xmm3, xmm1
movss dword [rbx + 0xfc], xmm3
movups xmm0, xmmword [rax + 0x1f0]
movups xmmword [rbx + 0x100], xmm0
movss xmm1, dword [rax + 0x48]
ucomiss xmm1, xmm6
jp 0x7ff61abda51a
jne 0x7ff61abda51a
movss xmm0, dword [rax + 0x4c]
ucomiss xmm0, xmm6
jp 0x7ff61abda51a
jne 0x7ff61abda51a
movss xmm0, dword [rax + 0x54]
ucomiss xmm0, xmm6
jp 0x7ff61abda51a
je 0x7ff61abda534
mov r8d, 0x18d
lea rdx, [0x7ff61acf86e0]
lea rcx, [0x7ff61acf88f0]
call qword [sym.imp.ucrtbase.dll__wassert]
test r13d, r13d
jne 0x7ff61abda54d
movzx eax, byte [rbx + 0x21e]
mov byte [rbx + 0x21f], al
mov byte [rbx + 0x21e], r13b
mov rax, qword [rbx + 0x188]
movss xmm0, dword [rax + 0x88]
comiss xmm0, xmm6
seta al
or byte [rbx + 0x21e], al
jmp 0x7ff61abda584
movups xmm0, xmmword [rsp + 0x58]
movups xmmword [rbx + 0x100], xmm0
movups xmmword [rbx + 0xf0], xmm0
movups xmmword [rbx + 0x110], xmm0
mov ecx, dword [rsp + 0x48]
call fcn.7ff61ab8c4e0
mov r13, qword [rbx + 0x188]
mov qword [rsp + 0x50], r13
mov eax, dword [r13 + 0x13c]
mov dword [rbx + 0xb8], eax
movups xmm0, xmmword [r13 + 0x230]
movups xmmword [rbx + 0x160], xmm0
movzx eax, byte [r13 + 0xb3]
mov byte [rbx + 0x221], al
movups xmm0, xmmword [r13 + 0x210]
movups xmmword [rsi + 0x28], xmm0
movups xmm0, xmmword [r13 + 0x220]
movups xmmword [rsi + 0x38], xmm0
movss xmm1, dword [r12 + 0x140]
movss dword [rsi + 0x60], xmm1
movsd xmm0, qword [r13 + 0x128]
movsd qword [rsi + 0x48], xmm0
movsd xmm0, qword [r13 + 0x120]
movsd qword [rsi + 0x50], xmm0
movsd xmm1, qword [r13 + 0x110]
movsd qword [rsi + 0x58], xmm1
mov eax, dword [r12 + 0x1b4]
mov dword [rsi + 0x64], eax
mov eax, dword [r12 + 0x1c0]
mov dword [rsi + 0x68], eax
mov qword [r13 + 0x120], r14
mov qword [r13 + 0x128], r14
bt edi, 0x16
jae 0x7ff61abda642
xor cl, cl
jmp 0x7ff61abda654
bt edi, 0x15
jae 0x7ff61abda64c
mov cl, 1
jmp 0x7ff61abda654
mov ecx, edi
shr ecx, 0xa
and cl, 1
mov eax, edi
shr eax, 0x17
not al
and al, 1
mov edx, edi
and edx, 0x200
je 0x7ff61abda66d
movaps xmm3, xmm8
jmp 0x7ff61abda670
movaps xmm3, xmm6
test al, al
je 0x7ff61abda6bc
test edx, edx
jne 0x7ff61abda6bc
movss xmm1, dword [r15 + 0x383c]
movaps xmm2, xmm6
movaps xmm0, xmm1
addss xmm0, xmm3
movss dword [rbx + 0xcc], xmm0
movss dword [rbx + 0xd0], xmm1
movss dword [rbx + 0xc4], xmm2
mov eax, dword [r15 + 0x3840]
mov dword [rbx + 0xc8], eax
bt edi, 0xa
jae 0x7ff61abda6d2
movaps xmm1, xmm8
jmp 0x7ff61abda6d5
movaps xmm1, xmm6
test al, al
je 0x7ff61abda681
test edx, edx
je 0x7ff61abda681
movss xmm2, dword [r15 + 0x383c]
jmp 0x7ff61abda684
movaps xmm1, xmm6
test cl, cl
je 0x7ff61abda6e4
movss xmm0, dword [r15 + 0x383c]
jmp 0x7ff61abda6e7
movaps xmm0, xmm6
addss xmm0, xmm1
subss xmm0, xmm2
movss dword [rbx + 0xc0], xmm0
mov qword [rbx + 0x78], 0xffffffffffffffff
mov dword [rbx + 0x9c], r14d
mov word [rbx + 0x9a], r14w
cmp r13, r12
lea rax, [rbx + 0x110]
je 0x7ff61abda721
lea rax, [r13 + 0x230]
lea rcx, [rbx + 0x120]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movss xmm1, dword [rcx]
maxss xmm1, dword [rbx + 0x110]
movss xmm0, dword [rcx + 4]
maxss xmm0, dword [rbx + 0x114]
movss dword [rcx], xmm1
movss dword [rcx + 4], xmm0
movss xmm1, dword [rcx + 8]
minss xmm1, dword [rbx + 0x118]
movss xmm0, dword [rcx + 0xc]
minss xmm0, dword [rbx + 0x11c]
movss dword [rcx + 8], xmm1
movss dword [rcx + 0xc], xmm0
lea rdx, [rbx + 0x160]
call fcn.7ff61ab737f0
bt edi, 0x11
jae 0x7ff61abda799
movss xmm0, dword [rbx + 0x12c]
minss xmm0, dword [r13 + 0x21c]
jmp 0x7ff61abda7a2
movss xmm0, dword [r13 + 0x23c]
movss dword [rbx + 0x12c], xmm0
movss xmm0, dword [rbx + 0x114]
movss dword [rbx + 0x88], xmm0
movss dword [rbx + 0x84], xmm0
mov dword [rbx + 0x90], r14d
mov dword [rbx + 0x209], 0
mov byte [rbx + 0x21c], 1
mov byte [rbx + 0x1fb], 0
movaps xmm1, xmm8
mov ecx, 0x2b
call fcn.7ff61ab7cbd0
mov dword [rbx + 0xa8], eax
movaps xmm1, xmm8
mov ecx, 0x2c
call fcn.7ff61ab7cbd0
mov dword [rbx + 0xac], eax
mov qword [r15 + 0x4b18], rbx
mov r9d, dword [rsp + 0x44]
mov dword [r12 + 0x1a8], r9d
cmp r13, r12
je 0x7ff61abda829
mov dword [r13 + 0x1a8], r9d
test byte [rsp + 0x4c], 2
je 0x7ff61abda83d
test dil, 2
jne 0x7ff61abda83d
mov byte [rbx + 0x21b], 1
mov edi, dword [r15 + 0x4b60]
cmp r9d, edi
jl 0x7ff61abda909
mov dword [rsp + 0x30], 0xbf800000
lea edi, [r9 + 1]
mov ecx, dword [r15 + 0x4b64]
cmp edi, ecx
jle 0x7ff61abda8d5
test ecx, ecx
je 0x7ff61abda873
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x7ff61abda878
mov eax, 8
mov esi, edi
cmp eax, edi
cmovg esi, eax
cmp esi, ecx
jle 0x7ff61abda8d0
movsxd rcx, esi
shl rcx, 2
call fcn.7ff61ab85870
mov r12, rax
mov rdx, qword [r15 + 0x4b68]
test rdx, rdx
je 0x7ff61abda8bd
movsxd r8, dword [r15 + 0x4b60]
shl r8, 2
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [r15 + 0x4b68]
call fcn.7ff61ab85890
mov qword [r15 + 0x4b68], r12
mov dword [r15 + 0x4b64], esi
mov r9d, dword [rsp + 0x44]
mov rsi, qword [rsp + 0x38]
movsxd rax, dword [r15 + 0x4b60]
cmp edi, eax
jle 0x7ff61abda902
mov rdx, rax
movsxd r8, edi
cmp rax, r8
jge 0x7ff61abda902
mov eax, dword [rsp + 0x30]
nop
mov rcx, qword [r15 + 0x4b68]
mov dword [rcx + rdx*4], eax
inc rdx
cmp rdx, r8
jl 0x7ff61abda8f0
mov dword [r15 + 0x4b60], edi
movsd xmm7, qword [r15 + 0x3e48]
cvtpd2ps xmm7, xmm7
test r9d, r9d
js 0x7ff61abda920
cmp r9d, edi
jl 0x7ff61abda93f
mov r8d, 0x6fe
lea rdx, [0x7ff61acd7850]
lea rcx, [0x7ff61acd78c0]
call qword [sym.imp.ucrtbase.dll__wassert]
mov r9d, dword [rsp + 0x44]
movsxd rcx, r9d
mov rax, qword [r15 + 0x4b68]
movss dword [rax + rcx*4], xmm7
movsd xmm0, qword [r15 + 0x3e48]
cvtpd2ps xmm0, xmm0
movss dword [rsi + 4], xmm0
mov byte [rbx + 0x220], 0
mov r12, r14
mov qword [rsp + 0x38], r14
mov r8, qword [rbx + 0x18]
mov rcx, qword [rbx + 0x20]
sub rcx, r8
movabs rax, 0x4ec4ec4ec4ec4ec5
imul rcx
mov rcx, rdx
sar rcx, 5
mov rax, rcx
shr rax, 0x3f
add rcx, rax
mov qword [rsp + 0x30], rcx
mov edi, dword [rbp + 0x80]
test ecx, ecx
je 0x7ff61abda9bb
cmp ecx, edi
je 0x7ff61abda9bb
mov r12, r8
mov rax, qword [rbx + 8]
mov qword [rsp + 0x38], rax
mov qword [rbx + 8], r14
cmp qword [rbx + 8], 0
jne 0x7ff61abda9da
mov edx, edi
mov rcx, rbx
call fcn.7ff61abddfe0
mov byte [rbx + 0x217], 1
mov byte [rbx + 0x213], 1
cmp byte [rbx + 0x21a], 0
je 0x7ff61abda9fe
mov word [rbx + 0x217], 0x100
mov byte [rbx + 0x213], 1
mov byte [rbx + 0x21a], 0
mov dword [rbx + 0x68], r14d
cmp byte [rbx + 0x213], 0
je 0x7ff61abdaba7
mov ecx, 0xffffffff
mov dword [rbx + 0x6c], ecx
mov byte [rbx + 0x214], 1
mov word [rbx + 0x82], cx
mov byte [rbx + 0x208], cl
mov dword [rbx + 0x1fd], 0xffffffff
mov byte [rbx + 0x202], cl
mov byte [rbx + 0x1fc], cl
mov r13d, r14d
test edi, edi
jle 0x7ff61abdaba2
mov r15, r14
mov rsi, r14
mov r14, qword [rsp + 0x30]
mov rax, qword [rbx + 0x18]
lea rdi, [rsi + rax]
cmp rdi, rax
jb 0x7ff61abdaa66
cmp rdi, qword [rbx + 0x20]
jb 0x7ff61abdaa80
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
test r12, r12
je 0x7ff61abdaad2
cmp r13d, r14d
jge 0x7ff61abdaad2
movups xmm0, xmmword [rsi + r12]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rsi + r12 + 0x10]
movups xmmword [rdi + 0x10], xmm1
movups xmm0, xmmword [rsi + r12 + 0x20]
movups xmmword [rdi + 0x20], xmm0
movups xmm1, xmmword [rsi + r12 + 0x30]
movups xmmword [rdi + 0x30], xmm1
movups xmm0, xmmword [rsi + r12 + 0x40]
movups xmmword [rdi + 0x40], xmm0
movups xmm1, xmmword [rsi + r12 + 0x50]
movups xmmword [rdi + 0x50], xmm1
movsd xmm0, qword [rsi + r12 + 0x60]
movsd qword [rdi + 0x60], xmm0
jmp 0x7ff61abdab44
movss xmm2, dword [rdi + 0x14]
xorps xmm1, xmm1
xor eax, eax
movups xmmword [rbp - 0x78], xmm1
movups xmmword [rbp - 0x38], xmm1
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x78], 0xbf800000
mov dword [rbp - 0x70], 0xbf800000
mov qword [rbp - 0x38], 0xffffffffffffffff
and byte [rbp - 0x23], 0xfc
mov word [rbp - 0x30], 0xffff
movups xmmword [rdi], xmm1
movups xmm0, xmmword [rbp - 0x78]
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm1
movups xmmword [rdi + 0x30], xmm1
movups xmmword [rdi + 0x40], xmm1
movups xmm0, xmmword [rbp - 0x38]
movups xmmword [rdi + 0x50], xmm0
movsd xmm1, qword [rbp - 0x28]
movsd qword [rdi + 0x60], xmm1
movss dword [rdi + 0x14], xmm2
mov byte [rdi + 0x61], 1
mov word [rdi + 0x5b], 0x101
mov byte [rdi + 0x5a], 1
mov rax, qword [rbx + 0x28]
lea rcx, [r15 + rax]
mov qword [rsp + 0x30], rcx
cmp rcx, rax
jb 0x7ff61abdab5c
cmp rcx, qword [rbx + 0x30]
jb 0x7ff61abdab7b
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
mov rcx, qword [rsp + 0x30]
mov byte [rcx], r13b
mov byte [rdi + 0x52], r13b
inc r13d
inc r15
add rsi, 0x68
mov edi, dword [rbp + 0x80]
cmp r13d, edi
jl 0x7ff61abdaa53
xor r14d, r14d
mov r15, qword [rbp - 0x18]
mov r13, qword [rsp + 0x50]
mov rax, qword [rsp + 0x38]
test rax, rax
je 0x7ff61abdabb9
mov rcx, rax
call fcn.7ff61ab85890
cmp byte [rbx + 0x217], 0
je 0x7ff61abdabca
mov rcx, rbx
call fcn.7ff61abe0d10
movss xmm8, dword [r15 + 0x3c20]
movss xmm0, dword [rbx + 0xec]
ucomiss xmm0, xmm6
jp 0x7ff61abdabe6
je 0x7ff61abdac81
ucomiss xmm0, xmm8
jp 0x7ff61abdabf2
je 0x7ff61abdac81
movaps xmm7, xmm8
divss xmm7, xmm0
movsxd r15, edi
test edi, edi
jle 0x7ff61abdac81
mov rdi, r14
nop dword [rax + rax]
mov rax, qword [rbx + 0x18]
lea rsi, [rdi + rax]
cmp rsi, rax
jb 0x7ff61abdac23
cmp rsi, qword [rbx + 0x20]
jb 0x7ff61abdac3d
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
movaps xmm6, xmm7
mulss xmm6, dword [rsi + 0x10]
mov rax, qword [rbx + 0x18]
lea rsi, [rdi + rax]
cmp rsi, rax
jb 0x7ff61abdac58
cmp rsi, qword [rbx + 0x20]
jb 0x7ff61abdac72
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
movss dword [rsi + 0x10], xmm6
add rdi, 0x68
sub r15, 1
jne 0x7ff61abdac10
movss dword [rbx + 0xec], xmm8
mov byte [r13 + 0xb3], 1
lea rcx, [rbx + 0x190]
cmp dword [rcx], 0
jle 0x7ff61abdaca5
xor edx, edx
call fcn.7ff61ab9e950
cmp word [rbx + 0x80], 0
jne 0x7ff61abdaf89
movsx eax, byte [rbx + 0x1ff]
cmp al, 0xff
je 0x7ff61abdacd5
movss xmm1, dword [rbx + 0xe4]
ucomiss xmm1, xmm9
jp 0x7ff61abdacce
je 0x7ff61abdacd5
mov ecx, eax
call fcn.7ff61abe2710
movzx eax, byte [rbx + 0x1ff]
mov byte [rbx + 0x200], al
mov dword [rbx + 0xe4], 0x7f7fffff
mov byte [rbx + 0x1ff], 0xff
movsx rax, byte [rbx + 0x1fe]
cmp al, 0xff
je 0x7ff61abdad45
imul rdi, rax, 0x68
add rdi, qword [rbx + 0x18]
cmp rdi, qword [rbx + 0x18]
jb 0x7ff61abdad13
cmp rdi, qword [rbx + 0x20]
jb 0x7ff61abdad2d
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
movsx ecx, byte [rbx + 0x1fe]
movss xmm1, dword [rdi + 0x14]
call fcn.7ff61abe2710
mov byte [rbx + 0x1fe], 0xff
cmp word [rbx + 0x80], 0
jne 0x7ff61abdaf89
cmp byte [rbx + 0x201], 0xff
jne 0x7ff61abdad6c
cmp byte [rbx + 0x202], 0xff
je 0x7ff61abdad6c
mov byte [rbx + 0x202], 0xff
mov byte [rbx + 0x201], 0xff
cmp byte [rbx + 0x202], 0xff
je 0x7ff61abdaf89
movsx r12d, byte [rbx + 0x203]
test r12b, r12b
je 0x7ff61abdaf89
lea eax, [r12 + 1]
test eax, 0xfffffffd
je 0x7ff61abdadb7
mov r8d, 0x279
lea rdx, [0x7ff61acf86e0]
lea rcx, [0x7ff61acf8a10]
call qword [sym.imp.ucrtbase.dll__wassert]
test byte [rbx + 4], 2
jne 0x7ff61abdadd7
mov r8d, 0x27a
lea rdx, [0x7ff61acf86e0]
lea rcx, [0x7ff61acf8a60]
call qword [sym.imp.ucrtbase.dll__wassert]
movsx rax, byte [rbx + 0x202]
imul rdi, rax, 0x68
add rdi, qword [rbx + 0x18]
cmp rdi, qword [rbx + 0x18]
jb 0x7ff61abdadf3
cmp rdi, qword [rbx + 0x20]
jb 0x7ff61abdae0d
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
cmp r12d, 0xffffffff
jne 0x7ff61abdae19
movzx eax, byte [rdi + 0x54]
jmp 0x7ff61abdae1d
movzx eax, byte [rdi + 0x55]
movsx rax, al
imul r13, rax, 0x68
add r13, qword [rbx + 0x18]
cmp r13, qword [rbx + 0x18]
jb 0x7ff61abdae35
cmp r13, qword [rbx + 0x20]
jb 0x7ff61abdae4f
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
movsx esi, byte [rdi + 0x52]
movsx eax, byte [r13 + 0x52]
mov edx, eax
mov dword [rsp + 0x50], eax
mov byte [rdi + 0x52], al
add esi, r12d
add eax, r12d
cmp esi, eax
je 0x7ff61abdaee2
mov r14d, eax
nop
movsxd rdi, esi
add rdi, qword [rbx + 0x28]
cmp rdi, qword [rbx + 0x28]
jb 0x7ff61abdae83
cmp rdi, qword [rbx + 0x30]
jb 0x7ff61abdae9d
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
movsx rax, byte [rdi]
imul rdi, rax, 0x68
add rdi, qword [rbx + 0x18]
cmp rdi, qword [rbx + 0x18]
jb 0x7ff61abdaeb5
cmp rdi, qword [rbx + 0x20]
jb 0x7ff61abdaecf
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
sub byte [rdi + 0x52], r12b
add esi, r12d
cmp esi, r14d
jne 0x7ff61abdae70
xor r14d, r14d
mov edx, dword [rsp + 0x50]
sub edx, r12d
movsx eax, byte [r13 + 0x52]
cmp eax, edx
je 0x7ff61abdaf08
mov r8d, 0x283
lea rdx, [0x7ff61acf86e0]
lea rcx, [0x7ff61acf8ac0]
call qword [sym.imp.ucrtbase.dll__wassert]
mov esi, r14d
cmp dword [rbx + 0x74], 0
jle 0x7ff61abdaf7b
movsxd rax, esi
imul rdi, rax, 0x68
add rdi, qword [rbx + 0x18]
cmp rdi, qword [rbx + 0x18]
jb 0x7ff61abdaf28
cmp rdi, qword [rbx + 0x20]
jb 0x7ff61abdaf42
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
movsx rdi, byte [rdi + 0x52]
add rdi, qword [rbx + 0x28]
cmp rdi, qword [rbx + 0x28]
jb 0x7ff61abdaf57
cmp rdi, qword [rbx + 0x30]
jb 0x7ff61abdaf71
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
mov byte [rdi], sil
inc esi
cmp esi, dword [rbx + 0x74]
jl 0x7ff61abdaf11
mov byte [rbx + 0x203], 0
mov byte [rbx + 0x218], 1
cmp byte [rbx + 0x21b], 0
je 0x7ff61abdb01c
cmp dword [rbx + 0x74], 0
jle 0x7ff61abdb00e
nop dword [rax]
movsxd rsi, r14d
imul rdi, rsi, 0x68
add rdi, qword [rbx + 0x18]
cmp rdi, qword [rbx + 0x18]
jb 0x7ff61abdafb7
cmp rdi, qword [rbx + 0x20]
jb 0x7ff61abdafd1
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
mov byte [rdi + 0x52], r14b
mov rax, qword [rbx + 0x28]
lea rdi, [rsi + rax]
cmp rdi, rax
jb 0x7ff61abdafe8
cmp rdi, qword [rbx + 0x30]
jb 0x7ff61abdb002
mov r8d, 0x269
lea rdx, [0x7ff61acd8910]
lea rcx, [0x7ff61ace13c0]
call qword [sym.imp.ucrtbase.dll__wassert]
mov byte [rdi], r14b
inc r14d
cmp r14d, dword [rbx + 0x74]
jl 0x7ff61abdafa0
mov byte [rbx + 0x21b], 0
mov byte [rbx + 0x218], 1
mov al, 1
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x58]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret