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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x70
mov rax, qword [0x1402325c0]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rax, qword [rcx + 0x70]
mov rbp, rdx
mov rsi, qword [rcx]
mov rdi, rcx
mov dword [rsp + 0x20], 0
mov r14d, r8d
mov rbx, qword [rax + 0x1068]
test rbx, rbx
jne 0x14012bb1a
lea rcx, [fcn.140111580]
mov edx, 0x240
mov qword [rax + 0x1070], rcx
lea r8, [rsp + 0x20]
mov rcx, rsi
call fcn.14010fbd0
mov rcx, qword [rdi + 0x70]
mov qword [rcx + 0x1068], rax
cmp dword [rsp + 0x20], ebx
je 0x14012bac2
lea eax, [rbx + 0x40]
jmp 0x14012bcac
mov rax, qword [rdi + 0x70]
mov rbx, qword [rax + 0x1068]
xor eax, eax
mov qword [rbx], rsi
mov qword [rbx + 0x78], rax
mov qword [rbx + 0x88], rax
mov qword [rbx + 0xa0], rax
lea rax, [rbx + 8]
mov qword [rbx + 0x98], rax
lea rax, [0x14012b810]
mov qword [rbx + 0x68], rax
lea rax, [0x14012b770]
mov qword [rbx + 0x70], rax
lea rax, [0x14012b600]
mov qword [rbx + 0x80], rax
mov qword [rbx + 0x90], rsi
mov qword [rbx + 0xa8], rdi
mov qword [rbx + 0xa0], rdi
mov rax, qword [rdi + 8]
mov r8, qword [rdi + 0x10]
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x30], rbp
mov rcx, qword [rax + 0x90]
xor eax, eax
movzx r9d, byte [r8 + 0xf8]
movzx r10d, byte [r8 + 0xf9]
mov qword [rsp + 0x28], rax
lea rax, [r14 + rbp]
mov qword [rsp + 0x38], rax
xor eax, eax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
test r9b, r9b
je 0x14012bbab
mov eax, dword [r8 + 0xfc]
add eax, 0x20
cdq
and edx, 0x3f
add eax, edx
sar eax, 6
mov esi, eax
mov dword [rsp + 0x48], eax
mov eax, dword [r8 + 0x100]
add eax, 0x20
cdq
and edx, 0x3f
add eax, edx
sar eax, 6
mov ebp, eax
mov dword [rsp + 0x54], eax
jmp 0x14012bbba
mov esi, 0x400
mov dword [rsp + 0x48], esi
mov ebp, esi
mov dword [rsp + 0x54], esi
mov dword [rbx + 0xc], 0
test r9b, r9b
mov eax, dword [rbx + 0xc]
mov edx, 1
cmovne eax, edx
mov dword [rbx + 0xc], eax
test r10b, r10b
je 0x14012bbe1
cmp byte [rcx + 0x3c], 0
jne 0x14012bbe1
or dword [rbx + 0xc], 2
mov eax, dword [rcx + 0x40]
mov dword [rbx + 0xbc], eax
mov eax, dword [rcx + 0x44]
mov dword [rbx + 0xc0], eax
mov eax, dword [rcx + 0x48]
mov dword [rbx + 0xc4], eax
mov eax, dword [rcx + 0x4c]
mov dword [rbx + 0xc8], eax
mov eax, dword [rcx + 0x50]
mov dword [rbx + 0xcc], eax
mov eax, dword [rcx + 0x54]
mov dword [rbx + 0xd0], eax
mov eax, dword [rcx + 0x58]
mov dword [rbx + 0xd4], eax
mov eax, dword [rcx + 0x5c]
mov dword [rbx + 0xd8], eax
mov rax, qword [rdi + 8]
movzx edx, word [rax + 0x68]
mov dword [rbx + 0x5c], edx
test r10b, r10b
je 0x14012bc6c
test esi, esi
jle 0x14012bc65
test ebp, ebp
jle 0x14012bc65
cmp edx, 0x7fff
jg 0x14012bc5e
shl edx, 0x10
mov ecx, 0x7d00000
call fcn.140109c00
cmp esi, eax
jg 0x14012bc5e
cmp ebp, eax
jle 0x14012bc6c
mov eax, 0xa4
jmp 0x14012bcac
mov eax, 0x24
jmp 0x14012bcac
lea r9, [rsp + 0x24]
mov rcx, rbx
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x28]
call fcn.14012c530
test eax, eax
je 0x14012bc8e
mov eax, 3
jmp 0x14012bcac
mov eax, dword [rsp + 0x24]
add eax, 0x8000
shr eax, 0x10
movsx ecx, ax
mov rax, qword [rbx + 0xa0]
mov dword [rax + 0x328], ecx
xor eax, eax
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1401b5590
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret