Function at 0x1400d1f90
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0xf8
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x1402f4538]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov eax, dword [0x1402f5d00]
mov ecx, dword [0x1402f6910]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400d2648
mov rax, qword [rdi + 0x18]
cmp rax, 0x13
jbe 0x1400d2049
lea rbx, [rdi + 0x10]
cmp rax, 0x43
jbe 0x1400d2095
mov rcx, qword [rbx]
cmp byte [rcx], 0x4d
jne 0x1400d20a2
cmp byte [rcx + 1], 0x5a
jne 0x1400d20a2
mov r14d, dword [rcx + 0x3c]
cmp dword [rcx + r14], 0x4550
je 0x1400d2194
call fcn.140032f30
mov dword [rsp + 0xb0], 3
mov qword [rsp + 0xb8], rax
lea r8, str.incorrect_PE_magic
lea rdx, [rsp + 0xb0]
jmp 0x1400d24ae
call fcn.140032f30
mov dword [rsp + 0xc0], 4
mov qword [rsp + 0xc8], rax
lea rdx, [rsp + 0xc0]
mov rcx, rsi
call fcn.14001a120
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.140241350
mov rax, rsi
add rsp, 0xf8
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
call fcn.140032f30
mov rcx, qword [rdi + 0x10]
mov rax, qword [rdi + 0x18]
xor r14d, r14d
xor r15d, r15d
lea r12, [rcx + r14]
cmp r12, 0xffffffffffffffeb
ja 0x1400d20c1
add rax, rcx
add rcx, r14
add rcx, 0x14
cmp rcx, rax
jbe 0x1400d20ef
call fcn.140032f30
mov dword [rsp + 0xd0], 4
mov qword [rsp + 0xd8], rax
lea rdx, [rsp + 0xd0]
mov rcx, rsi
call fcn.14001a120
cmp qword [rsi], 0
jne 0x1400d2071
mov qword [rdi + 0x30], r12
mov qword [rsi], 0
test r15b, r15b
jne 0x1400d21a9
cmp word [r12], 0
jne 0x1400d21b2
cmp word [r12 + 2], 0xffff
jne 0x1400d21a5
cmp qword [rdi + 0x18], 0x37
jbe 0x1400d21a0
mov r9, qword [rdi + 0x10]
add r9, r14
movdqu xmm0, xmmword [rbx]
movups xmm1, xmmword [rbx + 0x10]
movaps xmmword [rsp + 0xa0], xmm1
movdqa xmmword [rsp + 0x90], xmm0
lea rbx, [rdi + 0x38]
lea r8, [rsp + 0x90]
mov rcx, rsi
mov rdx, rbx
call fcn.1400d26c0
cmp qword [rsi], 0
jne 0x1400d2071
mov rax, qword [rbx]
cmp word [rax + 4], 2
jb 0x1400d218b
movdqu xmm0, xmmword [rax + 0xc]
pcmpeqb xmm0, xmmword [0x140243400]
pmovmskb ecx, xmm0
cmp ecx, 0xffff
je 0x1400d2637
mov qword [rbx], 0
jmp 0x1400d21a5
add r14, 4
mov r15b, 1
jmp 0x1400d20a8
call fcn.140032f30
mov r12, qword [rdi + 0x30]
test r12, r12
je 0x1400d2237
mov eax, dword [0x1402f5d00]
mov ecx, dword [0x1402f6910]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x1400d267e
mov rax, qword [rdi + 0x30]
cmp word [rax + 2], 0xffff
je 0x1400d2210
add r14, 0x14
test r15b, r15b
jne 0x1400d223e
test rax, rax
je 0x1400d2346
movzx ecx, word [rax + 0x10]
add r14, rcx
movzx ecx, word [rax + 2]
xor edx, edx
cmp cx, 0xffff
cmovne edx, ecx
movzx ecx, dx
jmp 0x1400d234f
mov dword [rsp + 0x80], 0
lea rax, str._4__
mov qword [rsp + 0x88], rax
lea rdx, [rsp + 0x80]
jmp 0x1400d2069
xor eax, eax
test r15b, r15b
je 0x1400d21eb
mov rax, qword [rdi + 0x10]
lea rbx, [rax + r14]
cmp rbx, 0xffffffffffffff9f
ja 0x1400d225d
lea rcx, [rax + r14]
add rcx, 0x60
add rax, qword [rdi + 0x18]
cmp rcx, rax
jbe 0x1400d228f
call fcn.140032f30
mov dword [rsp + 0xd0], 4
mov qword [rsp + 0xd8], rax
lea rdx, [rsp + 0xd0]
mov rcx, rsi
call fcn.14001a120
cmp qword [rsi], 0
jne 0x1400d2071
mov qword [rsi], 0
movzx eax, word [rbx]
cmp eax, 0x10b
jne 0x1400d22b6
mov qword [rdi + 0x40], rbx
mov rax, qword [rdi + 0x10]
lea r15, [rax + r14]
add r15, 0x60
add rbx, 0x5c
jmp 0x1400d22d8
movzx eax, ax
cmp eax, 0x20b
jne 0x1400d2463
mov qword [rdi + 0x48], rbx
mov rax, qword [rdi + 0x10]
lea r15, [rax + r14]
add r15, 0x70
add rbx, 0x6c
mov edx, dword [rbx]
shl rdx, 3
mov rcx, rdx
add rcx, r15
jb 0x1400d22fc
cmp rcx, rdx
jb 0x1400d22fc
mov rdx, qword [rdi + 0x18]
add rdx, rax
cmp rcx, rdx
ja 0x1400d22fc
cmp rax, r15
jbe 0x1400d232e
call fcn.140032f30
mov dword [rsp + 0xd0], 4
mov qword [rsp + 0xd8], rax
lea rdx, [rsp + 0xd0]
mov rcx, rsi
call fcn.14001a120
cmp qword [rsi], 0
jne 0x1400d2071
mov qword [rdi + 0x50], r15
mov qword [rsi], 0
mov rax, qword [rdi + 0x30]
test rax, rax
jne 0x1400d21f4
mov rax, qword [rdi + 0x38]
mov ecx, dword [rax + 0x2c]
xor eax, eax
mov ecx, ecx
shl rcx, 3
lea r8, [rcx + rcx*4]
mov rcx, qword [rdi + 0x10]
add r14, rcx
mov rdx, r8
add rdx, r14
jb 0x1400d2376
cmp rdx, r8
jb 0x1400d2376
add rcx, qword [rdi + 0x18]
cmp rdx, rcx
jbe 0x1400d23ac
call fcn.140032f30
mov dword [rsp + 0xd0], 4
mov qword [rsp + 0xd8], rax
lea rdx, [rsp + 0xd0]
mov rcx, rsi
call fcn.14001a120
cmp qword [rsi], 0
jne 0x1400d2071
mov rax, qword [rdi + 0x30]
mov qword [rdi + 0x58], r14
mov qword [rsi], 0
test rax, rax
je 0x1400d243a
cmp word [rax + 2], 0xffff
je 0x1400d24bb
lea rcx, [rax + 8]
cmp dword [rcx], 0
je 0x1400d2447
lea rdx, [rsp + 0xd0]
mov rcx, rdi
call fcn.1400d1110
mov rax, qword [rsp + 0xd0]
test rax, rax
je 0x1400d24bb
mov qword [rsp + 0x68], rax
mov qword [rsp + 0xd0], 0
lea rcx, [rsp + 0x68]
call fcn.14008a6a0
pxor xmm0, xmm0
movdqu xmmword [rdi + 0x6c], xmm0
movdqu xmmword [rdi + 0x60], xmm0
mov rcx, qword [rsp + 0xd0]
test rcx, rcx
je 0x1400d24bb
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
jmp 0x1400d24bb
mov rcx, qword [rdi + 0x38]
add rcx, 0x30
cmp dword [rcx], 0
jne 0x1400d23d0
mov rcx, qword [rdi + 0x60]
or rcx, qword [rdi + 0x68]
je 0x1400d24bb
test rax, rax
je 0x1400d2483
cmp word [rax + 2], 0xffff
je 0x1400d24bb
add rax, 0xc
jmp 0x1400d248b
call fcn.140032f30
mov dword [rsp + 0x70], 3
mov qword [rsp + 0x78], rax
lea r8, str.incorrect_PE_magic
lea rdx, [rsp + 0x70]
jmp 0x1400d24ae
mov rax, qword [rdi + 0x38]
add rax, 0x34
cmp dword [rax], 0
je 0x1400d24bb
call fcn.140032f30
mov dword [rsp + 0x58], 3
mov qword [rsp + 0x60], rax
lea r8, str.symbol_table_missing
lea rdx, [rsp + 0x58]
mov rcx, rsi
call fcn.14001a6b0
jmp 0x1400d2071
lea rdx, [rsp + 0x50]
mov rcx, rdi
call fcn.1400d17c0
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1400d2536
mov rax, qword [rcx]
lea rdx, [0x1402f6960]
call qword [rax + 0x28]
mov rcx, qword [rsp + 0x50]
test al, al
je 0x1400d2538
mov qword [rsp + 0x50], 0
mov qword [rsp + 0xe8], rcx
lea rcx, [rsp + 0xd0]
lea rdx, [rsp + 0xe8]
lea r8, [rsp + 0xe0]
call fcn.14001aac0
mov qword [rsi], 0
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x1400d254d
mov rax, qword [rcx]
mov edx, 1
call qword [rax]
mov rcx, qword [rsi]
jmp 0x1400d2544
xor ecx, ecx
mov qword [rsi], rcx
mov qword [rsp + 0x50], 0
test rcx, rcx
jne 0x1400d2071
lea rbx, [rsp + 0x48]
mov rcx, rdi
mov rdx, rbx
call fcn.1400d18c0
mov rcx, rsi
mov rdx, rbx
call fcn.1400d2750
cmp qword [rsi], 0
jne 0x1400d2071
lea rbx, [rsp + 0x40]
mov rcx, rdi
mov rdx, rbx
call fcn.1400d19d0
mov rcx, rsi
mov rdx, rbx
call fcn.1400d2750
cmp qword [rsi], 0
jne 0x1400d2071
lea rbx, [rsp + 0x38]
mov rcx, rdi
mov rdx, rbx
call fcn.1400d1ad0
mov rcx, rsi
mov rdx, rbx
call fcn.1400d2750
cmp qword [rsi], 0
jne 0x1400d2071
lea rbx, [rsp + 0x30]
mov rcx, rdi
mov rdx, rbx
call fcn.1400d1be0
mov rcx, rsi
mov rdx, rbx
call fcn.1400d2750
cmp qword [rsi], 0
jne 0x1400d2071
lea rbx, [rsp + 0x28]
mov rcx, rdi
mov rdx, rbx
call fcn.1400d1d30
mov rcx, rsi
mov rdx, rbx
call fcn.1400d2750
cmp qword [rsi], 0
jne 0x1400d2071
lea rbx, [rsp + 0x20]
mov rcx, rdi
mov rdx, rbx
call fcn.1400d1e90
mov rcx, rsi
mov rdx, rbx
call fcn.1400d2750
cmp qword [rsi], 0
jne 0x1400d2071
mov qword [rsi], 0
jmp 0x1400d2071
mov qword [rdi + 0x30], 0
add r14, 0x38
jmp 0x1400d234a
lea rcx, [0x1402f5d00]
call fcn.14024119c
cmp dword [0x1402f5d00], 0xffffffff
jne 0x1400d1fdd
lea rcx, [fcn.1400039b0]
call fcn.140241370
lea rcx, [0x1402f5d00]
call fcn.140241204
jmp 0x1400d1fdd
lea rcx, [0x1402f5d00]
call fcn.14024119c
cmp dword [0x1402f5d00], 0xffffffff
jne 0x1400d21d7
lea rcx, [fcn.1400039b0]
call fcn.140241370
lea rcx, [0x1402f5d00]
call fcn.140241204
jmp 0x1400d21d7