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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r15
sub rsp, 0x40
mov rsi, rdx
xor r15d, r15d
mov dword [rcx + 0x4c], r15d
mov rbx, rcx
mov rax, qword [rdx + 0x10]
mov rcx, rsi
sub rax, qword [rdx]
lea rdx, [rsp + 0x80]
and eax, 0xfffffffc
lea r8d, [r15 + 4]
mov qword [rsp + 0x88], rax
call fcn.14000a780
test eax, eax
jne 0x140014c45
mov edi, dword [rsp + 0x80]
mov ebp, 0xffff
mov eax, edi
shr eax, 0x10
cmp ax, bp
jne 0x1400148f7
lea r8d, [r15 + 4]
mov rcx, rsi
lea rdx, [rsp + 0x70]
call fcn.14000a780
test eax, eax
jne 0x140014c45
jmp 0x1400148fb
mov dword [rsp + 0x70], eax
cmp di, bp
jne 0x140014921
mov r8d, 4
lea rdx, [rsp + 0x78]
mov rcx, rsi
call fcn.14000a780
test eax, eax
jne 0x140014c45
mov eax, dword [rsp + 0x78]
jmp 0x140014928
movzx eax, di
mov dword [rsp + 0x78], eax
test byte [rsp + 0x70], 3
je 0x14001493f
mov eax, 0xb
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp eax, 0x26
je 0x140014954
mov eax, 2
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov r8d, 4
lea rdx, [rbx + 8]
mov rcx, rsi
call fcn.14000a780
test eax, eax
jne 0x140014c45
mov ecx, dword [rbx + 0x860]
lea rdx, [rbx + 0x3c]
mov eax, ecx
mov qword [rsp + 0x30], r13
and ecx, 0xfffffffb
or eax, 4
cmp dword [rbx + 8], 0x34cadd
mov r8d, 4
cmove ecx, eax
mov dword [rbx + 0x860], ecx
mov rcx, rsi
call fcn.14000a780
test eax, eax
jne 0x140014c40
cmp dword [rbx + 0x3c], 0xfffff
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x28], r14
ja 0x140014c31
lea rdx, [rbx + 0xc]
mov rcx, rsi
lea r8d, [rax + 4]
call fcn.14000a780
test eax, eax
jne 0x140014c36
lea r8d, [rax + 4]
mov rcx, rsi
lea rdx, [rbx + 0x24]
call fcn.14000a780
test eax, eax
jne 0x140014c36
cmp dword [rbx + 0x24], 0xfffff
ja 0x140014c31
lea rdx, [rbx + 0x14]
mov rcx, rsi
lea r8d, [rax + 4]
call fcn.14000a780
test eax, eax
jne 0x140014c36
lea rdx, [rbx + 0x18]
mov rcx, rsi
lea r8d, [rax + 4]
call fcn.14000a780
test eax, eax
jne 0x140014c36
mov ecx, dword [rbx + 0x24]
shl ecx, 4
call fcn.14000af40
mov qword [rbx + 0x30], rax
test rax, rax
je 0x140014cc7
mov ecx, dword [rbx + 0x24]
mov ebp, r15d
mov r14, qword [rsi + 0x10]
sub r14, qword [rsi]
sar r14, 2
lea eax, [rcx + rcx*2]
add r14d, eax
shl r14d, 2
mov qword [rsp + 0x80], r14
test ecx, ecx
je 0x140014b1c
nop dword [rax]
nop word [rax + rax]
mov rdx, qword [rbx + 0x30]
mov r8d, 4
mov edi, ebp
mov rcx, rsi
shl rdi, 4
add rdx, rdi
call fcn.14000a780
test eax, eax
jne 0x140014c36
mov rdx, qword [rbx + 0x30]
lea r8d, [rax + 4]
add rdx, 4
mov rcx, rsi
add rdx, rdi
call fcn.14000a780
test eax, eax
jne 0x140014c36
mov rdx, qword [rbx + 0x30]
add rdx, rdi
mov eax, dword [rdx + 4]
dec eax
cmp eax, 0xffe
ja 0x140014c31
add rdx, 0xc
mov r8d, 4
mov rcx, rsi
call fcn.14000a780
test eax, eax
jne 0x140014c36
mov rcx, qword [rbx + 0x30]
mov eax, dword [rcx + rdi + 4]
cmp eax, 1
jbe 0x140014b11
add dword [rbx + 0x4c], eax
mov eax, dword [rcx + rdi + 0xc]
sub eax, r14d
shr eax, 2
mov dword [rcx + rdi + 8], eax
inc ebp
cmp ebp, dword [rbx + 0x24]
jb 0x140014a80
mov ecx, dword [rbx + 0x4c]
shl ecx, 2
call fcn.14000af40
mov qword [rbx + 0x50], rax
test rax, rax
je 0x140014cc7
mov edi, r15d
cmp dword [rbx + 0x4c], r15d
jbe 0x140014b67
nop dword [rax]
mov rax, qword [rbx + 0x50]
mov r8d, 4
mov ecx, edi
lea rdx, [rax + rcx*4]
mov rcx, rsi
call fcn.14000a780
test eax, eax
jne 0x140014c36
inc edi
cmp edi, dword [rbx + 0x4c]
jb 0x140014b40
mov ecx, dword [rbx + 0x3c]
shl ecx, 7
call fcn.14000af40
mov qword [rbx + 0x40], rax
test rax, rax
je 0x140014cc7
mov eax, dword [rbx + 0x3c]
mov edi, r15d
mov dword [rbx + 0x38], eax
mov ebp, r15d
test eax, eax
je 0x140014beb
nop
mov rdx, qword [rsi + 0x10]
mov r9d, 1
sub rdx, qword [rsi]
mov rcx, rsi
mov r8, qword [rbx + 0x40]
and edx, 0xfffffffc
mov r14d, ebp
shl r14, 7
add r8, r14
call fcn.140010660
cmp eax, 2
jne 0x140014bd6
mov rax, qword [rbx + 0x40]
mov rcx, rsi
mov edx, dword [r14 + rax + 0x10]
add edx, dword [r14 + rax]
call fcn.14000a800
test eax, eax
jne 0x140014c36
jmp 0x140014bdc
test eax, eax
jne 0x140014c36
inc ebp
inc edi
cmp edi, dword [rbx + 0x3c]
jb 0x140014b90
mov r14, qword [rsp + 0x80]
mov eax, r15d
mov dword [rbx + 0x3c], ebp
cmp dword [rbx + 0x24], eax
jbe 0x140014c89
nop word [rax + rax]
mov r10, qword [rbx + 0x30]
mov r8d, r15d
shl r8, 4
add r10, r8
cmp dword [r10 + 4], 1
mov edx, dword [r10 + 0xc]
jbe 0x140014c50
sub edx, r14d
shr edx, 2
mov dword [r10 + 8], edx
mov rdx, qword [rbx + 0x30]
mov ecx, dword [rbx + 0x4c]
cmp dword [r8 + rdx + 8], ecx
jb 0x140014c7c
mov eax, 0xb
mov r12, qword [rsp + 0x38]
mov r14, qword [rsp + 0x28]
mov r13, qword [rsp + 0x30]
add rsp, 0x40
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov r8d, dword [rbx + 0x3c]
cmp eax, r8d
jae 0x140014c76
mov r9, qword [rbx + 0x40]
nop dword [rax]
mov ecx, eax
shl rcx, 7
cmp dword [rcx + r9], edx
je 0x140014c73
inc eax
cmp eax, r8d
jb 0x140014c60
cmp eax, r8d
je 0x140014c31
mov dword [r10 + 8], eax
inc r15d
cmp r15d, dword [rbx + 0x24]
jb 0x140014c00
mov edx, dword [rsp + 0x70]
mov r8, qword [rsp + 0x88]
mov rcx, qword [rsi + 0x10]
sub rcx, qword [rsi]
and ecx, 0xfffffffc
lea eax, [rdx + r8]
cmp ecx, eax
jne 0x140014c31
mov eax, dword [rbx + 0x24]
or dword [rbx + 0x860], 1
mov dword [rbx + 0x28], eax
mov eax, dword [rbx + 0x4c]
mov dword [rbx + 0x48], eax
xor eax, eax
mov dword [rbx], edx
mov dword [rbx + 4], r8d
jmp 0x140014c36
mov eax, 3
jmp 0x140014c36