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

Disassembly:
push rbx
sub rsp, 0x40
mov rax, qword [rcx + 0x128]
mov rbx, rcx
test rax, rax
jne 0x1800c3674
call fcn.1800c3900
mov qword [rbx + 0x128], rax
test rax, rax
jne 0x1800c3674
xorps xmm0, xmm0
mov qword [rsp + 0x30], rax
mov ecx, 0x20
mov qword [rsp + 0x38], rax
movups xmmword [rsp + 0x20], xmm0
call fcn.1801323fc
movups xmm0, xmmword [str.EAT__Failed_to_module_base]
mov qword [rsp + 0x20], rax
mov edx, 2
mov qword [rsp + 0x30], 0x1b
mov qword [rsp + 0x38], 0x1f
movups xmmword [rax], xmm0
movsd xmm0, qword [0x180218c80]
movsd qword [rax + 0x10], xmm0
movzx ecx, word [0x180218c88]
mov word [rax + 0x18], cx
movzx ecx, byte [0x180218c8a]
mov byte [rax + 0x1a], cl
lea rcx, [rsp + 0x20]
mov byte [rax + 0x1b], 0
call fcn.1800c0ef0
xor eax, eax
add rsp, 0x40
pop rbx
ret
mov rcx, rbx
add rsp, 0x40
pop rbx
jmp 0x1800c3690
mov qword [rsp + 8], rcx
sub rsp, 0x88
mov rdx, qword [rcx + 0x128]
mov r8, rcx
test rdx, rdx
je 0x1800c3732
movsxd rax, dword [rdx + 0x3c]
mov ecx, dword [rax + rdx + 0x88]
test ecx, ecx
jne 0x1800c373c
xor eax, eax
xorps xmm0, xmm0
mov ecx, 0x30
mov qword [rsp + 0x30], rax
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x38], rax
call fcn.1801323fc
movups xmm0, xmmword [str.PEs_without_export_tables_are_unsupported]
mov qword [rsp + 0x20], rax
mov edx, 2
mov qword [rsp + 0x30], 0x29
mov qword [rsp + 0x38], 0x2f
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x180218cd0]
movups xmmword [rax + 0x10], xmm1
movsd xmm0, qword [0x180218ce0]
movsd qword [rax + 0x20], xmm0
movzx ecx, byte [0x180218ce8]
mov byte [rax + 0x28], cl
lea rcx, [rsp + 0x20]
mov byte [rax + 0x29], 0
call fcn.1800c0ef0
xor eax, eax
add rsp, 0x88
ret
mov eax, dword [rdx + rcx + 0x1c]
mov qword [rsp + 0x80], rbx
add rax, rdx
mov qword [rsp + 0x78], rbp
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x68], rdi
mov qword [rsp + 0x60], r12
lea r12, [rdx + rcx]
mov ecx, dword [rdx + rcx + 0x24]
mov qword [rsp + 0xa8], rax
add rcx, rdx
mov eax, dword [r12 + 0x20]
mov qword [rsp + 0x58], r13
add rax, rdx
mov qword [rsp + 0x50], r14
xor r14d, r14d
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x98], rax
mov qword [rsp + 0xa0], rcx
cmp dword [r12 + 0x18], r14d
jbe 0x1800c3825
lea r15, [r8 + 0x38]
nop dword [rax + rax]
cmp qword [r15 + 0x18], 0xf
mov rbp, r15
jbe 0x1800c37bd
mov rbp, qword [r15]
mov esi, dword [rax + r14*4]
add rsi, qword [r8 + 0x128]
nop dword [rax + rax]
movzx ecx, byte [rsi]
lea rsi, [rsi + 1]
movzx edi, byte [rbp]
lea rbp, [rbp + 1]
call fcn.1801aec80
mov ecx, eax
call fcn.1801aec54
mov ecx, edi
mov ebx, eax
call fcn.1801aec80
mov ecx, eax
call fcn.1801aec54
cmp ebx, eax
jne 0x1800c380b
test ebx, ebx
jne 0x1800c37d0
cmp ebx, eax
je 0x1800c38e0
mov r8, qword [rsp + 0x90]
inc r14d
mov rax, qword [rsp + 0x98]
cmp r14d, dword [r12 + 0x18]
jb 0x1800c37b0
xorps xmm0, xmm0
mov qword [rsp + 0x30], 0
mov ecx, 0x20
mov qword [rsp + 0x38], 0
movups xmmword [rsp + 0x20], xmm0
call fcn.1801323fc
movups xmm0, xmmword [str.API_not_found_before_end_of_EAT]
mov qword [rsp + 0x20], rax
mov rdx, rax
mov qword [rsp + 0x30], 0x1f
mov qword [rsp + 0x38], 0x1f
movups xmmword [rax], xmm0
movsd xmm0, qword [0x180218d00]
movsd qword [rax + 0x10], xmm0
mov ecx, dword [0x180218d08]
mov dword [rax + 0x18], ecx
lea rcx, [rsp + 0x20]
movzx eax, word [0x180218d0c]
mov word [rdx + 0x1c], ax
movzx eax, byte [0x180218d0e]
mov byte [rdx + 0x1e], al
mov byte [rdx + 0x1f], 0
mov edx, 2
call fcn.1800c0ef0
xor eax, eax
mov r14, qword [rsp + 0x50]
mov r13, qword [rsp + 0x58]
mov r12, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x80]
mov r15, qword [rsp + 0x48]
add rsp, 0x88
ret
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0xa8]
movzx eax, word [rax + r14*2]
lea rax, [rcx + rax*4]
jmp 0x1800c38ad