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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x48
mov al, byte [rcx + 0x18]
mov rbx, rcx
mov rdi, rdx
cmp al, 6
je 0x14007c00a
mov rdx, qword [rdx + 0x50]
mov rsi, qword [rdi + 0x28]
mov rdx, qword [rdx + 8]
cmp dword [rsi + 0x40], 1
mov r13, qword [rdx + 0x380]
jne 0x14007c61c
mov ecx, dword [rsi + 0x48]
cmp dword [r13 + 4], ecx
jne 0x14007c61c
mov r12d, dword [rsi + 0x6f8]
cmp al, 2
je 0x14007bf20
xor ebp, ebp
jmp 0x14007bf46
mov rdx, rbx
mov rcx, rdi
mov ebp, 1
call fcn.14007b579
test al, al
jne 0x14007bf46
test byte [rdi], 2
jne 0x14007bf1c
xor ebp, ebp
test byte [rbx + 0x8c], 3
setne bpl
cmp qword [rsi + 0x6b8], 0
je 0x14007bf7d
cmp byte [rbx + 0x60], 0xa
je 0x14007bf7d
test byte [rbx + 0x65], 4
jne 0x14007bf7d
cmp qword [rbx + 0x48], 0
jle 0x14007bf7d
cmp qword [rbx + 0x40], 0
jle 0x14007bf7d
mov qword [rbx + 0x48], 0xffffffffffffffff
mov qword [rbx + 0x90], 1
mov eax, dword [rbx + 0x60]
and eax, 0x20000ff
cmp eax, 0x200000a
jne 0x14007c011
test byte [rbx + 0x8d], 4
je 0x14007bfa1
mov qword [rbx + 0x48], 1
mov r9d, r12d
lea r8, [rbx + 0x58]
mov rdx, rbx
mov rcx, rdi
mov dword [rsp + 0x30], 1
mov eax, dword [rsi + 0x7f4]
mov dword [rsp + 0x28], eax
mov eax, dword [rsi + 0x6fc]
imul eax, r12d
mov dword [rsp + 0x20], eax
call fcn.14007d9fe
test al, al
je 0x14007c61c
cmp qword [rbx + 0x48], 0xffffffffffffffff
mov rax, qword [rsi + 0x6a8]
je 0x14007c00a
test rax, rax
je 0x14007c00a
mov rdx, qword [rsi + 0x728]
mov rcx, qword [rax + 0x40]
mov edx, dword [rdx + 0x10]
mov qword [rbx + 0x98], rcx
add rdx, rcx
mov qword [rax + 0x40], rdx
mov al, 1
jmp 0x14007c64a
cmp byte [rsi + 0x4c], 0
je 0x14007c199
cmp qword [rbx + 0x48], 0
mov r14, qword [rbx + 0x90]
jg 0x14007c032
test r14, r14
jle 0x14007c199
cmp dword [rbx + 0x3c], 0xffffffff
je 0x14007c045
mov cl, byte [rdi]
mov r9d, ecx
and r9d, 1
jne 0x14007c07d
jmp 0x14007c069
test byte [rbx + 0x64], 0x10
jne 0x14007c038
test ebp, ebp
jne 0x14007c038
cmp byte [rbx + 0x18], 2
jne 0x14007c038
mov rdx, rbx
mov rcx, rdi
call fcn.140094bba
test al, al
jne 0x14007c038
jmp 0x14007c61c
test byte [rbx + 0x64], 0x10
jne 0x14007c199
cmp dword [rbx + 0x3c], 0xffffffff
je 0x14007c199
mov rdx, qword [rsi + 0x638]
mov rax, qword [rsi + 0x6a8]
mov r8, qword [rsi + 0x6b8]
cmp qword [rdx + 0x40], 0
jne 0x14007c0ab
mov r10d, dword [rsi + 0x6fc]
imul r10d, r12d
mov r15d, r10d
mov qword [rdx + 0x40], r15
test r14, r14
jle 0x14007c0bd
mov r10, qword [r8 + 0x40]
mov qword [rbx + 0x90], r10
jmp 0x14007c0d5
mov r10, qword [rdx + 0x40]
mov qword [rbx + 0x48], r10
test rax, rax
je 0x14007c0d5
mov r10, qword [rax + 0x40]
mov qword [rbx + 0x98], r10
test byte [rbx + 0x63], 2
jne 0x14007c0fc
and ecx, 3
test byte [rsi + 0x7d0], 2
je 0x14007c0ef
cmp cl, 3
setne cl
jmp 0x14007c0f4
test cl, cl
sete cl
test cl, cl
jne 0x14007c620
test r14, r14
jle 0x14007c129
mov rax, qword [rsi + 0x728]
mov eax, dword [rax + 0x10]
add qword [r8 + 0x40], rax
jmp 0x14007c16c
test rax, rax
je 0x14007c63d
mov qword [rbx + 0x28], rax
mov rcx, qword [rbx + 0x98]
mov qword [rbx + 0x30], rcx
mov ecx, r12d
add qword [rdx + 0x40], rcx
test rax, rax
je 0x14007c143
mov rdx, qword [rsi + 0x728]
mov edx, dword [rdx + 0x10]
add qword [rax + 0x40], rdx
mov rax, qword [rsi + 0x628]
mov edx, dword [rsi + 0x7f4]
add qword [rax + 0x40], rdx
test ebp, ebp
jne 0x14007c16c
mov rax, qword [rsi + 0x640]
mov edx, dword [rsi + 0x7f0]
inc dword [rax + 0x78]
add qword [rax + 0x40], rdx
cmp dword [rsi + 0x188], 2
jne 0x14007c1b0
test r9b, r9b
jne 0x14007c1b0
mov eax, dword [rsi + 0x7f0]
mov rdx, qword [rsi + 0x770]
add eax, eax
cmp qword [rbx + 0x48], r12
jne 0x14007c193
add qword [rdx + 0x40], rax
add qword [rdx + 0x40], rax
jmp 0x14007c1b0
and byte [rbx + 0x64], 0xfe
mov qword [rbx + 0x90], 0xffffffffffffffff
mov qword [rbx + 0x48], 0xffffffffffffffff
mov qword [rbx + 0xa0], 0xffffffffffffffff
cmp qword [rbx + 0x40], 0
jle 0x14007c1e2
mov r12b, byte [rbx + 0x88]
mov eax, dword [rbx + 0x3c]
movzx r14d, r12b
test byte [rdi], 2
jne 0x14007c1ef
inc eax
jne 0x14007c1f3
test r12d, 4
je 0x14007c245
mov qword [rbx + 0x40], 0xffffffffffffffff
jmp 0x14007c39e
inc eax
je 0x14007c245
mov edx, r12d
mov rcx, qword [rsi + 0x620]
and edx, 0xfffffffd
cmp dl, 8
jne 0x14007c269
mov eax, dword [rsi + 0x7f4]
mov r10, qword [rsi + 0x640]
mov r8, qword [rsi + 0x628]
mov r11d, eax
imul r11d, dword [r10 + 0x78]
add eax, eax
mov r9, qword [r8 + 0x40]
mov r10, r9
add rax, r9
sub r10, r11
mov qword [rbx + 0xa0], r10
mov qword [r8 + 0x40], rax
mov qword [rbx + 0x40], 0xfffffffffffffffe
jmp 0x14007c269
test byte [rbx + 0x64], 0x10
jne 0x14007c1f3
test ebp, ebp
jne 0x14007c1f3
cmp byte [rbx + 0x18], 2
jne 0x14007c1f3
mov rdx, rbx
mov rcx, rdi
call fcn.140094bba
test al, al
jne 0x14007c1f3
jmp 0x14007c61c
mov r9b, byte [rsi + 0x4c]
cmp r14d, 8
je 0x14007c2c2
mov rax, qword [rcx + 0x40]
mov r8d, dword [rsi + 0x7f4]
mov qword [rbx + 0x40], rax
add rax, r8
cmp r12b, 0xa
ja 0x14007c297
mov r10d, 0x484
bt r10, r12
jb 0x14007c29d
mov qword [rcx + 0x40], rax
jmp 0x14007c2ca
add r8, rax
mov qword [rcx + 0x40], r8
cmp r14d, 7
jne 0x14007c2ca
mov eax, dword [rsi + 0x7f0]
mov rdx, qword [rsi + 0x630]
add eax, eax
add qword [rdx + 0x40], rax
jmp 0x14007c39e
mov eax, r12d
and eax, 0xfffffff7
jmp 0x14007c2da
mov eax, r12d
and eax, 0xfffffff7
cmp al, 2
jne 0x14007c2da
cmp dword [rbx + 0x3c], 0xffffffff
je 0x14007c2e0
and r12d, 4
je 0x14007c2f6
mov rax, qword [rsi + 0x630]
mov ecx, dword [rsi + 0x7f0]
add qword [rax + 0x40], rcx
jmp 0x14007c376
cmp al, 2
jne 0x14007c30f
mov eax, dword [rsi + 0x7f0]
mov rcx, qword [rsi + 0x630]
add eax, eax
add qword [rcx + 0x40], rax
jmp 0x14007c376
cmp dl, 8
je 0x14007c37b
test byte [rbx + 0x61], 3
jne 0x14007c31e
test ebp, ebp
je 0x14007c324
cmp byte [rbx + 0x18], 2
je 0x14007c39e
test byte [rdi], 1
je 0x14007c352
cmp dword [rbx + 0x3c], 0xffffffff
jne 0x14007c363
mov al, byte [rbx + 0x18]
sub eax, 3
cmp al, 1
ja 0x14007c363
mov rax, qword [0x1401e1b70]
add rax, 0x230
cmp qword [rbx + 0x28], rax
jne 0x14007c363
test byte [rbx + 0x19], 0x30
jne 0x14007c363
test r9b, r9b
je 0x14007c39e
test byte [rbx + 0x64], 0x10
jne 0x14007c39e
cmp dword [rbx + 0x3c], 0xffffffff
je 0x14007c39e
mov rax, qword [rsi + 0x630]
mov edx, dword [rsi + 0x7f0]
add qword [rax + 0x40], rdx
jmp 0x14007c39e
cmp dl, 8
jne 0x14007c39e
mov rax, qword [rsi + 0x640]
mov edx, dword [rsi + 0x7f0]
add qword [rax + 0x40], rdx
cmp dword [r13 + 4], 0x23
jne 0x14007c39e
mov qword [rsi + 0x178], 0xffffffffffffffff
cmp qword [rbx + 0x58], 0
je 0x14007c00a
test byte [rdi], 1
je 0x14007c499
mov r8d, 1
mov rdx, rdi
mov rcx, rbx
call fcn.140096cee
test al, al
jne 0x14007c3d2
cmp dword [rsi + 0x188], 2
jne 0x14007c414
jmp 0x14007c401
lea rcx, [rbx + 0x58]
mov rax, qword [rcx]
test rax, rax
je 0x14007c3c7
mov rdx, qword [rax + 0x10]
sub rdx, qword [rax + 0x18]
mov qword [rax + 0x18], 0
mov qword [rax + 0x10], rdx
jne 0x14007c3fc
mov rax, qword [rax]
mov qword [rcx], rax
jmp 0x14007c3d6
mov rcx, rax
jmp 0x14007c3d6
lea r14, [rbx + 0x58]
lea r15, [0x1401b1e86]
mov r12, qword [r14]
test r12, r12
jne 0x14007c420
cmp qword [rbx + 0x58], 0
jne 0x14007c446
jmp 0x14007c588
mov rax, qword [r12 + 8]
mov rdx, r15
mov rax, qword [rax + 0x60]
mov rcx, qword [rax]
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x14007c441
mov rax, qword [r12]
mov qword [r14], rax
jmp 0x14007c40c
mov r14, r12
jmp 0x14007c40c
cmp byte [rbx + 0x18], 2
jne 0x14007c4e1
test byte [rbx + 0x61], 3
jne 0x14007c45a
test ebp, ebp
je 0x14007c4b5
cmp dword [r13 + 4], 0xd
jne 0x14007c4aa
cmp byte [rbx + 0x64], 0
lea rdx, [rbx + 0x58]
jns 0x14007c4aa
mov rax, qword [rdx]
test rax, rax
je 0x14007c48d
mov rcx, qword [rax + 0x18]
mov r8, qword [rax]
test rcx, rcx
jne 0x14007c484
mov qword [rdx], r8
jmp 0x14007c46b
mov qword [rax + 0x10], rcx
mov rdx, rax
jmp 0x14007c46b
cmp qword [rbx + 0x58], 0
jne 0x14007c4c9
jmp 0x14007c588
mov dl, byte [rbx + 0x64]
test dl, dl
jns 0x14007c529
cmp byte [rbx + 0x18], 2
je 0x14007c525
xor eax, eax
mov qword [rbx + 0x58], rax
jmp 0x14007c588
cmp dword [rbx + 0x3c], 0xffffffff
jne 0x14007c588
test byte [rbx + 0x64], 0x10
jne 0x14007c588
mov rdx, rbx
mov rcx, rdi
call fcn.140094bba
test al, al
jne 0x14007c588
jmp 0x14007c61c
test byte [rdi], 2
jne 0x14007c588
mov al, byte [rbx + 0x63]
test al, al
js 0x14007c4fe
test byte [rbx + 0x8d], 8
je 0x14007c588
and eax, 0xa
lea rdx, [rbx + 0x58]
cmp al, 8
jne 0x14007c588
mov rax, qword [rdx]
test rax, rax
je 0x14007c588
cmp qword [rax + 0x18], 0
je 0x14007c520
mov rax, qword [rax]
mov qword [rdx], rax
jmp 0x14007c509
mov rdx, rax
jmp 0x14007c509
test ebp, ebp
jne 0x14007c4aa
mov al, byte [rbx + 0x63]
and eax, 0xa
cmp al, 8
je 0x14007c54a
cmp byte [rsi + 0x4c], 0
je 0x14007c4aa
mov al, byte [rbx + 0x18]
dec eax
cmp al, 1
ja 0x14007c4aa
cmp dword [rbx + 0x3c], 0xffffffff
jne 0x14007c588
and dl, 0x10
jne 0x14007c4aa
test ebp, ebp
jne 0x14007c4aa
cmp byte [rbx + 0x18], 2
jne 0x14007c4aa
mov rdx, rbx
mov rcx, rdi
call fcn.140094bba
test al, al
je 0x14007c61c
cmp dword [rbx + 0x3c], 0xffffffff
je 0x14007c4aa
mov rbp, qword [rbx + 0x58]
lea r13, str._binutils_2.40_bfd_elfxx_x86.c
test rbp, rbp
je 0x14007c00a
mov rax, qword [rbp + 8]
test byte [rbx + 0x8c], 0x20
je 0x14007c5e3
test byte [rdi], 2
jne 0x14007c5e3
mov rdx, qword [rax + 0x60]
test rdx, rdx
je 0x14007c5e3
test byte [rdx + 0x24], 8
je 0x14007c5e3
mov rcx, qword [rbx + 0x28]
mov rdx, qword [rax + 0xe0]
mov rax, qword [rdi + 0x20]
mov r8, qword [rbx + 8]
mov r9, qword [rcx + 0xe0]
lea rcx, str._F_P:__pB:_copy_relocation_against_non_copyable_protected_symbol___s_in__pB_n
call qword [rax + 0x58]
jmp 0x14007c61c
mov rax, qword [rax + 0xd0]
mov r12, qword [rax + 0xa8]
test r12, r12
jne 0x14007c603
mov edx, 0x222
mov rcx, r13
call fcn.14004aa8a
mov eax, dword [rsi + 0x7f0]
imul rax, qword [rbp + 0x10]
mov rbp, qword [rbp]
add qword [r12 + 0x40], rax
jmp 0x14007c593
xor eax, eax
jmp 0x14007c64a
test r14, r14
jle 0x14007c111
mov rax, qword [rbx + 0x90]
mov qword [rbx + 0x28], r8
mov qword [rbx + 0x30], rax
jmp 0x14007c101
mov qword [rbx + 0x28], rdx
mov rcx, qword [rbx + 0x48]
jmp 0x14007c125
add rsp, 0x48
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret