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

Disassembly:
push rbx
push rdi
push r14
sub rsp, 0xa0
mov rax, qword [0x14045d5f0]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov rax, qword [rcx]
mov r14, rdx
movsxd rbx, r8d
lea rdx, [rsp + 0x68]
mov r8d, 0xc
mov dword [rsp + 0x28], ebx
mov rdi, rcx
call qword [rax + 8]
cmp rax, 0xc
jae 0x14020a436
xor eax, eax
jmp 0x14020a879
movzx eax, word [rsp + 0x6c]
mov qword [rsp + 0xc8], rbp
xor ebp, ebp
rol ax, 8
mov qword [rsp + 0x98], rsi
mov esi, ebp
mov qword [rsp + 0x80], r15
movzx r15d, ax
test r15d, r15d
je 0x14020a49b
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rdi]
lea rdx, [rsp + 0x58]
mov r8d, 0x10
mov rcx, rdi
call qword [rax + 8]
cmp rax, 0x10
jb 0x14020a4ad
cmp dword [rsp + 0x58], 0x656d616e
je 0x14020a49b
inc esi
cmp esi, r15d
jl 0x14020a470
cmp esi, r15d
je 0x14020a4ad
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x20]
test al, al
jne 0x14020a4b4
xor eax, eax
jmp 0x14020a861
mov qword [rsp + 0x90], r12
lea rcx, [rbx*2 + 0x42]
mov qword [rsp + 0x88], r13
lea rax, [rbx*2 + 0x45]
and rax, 0xfffffffffffffffc
mov qword [rsp + 0x40], rcx
mov ecx, dword [rsp + 0x64]
mov r12d, ecx
mov qword [rsp + 0x38], rax
and r12d, 0xff0000
mov eax, ecx
shr eax, 0x10
or r12d, eax
mov eax, ecx
shl eax, 0x10
and ecx, 0xff00
or eax, ecx
shr r12d, 8
shl eax, 8
mov rcx, rdi
or r12d, eax
mov eax, 0xfffffffc
add r12d, 3
and r12, rax
mov eax, dword [rsp + 0x60]
mov r13d, eax
mov edx, eax
and eax, 0xff00
shl r13d, 0x10
or r13d, eax
mov eax, edx
and eax, 0xff0000
shr rdx, 0x10
or rax, rdx
shl r13d, 8
shr rax, 8
or r13, rax
mov rax, qword [rdi]
call qword [rax + 0x60]
mov rbx, rax
lea rcx, [rsp + 0x20]
mov rax, qword [rsp + 0x38]
sub rbx, r12
add rax, rbx
mov qword [rsp + 0x48], rbx
mov rdx, rax
mov qword [rsp + 0x50], rax
call fcn.140093ba0
mov rcx, qword [rsp + 0x20]
mov r8, r13
mov r9, qword [rdi]
mov rax, qword [rcx + 0x18]
mov rcx, rdi
mov rdx, rax
mov qword [rsp + 0x30], rax
call qword [r9 + 8]
cmp rax, r13
jb 0x14020a824
mov rax, qword [rdi]
mov r8, r12
xor edx, edx
mov rcx, rdi
call qword [rax + 8]
cmp rax, r12
jb 0x14020a824
mov rax, qword [rdi]
sub rbx, r13
mov rdx, qword [rsp + 0x30]
mov r8, rbx
add rdx, r13
mov rcx, rdi
call qword [rax + 8]
cmp rax, rbx
jb 0x14020a824
mov rdi, qword [rsp + 0x30]
mov r8, r15
shl r8, 4
mov rbx, rbp
lea rdx, [rdi + 0xc]
add r8, rdx
cmp rdx, r8
jae 0x14020a617
mov eax, dword [rdx + 8]
bswap eax
mov ecx, eax
cmp rcx, r13
jbe 0x14020a604
sub eax, r12d
bswap eax
mov dword [rdx + 8], eax
cmp dword [rdx], 0x64616568
cmove rbx, rdx
add rdx, 0x10
cmp rdx, r8
jb 0x14020a5f0
mov r11, qword [rsp + 0x40]
mov r12d, 0x300
mov edx, r11d
movsxd r15, esi
mov rsi, qword [rsp + 0x48]
and edx, 0xff0000
lea r10, [rdi + rsi]
add r15, r15
mov ecx, r11d
mov eax, r11d
shr eax, 0x10
or edx, eax
shl ecx, 0x10
shr edx, 8
mov eax, r11d
and eax, 0xff00
or ecx, eax
mov eax, esi
shl ecx, 8
or edx, ecx
shr eax, 0x10
mov dword [rdi + r15*8 + 0x18], edx
mov ecx, esi
shl ecx, 0x10
mov edx, esi
and edx, 0xff0000
or edx, eax
mov eax, esi
and eax, 0xff00
shr edx, 8
or ecx, eax
mov eax, 0x42
shl ecx, 8
or edx, ecx
rol ax, 8
mov dword [rdi + r15*8 + 0x14], edx
mov ecx, 0x200
mov edx, dword [rsp + 0x28]
mov word [r10 + 4], ax
movzx eax, dx
mov dword [r10], 0x5000000
add ax, ax
rol ax, 8
mov word [r10 + 0x18], cx
mov ecx, 0x400
mov word [r10 + 0x30], cx
mov ecx, 0x600
mov word [r10 + 0x3c], cx
lea rcx, [rsi + 0x42]
add rcx, rdi
mov dword [r10 + 6], 0x1000300
mov dword [r10 + 0xa], 0x1000904
mov dword [r10 + 0x10], 0x3000000
mov word [r10 + 0xe], ax
mov dword [r10 + 0x14], 0x9040100
mov dword [r10 + 0x1c], 0x3000000
mov word [r10 + 0x1a], ax
mov dword [r10 + 0x20], 0x9040100
mov word [r10 + 0x24], r12w
mov dword [r10 + 0x28], 0x3000000
mov word [r10 + 0x26], ax
mov dword [r10 + 0x2c], 0x9040100
mov dword [r10 + 0x34], 0x3000000
mov word [r10 + 0x32], ax
mov dword [r10 + 0x38], 0x9040100
mov word [r10 + 0x40], bp
mov word [r10 + 0x3e], ax
test edx, edx
jle 0x14020a76a
nop dword [rax + rax]
movsx eax, byte [r14]
lea rcx, [rcx + 2]
rol ax, 8
lea r14, [r14 + 1]
mov word [rcx - 2], ax
sub rdx, 1
jne 0x14020a750
mov rax, qword [rsp + 0x38]
lea r8, [r10 + r11]
add rax, r10
mov r9, rax
sub r9, r8
cmp r8, rax
cmova r9, rbp
test r9, r9
je 0x14020a7af
mov rax, r8
sub rax, rdi
sub rax, rsi
sub rax, r11
nop dword [rax]
nop dword [rax + rax]
inc rax
mov byte [r8], bpl
lea r8, [r8 + 1]
cmp rax, r9
jb 0x14020a7a0
mov rdx, r11
mov rcx, r10
call fcn.14020a160
bswap eax
mov dword [rdi + r15*8 + 0x10], eax
test rbx, rbx
je 0x14020a818
mov eax, dword [rbx + 8]
mov ebx, eax
mov r8d, eax
and eax, 0xff00
shl ebx, 0x10
or ebx, eax
mov eax, r8d
and eax, 0xff0000
shr r8, 0x10
or rax, r8
shl ebx, 8
shr rax, 8
or rbx, rax
lea rax, [rbx + 0x36]
cmp rax, rsi
jae 0x14020a818
mov rdx, qword [rsp + 0x50]
mov rcx, rdi
mov dword [rbx + rdi + 8], ebp
call fcn.14020a160
mov ecx, 0xb1b0afba
sub ecx, eax
bswap ecx
mov dword [rbx + rdi + 8], ecx
mov rbx, qword [rsp + 0x20]
mov qword [rsp + 0x20], rbp
jmp 0x14020a82c
mov rbx, rbp
mov rbp, qword [rsp + 0x20]
mov r13, qword [rsp + 0x88]
mov r12, qword [rsp + 0x90]
test rbp, rbp
je 0x14020a85e
or edx, 0xffffffff
lock xadd dword [rbp], edx
cmp edx, 1
jne 0x14020a85e
mov rcx, rbp
call fcn.1400939c0
mov rcx, rbp
call fcn.1402dfaa0
mov rax, rbx
mov rsi, qword [rsp + 0x98]
mov rbp, qword [rsp + 0xc8]
mov r15, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.1402e0100
add rsp, 0xa0
pop r14
pop rdi
pop rbx
ret