Function at 0x140006d44
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, 0x78
movaps xmmword [rsp + 0x60], xmm6
mov rbx, rdx
mov rsi, rcx
lea rdi, [rsp + 0x30]
mov rcx, rdi
call fcn.1400067f8
mov rax, qword [rdi]
cmp rax, 4
jne 0x140006db0
cmp dword [rbx], 3
jne 0x140007689
mov rdx, qword [rbx + 8]
lea rdi, [rsp + 0x30]
mov r8d, 2
mov rcx, rdi
xor r9d, r9d
call fcn.1400f37e0
cmp qword [rdi], 0
je 0x140006dd2
mov rax, qword [rsp + 0x38]
mov qword [rsi + 8], rax
mov qword [rsi], 0
jmp 0x140006dbc
movups xmm0, xmmword [rsp + 0x38]
movups xmmword [rsi + 8], xmm0
mov qword [rsi], rax
movaps xmm6, xmmword [rsp + 0x60]
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rdi, [rbx + 8]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x58], rax
mov rax, qword [rbx + 0x70]
test rax, rax
je 0x1400072b4
mov r12, qword [rbx + 0x68]
imul rbp, rax, 0xb0
add rbp, r12
xorps xmm6, xmm6
lea r14, [rsp + 0x2c]
mov r13d, 0xffffffff
movups xmmword [rsp + 0x3c], xmm6
movaps xmmword [rsp + 0x30], xmm6
mov rdx, qword [r12 + 8]
mov r8, qword [r12 + 0x10]
xor r10d, r10d
mov r9, r8
shr r9, 0x20
setne r10b
shr rdx, 0x20
mov rax, qword [r12 + 0x18]
mov rcx, rax
shr rcx, 0x20
lea r11d, [r10*8]
test rdx, rdx
lea r10d, [r10*8 + 8]
cmove r10d, r11d
lea r15d, [r10 + 8]
test rcx, rcx
cmove r15d, r10d
test r15w, r15w
je 0x140006ea3
mov word [rsp + 0x30], 1
mov word [rsp + 0x32], r15w
lea r10, [rsp + 0x34]
test r9, r9
je 0x140006e84
mov qword [rsp + 0x34], r8
lea r10, [rsp + 0x3c]
or r15d, 4
test rdx, rdx
je 0x140006e99
mov rdx, qword [r12 + 8]
mov qword [r10], rdx
add r10, 8
test rcx, rcx
je 0x140006ea6
mov qword [r10], rax
jmp 0x140006ea6
xor r15d, r15d
mov dword [rsp + 0x2c], 0x2014b50
mov r8d, 4
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
movzx eax, word [r12 + 0xa6]
mov word [rsp + 0x2c], ax
mov r8d, 2
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
cmp dword [r12 + 0x14], 0
jne 0x140006f04
cmp dword [r12 + 0xc], 0
je 0x140006fad
cmp word [r12 + 0xa0], 2
sete al
mov cx, 0x2d
test al, al
mov eax, 0x2e
cmovne ecx, eax
mov word [rsp + 0x2c], cx
mov r8d, 2
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
mov rax, qword [r12 + 0x38]
mov rcx, qword [r12 + 0x40]
cmp rcx, 8
jb 0x140006f96
lea r9, [rax + 7]
and r9, 0xfffffffffffffff8
mov r8, r9
sub r8, rax
cmp r8, rcx
ja 0x140006f96
mov dx, 0x800
movabs r10, 0x8080808080808080
test qword [rax], r10
jne 0x140006fd7
cmp r9, rax
mov r9d, 8
cmove r8, r9
add rcx, 0xfffffffffffffff8
cmp r8, rcx
jae 0x140006fcf
test qword [rax + r8], r10
jne 0x140006fd7
add r8, 8
jmp 0x140006f85
xor edx, edx
cmp rcx, rdx
je 0x140006fd5
cmp byte [rax + rdx], 0
lea rdx, [rdx + 1]
jns 0x140006f98
mov dx, 0x800
jmp 0x140006fd7
cmp word [r12 + 0xa0], 2
sete al
cmp dword [r12 + 0x1c], 0
mov cx, 0x14
jne 0x140006f11
jmp 0x140006f15
test qword [rax + rcx], r10
jne 0x140006fd7
xor edx, edx
mov word [rsp + 0x2c], dx
mov r8d, 2
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
movzx eax, word [r12 + 0xa0]
movzx ecx, ax
lea rdx, [0x1400076bc]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
mov ax, 8
jmp case.0x140007010.0
mov ax, 0xc
jmp case.0x140007010.0
mov ax, 0x63
jmp case.0x140007010.0
mov ax, 0x5d
jmp case.0x140007010.0
movzx eax, word [r12 + 0xa2]
mov word [rsp + 0x2c], ax
mov r8d, 2
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
movzx eax, byte [r12 + 6]
shr eax, 1
movzx ecx, byte [r12 + 5]
shl ecx, 5
or ecx, eax
movzx eax, byte [r12 + 4]
shl eax, 0xb
or eax, ecx
mov word [rsp + 0x2c], ax
mov r8d, 2
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
movzx eax, byte [r12 + 3]
movzx ecx, byte [r12 + 2]
shl ecx, 5
or ecx, eax
movzx eax, word [r12]
shl eax, 9
add eax, 0xffff8800
or eax, ecx
mov word [rsp + 0x2c], ax
mov r8d, 2
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
mov eax, dword [r12 + 0x98]
mov dword [rsp + 0x2c], eax
mov r8d, 4
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
mov rax, qword [r12 + 8]
cmp rax, r13
cmovae rax, r13
mov dword [rsp + 0x2c], eax
mov r8d, 4
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
mov rax, qword [r12 + 0x10]
cmp rax, r13
cmovae rax, r13
mov dword [rsp + 0x2c], eax
mov r8d, 4
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
movzx eax, word [r12 + 0x40]
mov word [rsp + 0x2c], ax
mov r8d, 2
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
movzx eax, word [r12 + 0x70]
add ax, r15w
mov word [rsp + 0x2c], ax
mov r8d, 2
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
mov word [rsp + 0x2c], 0
mov r8d, 2
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
mov word [rsp + 0x2c], 0
mov r8d, 2
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
mov word [rsp + 0x2c], 0
mov r8d, 2
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
mov eax, dword [r12 + 0x9c]
mov dword [rsp + 0x2c], eax
mov r8d, 4
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
mov rax, qword [r12 + 0x18]
cmp rax, r13
cmovae rax, r13
mov dword [rsp + 0x2c], eax
mov r8d, 4
mov rcx, rdi
mov rdx, r14
call fcn.140123e54
test rax, rax
jne 0x140006da3
mov rdx, qword [r12 + 0x38]
mov r8, qword [r12 + 0x40]
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
movzx r8d, r15w
cmp r15w, 0x1d
jae 0x1400076a3
mov rcx, rdi
lea rdx, [rsp + 0x30]
call fcn.140123e54
test rax, rax
jne 0x140006da3
mov rdx, qword [r12 + 0x68]
mov r8, qword [r12 + 0x70]
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
add r12, 0xb0
cmp r12, rbp
jne 0x140006e09
mov rdx, qword [rdi]
lea r14, [rsp + 0x30]
mov r8d, 2
mov rcx, r14
xor r9d, r9d
call fcn.1400f37e0
cmp qword [r14], 0
jne 0x140006d9e
mov r14, qword [rsp + 0x38]
mov r13, r14
mov rax, qword [rsp + 0x58]
sub r13, rax
mov r15, qword [rbx + 0x70]
cmp r13, rax
cmova rax, r13
cmp r15, 0xffff
ja 0x14000748c
shr rax, 0x20
jne 0x14000748c
mov ebp, 0xffff
cmp r15, rbp
cmovb rbp, r15
mov r12, qword [rbx + 0x80]
mov r15, qword [rbx + 0x88]
mov rcx, r15
xor edx, edx
call fcn.140043ed9
mov r14, rax
mov rbx, rdx
mov rcx, rdx
mov rdx, r12
mov r8, r15
call sub.VCRUNTIME140.dll_memcpy
mov r12d, 0xffffffff
cmp r13, r12
cmovae r13, r12
mov rax, qword [rsp + 0x58]
cmp rax, r12
cmovb r12, rax
lea rdx, [rsp + 0x30]
mov dword [rdx], 0x6054b50
mov r8d, 4
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140007461
lea rdx, [rsp + 0x30]
mov word [rdx], 0
mov r8d, 2
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140007461
lea rdx, [rsp + 0x30]
mov word [rdx], 0
mov r8d, 2
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140007461
lea rdx, [rsp + 0x30]
mov word [rdx], bp
mov r8d, 2
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140007461
lea rdx, [rsp + 0x30]
mov word [rdx], bp
mov r8d, 2
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140007461
lea rdx, [rsp + 0x30]
mov dword [rdx], r13d
mov r8d, 4
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140007461
lea rdx, [rsp + 0x30]
mov dword [rdx], r12d
mov r8d, 4
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140007461
lea rdx, [rsp + 0x30]
mov word [rdx], r15w
mov r8d, 2
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140007461
mov rcx, rdi
mov rdx, rbx
mov r8, r15
call fcn.140123e54
test rax, rax
je 0x140007666
mov qword [rsi + 8], rax
mov qword [rsi], 0
test r14, r14
je 0x140006dbc
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
jmp 0x140006dbc
lea rdx, [rsp + 0x30]
mov dword [rdx], 0x6064b50
mov r8d, 4
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov qword [rdx], 0x2c
mov r8d, 8
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov word [rdx], 0x2e
mov r8d, 2
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov word [rdx], 0x2e
mov r8d, 2
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov dword [rdx], 0
mov r8d, 4
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov dword [rdx], 0
mov r8d, 4
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov qword [rdx], r15
mov r8d, 8
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov qword [rdx], r15
mov r8d, 8
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov qword [rdx], r13
mov r8d, 8
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov rax, qword [rsp + 0x58]
mov qword [rdx], rax
mov r8d, 8
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov dword [rdx], 0x7064b50
mov r8d, 4
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov dword [rdx], 0
mov r8d, 4
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov qword [rdx], r14
mov r8d, 8
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
lea rdx, [rsp + 0x30]
mov dword [rdx], 1
mov r8d, 4
mov rcx, rdi
call fcn.140123e54
test rax, rax
jne 0x140006da3
mov r15, qword [rbx + 0x70]
jmp 0x140007309
test r14, r14
je 0x14000767d
mov rcx, qword [0x1402fea40]
xor edx, edx
mov r8, rbx
call qword [sym.imp.kernel32.dll_HeapFree]
mov qword [rsi], 4
jmp 0x140006dbc
lea rcx, [0x1402d1db2]
lea r8, [0x14023e1a0]
mov edx, 0x29
call fcn.1402393e7
ud2
lea rax, [0x14023e220]
mov edx, 0x1c
mov rcx, r8
mov r8, rax
call fcn.140237a00
ud2