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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x98
mov qword [rsp + 0x40], r9
mov rdi, r8
mov rsi, rdx
mov qword [rsp + 0x38], rcx
mov rcx, rdx
call fcn.1400a8f30
mov rcx, rsi
mov rdx, rdi
call fcn.1400a8c60
mov ebx, eax
movzx r12d, word [rsi + 0x58]
mov r13d, r12d
and r13d, ebx
lea rax, [rsi + 0x28]
mov qword [rsp + 0x28], rax
mov rbp, qword [rsi + 0x18]
mov r15, qword [rsi + 0x20]
mov rdx, qword [rsi + 0x38]
mov qword [rsp + 0x30], rsi
mov r9, qword [rsi + 0x28]
mov r10, qword [rdi]
mov rax, qword [rdi + 8]
mov qword [rsp + 0x80], rax
movzx r11d, byte [rdi + 8]
mov qword [rsp + 0x48], rdi
mov rax, qword [rdi + 0x10]
mov qword [rsp + 0x58], rax
xor edi, edi
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x90], r9
mov qword [rsp + 0x88], r10
mov byte [rsp + 0x27], r11b
jmp 0x140083426
cmp byte [rax + 8], r11b
je 0x1400834ef
nop dword [rax + rax]
inc rdi
inc r13
mov rax, r13
nop dword [rax]
mov r13, rax
mov eax, 0
cmp r13, r15
jae 0x140083430
movzx esi, word [rbp + r13*4]
cmp rsi, 0xffff
je 0x1400835af
movzx eax, word [rbp + r13*4 + 2]
mov ecx, r12d
and ecx, eax
mov r8d, r13d
sub r8d, ecx
and r8d, r12d
cmp r8, rdi
jb 0x14008366a
cmp ax, bx
jne 0x140083420
cmp rdx, rsi
jbe 0x1400837b1
test r10, r10
sete al
imul r14, rsi, 0x68
mov rcx, qword [r9 + r14 + 0x40]
test rcx, rcx
setne r8b
cmp r8b, al
je 0x140083420
lea rax, [r9 + r14]
add rax, 0x40
test rcx, rcx
je 0x140083411
mov rcx, qword [rsp + 0x58]
cmp qword [rax + 0x10], rcx
jne 0x140083420
mov rcx, qword [rax + 8]
mov rdx, qword [rsp + 0x80]
mov r8, qword [rsp + 0x58]
call sub.msvcrt.dll_memcmp
movzx r11d, byte [rsp + 0x27]
mov r10, qword [rsp + 0x88]
mov r9, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x50]
test eax, eax
jne 0x140083420
cmp qword [r9 + r14], 0
je 0x14008350e
add r9, r14
mov rdx, qword [r9 + 8]
mov rdi, qword [rsp + 0x30]
mov rcx, rdi
call fcn.140025690
mov rdx, qword [rdi + 0x38]
cmp rdx, rsi
jbe 0x1400837b1
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
movups xmm0, xmmword [rax + r14 + 0x18]
movups xmm1, xmmword [rax + r14 + 0x28]
mov r8, qword [rsp + 0x38]
movups xmmword [r8 + 0x10], xmm1
movups xmmword [r8], xmm0
movzx ecx, byte [rax + r14 + 0x38]
mov edx, dword [rax + r14 + 0x3c]
mov dword [r8 + 0x24], edx
mov edx, dword [rax + r14 + 0x39]
mov dword [r8 + 0x21], edx
mov r9, qword [rsp + 0x40]
mov rdx, qword [r9 + 0x20]
mov qword [rax + r14 + 0x38], rdx
movups xmm0, xmmword [r9]
movups xmm1, xmmword [r9 + 0x10]
movups xmmword [rax + r14 + 0x18], xmm0
movups xmmword [rax + r14 + 0x28], xmm1
mov byte [r8 + 0x20], cl
mov r8, qword [rsp + 0x48]
mov rax, qword [r8]
test rax, rax
je 0x14008379d
mov rax, qword [rax + 0x10]
lea rcx, [r8 + 0x18]
mov rdx, qword [r8 + 8]
mov r8, qword [r8 + 0x10]
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp rax
cmp rdx, 0x8000
jae 0x1400837b1
mov rax, qword [rsp + 0x48]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x70], xmm1
movaps xmmword [rsp + 0x60], xmm0
mov rax, rdx
mov rsi, qword [rsp + 0x30]
cmp rdx, qword [rsi + 0x30]
jne 0x1400835fb
mov rcx, qword [rsp + 0x28]
call fcn.140029e20
mov rdx, qword [rsp + 0x50]
mov rax, qword [rsi + 0x38]
mov r15, qword [rsi + 0x20]
mov r9, qword [rsi + 0x28]
imul rcx, rax, 0x68
mov qword [r9 + rcx], 0
mov r8, qword [rsp + 0x40]
movups xmm0, xmmword [r8]
movups xmm1, xmmword [r8 + 0x10]
movups xmmword [r9 + rcx + 0x18], xmm0
movups xmmword [r9 + rcx + 0x28], xmm1
mov r8, qword [r8 + 0x20]
mov qword [r9 + rcx + 0x38], r8
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movups xmmword [r9 + rcx + 0x40], xmm0
movups xmmword [r9 + rcx + 0x50], xmm1
mov word [r9 + rcx + 0x60], bx
inc rax
mov qword [rsi + 0x38], rax
cmp r13, r15
jae 0x1400837b1
mov rax, qword [rsi + 0x18]
mov word [rax + r13*4], dx
mov word [rax + r13*4 + 2], bx
jmp 0x140083794
cmp rdi, 0x200
setae r12b
mov rdi, qword [rsp + 0x30]
cmp qword [rdi], 2
setne sil
mov rax, qword [rsp + 0x48]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x70], xmm1
movaps xmmword [rsp + 0x60], xmm0
cmp rdx, 0x8000
jae 0x1400837b1
mov rax, rdx
cmp rdx, qword [rdi + 0x30]
jne 0x1400836cd
mov rcx, qword [rsp + 0x28]
call fcn.140029e20
mov rdx, qword [rsp + 0x50]
mov rax, qword [rdi + 0x38]
mov r9, qword [rdi + 0x28]
mov rbp, qword [rdi + 0x18]
mov r15, qword [rdi + 0x20]
and r12b, sil
imul rcx, rax, 0x68
mov qword [r9 + rcx], 0
mov r8, qword [rsp + 0x40]
movups xmm0, xmmword [r8]
movups xmm1, xmmword [r8 + 0x10]
movups xmmword [r9 + rcx + 0x18], xmm0
movups xmmword [r9 + rcx + 0x28], xmm1
mov r8, qword [r8 + 0x20]
mov qword [r9 + rcx + 0x38], r8
movaps xmm0, xmmword [rsp + 0x60]
movaps xmm1, xmmword [rsp + 0x70]
movups xmmword [r9 + rcx + 0x40], xmm0
movups xmmword [r9 + rcx + 0x50], xmm1
mov word [r9 + rcx + 0x60], bx
inc rax
mov qword [rdi + 0x38], rax
xor eax, eax
nop word cs:[rax + rax]
mov rcx, r13
mov r13d, 0
cmp rcx, r15
jae 0x140083730
movzx r9d, word [rbp + rcx*4]
cmp r9w, 0xffff
je 0x14008376c
inc rax
movzx r8d, word [rbp + rcx*4 + 2]
mov word [rbp + rcx*4], dx
mov word [rbp + rcx*4 + 2], bx
inc rcx
mov ebx, r8d
mov edx, r9d
mov r13, rcx
jmp 0x140083730
mov word [rbp + rcx*4], dx
mov word [rbp + rcx*4 + 2], bx
cmp rax, 0x80
setb al
not r12b
test r12b, al
jne 0x140083794
cmp qword [rdi], 0
jne 0x140083794
mov qword [rdi], 1
mov rax, qword [rsp + 0x38]
mov byte [rax + 0x20], 2
add rsp, 0x98
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2