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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0xb8
lea rbp, [rsp + 0xf0]
xorps xmm4, xmm4
movaps xmmword [rbp - 0x60], xmm4
xor eax, eax
mov qword [rbp - 0x50], rax
mov rsi, qword [0x1402570a8]
mov rax, rsi
cmp word [rax], 0x5a4d
jne 0x1400d8bdc
movsxd rdx, dword [rax + 0x3c]
cmp word [rsi + rdx + 0x18], 0x20b
sete dl
movzx edx, dl
jmp 0x1400d8bde
xor edx, edx
mov byte [0x1402570a0], dl
xor edi, edi
xor ebx, ebx
cmp byte [0x1402570a0], 0
je 0x1400d8bfa
movsxd rbx, dword [rax + 0x3c]
add rbx, rsi
jmp 0x1400d8c05
movsxd rdi, dword [rax + 0x3c]
add rdi, rsi
mov eax, dword [rdi]
jmp 0x1400d8c07
mov eax, dword [rbx]
cmp eax, 0x4550
jne 0x1400d9260
call fcn.14012bd50
cmp eax, 8
je 0x1400d8c23
mov ecx, 0x40
jmp 0x1400d8c28
mov ecx, 0x60
call fcn.1400d9390
mov rsi, rax
call fcn.14012bd50
cmp eax, 8
je 0x1400d8c41
mov ecx, 0x10
jmp 0x1400d8c46
mov ecx, 0x18
movsxd rcx, ecx
call fcn.1400b8750
mov qword [rbp - 0x40], rax
mov rcx, qword [0x140255bf8]
mov r14, qword [rcx + 8]
lea r15, [0x14014c208]
lea rcx, [0x14018af88]
mov edx, 0xc
call fcn.140002490
xor ecx, ecx
mov edx, ecx
lea r8, [0x140136f38]
movzx r8d, word [r8 + rdx*2 + 0xc]
mov r9d, ecx
sar r9d, 0x1f
and r9d, 0xf
add r9d, ecx
and r9d, 0xfffffff0
mov r10d, ecx
sub r10d, r9d
cmp r10d, 0x10
jae 0x1400d8d49
mov r9d, r10d
movzx r9d, word [r15 + r9*2 + 0xc]
xor r8d, r9d
mov word [rax + rdx*2 + 0x10], r8w
inc ecx
cmp ecx, 0xc
jl 0x1400d8c77
mov rcx, rax
call fcn.1400779d0
mov r15, rax
lea r12, [0x140142570]
lea rcx, [0x14018af88]
mov edx, 0xe
call fcn.140002490
xor ecx, ecx
mov edx, ecx
lea r8, [0x140137300]
movzx r8d, word [r8 + rdx*2 + 0xc]
mov r9d, ecx
sar r9d, 0x1f
and r9d, 0xf
add r9d, ecx
and r9d, 0xfffffff0
mov r10d, ecx
sub r10d, r9d
cmp r10d, 0x10
jae 0x1400d8d49
mov r9d, r10d
movzx r9d, word [r12 + r9*2 + 0xc]
xor r8d, r9d
mov word [rax + rdx*2 + 0x10], r8w
inc ecx
cmp ecx, 0xe
jl 0x1400d8ce6
mov rcx, rax
call fcn.1400779d0
mov r12, rax
mov rcx, r15
call fcn.1400d64a0
test rax, rax
jne 0x1400d8d4e
xor r15d, r15d
jmp 0x1400d8d5c
call fcn.1400c96a0
mov rcx, rax
mov rdx, r12
call fcn.1400d6590
mov r15, rax
test r15, r15
je 0x1400d903a
xor ecx, ecx
mov dword [rsp + 0x20], ecx
mov dword [rsp + 0x28], 4
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], rsi
mov rax, qword [rbp - 0x40]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], r15
mov rcx, r14
lea rdx, [0x140136a70]
xor r8d, r8d
xor r9d, r9d
call fcn.140073020
test eax, eax
je 0x1400d903a
test rsi, 0xffffffffffff0000
je 0x1400d8dde
mov rcx, rsi
mov qword [rbp - 0x68], rcx
lea rcx, [rbp - 0x90]
call fcn.140002800
mov rcx, qword [rbp - 0x68]
call sub.KERNEL32.dll_LocalFree
lea rcx, [rbp - 0x90]
call fcn.140002850
cmp byte [0x1402570a0], 0
jne 0x1400d916a
mov esi, dword [rdi + 0x34]
mov rax, qword [rbp - 0x40]
mov r14, qword [rax]
mov r15, rax
call fcn.14012bd50
cmp eax, 8
je 0x1400d9173
mov ecx, 4
movsxd rcx, ecx
mov r15, qword [r15 + rcx]
mov rcx, r14
mov rdx, rsi
call fcn.1400d95a0
test r14, r14
je 0x1400d9144
test r15, r15
je 0x1400d9144
movzx ecx, byte [0x1402570a0]
test ecx, ecx
jne 0x1400d917d
mov r8d, dword [rdi + 0x50]
test ecx, ecx
jne 0x1400d9186
mov r12d, dword [rdi + 0x54]
test ecx, ecx
jne 0x1400d918f
movzx edx, word [rdi + 6]
movzx r13d, dx
test ecx, ecx
jne 0x1400d9198
mov eax, dword [rdi + 0x28]
mov dword [rbp - 0x44], eax
mov dword [rsp + 0x20], 0x40
mov rcx, r14
mov rdx, rsi
mov r9d, 0x3000
call fcn.1400d6b10
mov rsi, rax
mov r8, qword [0x1402570a8]
xor ecx, ecx
mov dword [rbp - 0x50], ecx
lea rcx, [rbp - 0x50]
mov qword [rsp + 0x20], rcx
mov rcx, r14
mov rdx, rsi
mov r9d, r12d
call fcn.1400d9610
test eax, eax
jne 0x1400d911e
cmp byte [0x1402570a0], 0
jne 0x1400d91a0
add rdi, 0xf8
xor ebx, ebx
test r13d, r13d
jle 0x1400d8f0c
mov edx, dword [rdi + 0xc]
add rdx, rsi
mov r8d, dword [rdi + 0x14]
add r8, qword [0x1402570a8]
mov r9d, dword [rdi + 0x10]
xor ecx, ecx
mov dword [rbp - 0x50], ecx
lea rcx, [rbp - 0x50]
mov qword [rsp + 0x20], rcx
mov rcx, r14
call fcn.1400d9610
test eax, eax
jne 0x1400d90f8
add rdi, 0x28
inc ebx
cmp ebx, r13d
jl 0x1400d8ece
cmp byte [0x1402570a0], 0
jne 0x1400d91ac
mov ecx, 0x2cc
movsxd rcx, ecx
call fcn.1400b8750
mov rdi, rax
cmp byte [0x1402570a0], 0
je 0x1400d91b6
mov dword [rdi + 0x30], 0x10001b
cmp byte [0x1402570a0], 0
jne 0x1400d91c1
mov rcx, r15
mov rdx, rdi
call fcn.1400d9520
test eax, eax
je 0x1400d90d2
mov ebx, dword [rdi + 0xa4]
mov r12, qword [rdi + 0x88]
mov rcx, rsi
call fcn.14007e060
cmp byte [0x1402570a0], 0
jne 0x1400d91d9
add ebx, 8
movsxd rdx, ebx
mov r9d, dword [rax + 8]
xor ecx, ecx
mov qword [rbp - 0x60], rcx
mov dword [rbp - 0x50], ecx
mov qword [rbp - 0x60], rax
mov rcx, qword [rbp - 0x60]
cmp dword [rcx + 8], 0
jne 0x1400d91e3
xor r8d, r8d
lea rcx, [rbp - 0x50]
mov qword [rsp + 0x20], rcx
mov rcx, r14
call fcn.1400d9610
xor ecx, ecx
test eax, eax
sete cl
xor edx, edx
mov qword [rbp - 0x60], rdx
test ecx, ecx
je 0x1400d9086
cmp byte [0x1402570a0], 0
je 0x1400d91ff
mov ecx, dword [rbp - 0x44]
add rcx, rsi
mov qword [rdi + 0x80], rcx
cmp byte [0x1402570a0], 0
jne 0x1400d9211
mov rcx, r15
mov rdx, rdi
call fcn.1400d6690
test eax, eax
je 0x1400d9060
mov rcx, r15
call fcn.1400d6750
mov qword [rbp - 0x58], r14
jmp 0x1400d923f
lea rcx, [0x140157990]
call fcn.140002370
mov rsi, rax
mov rcx, rsi
lea rdx, [0x14013e628]
call fcn.14007c440
mov rcx, rsi
call fcn.140002960
lea rcx, [0x140157990]
call fcn.140002370
mov rsi, rax
mov rcx, rsi
lea rdx, [0x14013e2f0]
call fcn.14007c440
mov rcx, rsi
call fcn.140002960
lea rcx, [0x140157990]
call fcn.140002370
mov rsi, rax
mov rcx, rsi
lea rdx, [0x14013e628]
call fcn.14007c440
mov rcx, rsi
call fcn.140002960
lea rcx, [0x140157990]
call fcn.140002370
mov rsi, rax
mov rcx, rsi
lea rdx, [0x14013e6e0]
call fcn.14007c440
mov rcx, rsi
call fcn.140002960
lea rcx, [0x140157990]
call fcn.140002370
mov rsi, rax
mov rcx, rsi
lea rdx, [0x14013e3a0]
call fcn.14007c440
mov rcx, rsi
call fcn.140002960
lea rcx, [0x140157990]
call fcn.140002370
mov rsi, rax
mov rcx, rsi
lea rdx, [0x14013e410]
call fcn.14007c440
mov rcx, rsi
call fcn.140002960
lea rcx, [0x140157990]
call fcn.140002370
mov rsi, rax
mov rcx, rsi
lea rdx, [0x14013e768]
call fcn.14007c440
mov rcx, rsi
call fcn.140002960
lea rcx, [0x140157990]
call fcn.140002370
mov rsi, rax
mov rcx, rsi
lea rdx, [0x14013e678]
call fcn.14007c440
mov rcx, rsi
call fcn.140002960
lea rcx, [0x140157990]
call fcn.140002370
mov rsi, rax
mov rcx, rsi
lea rdx, [0x14013e338]
call fcn.14007c440
mov rcx, rsi
call fcn.140002960
mov rsi, qword [rbx + 0x30]
jmp 0x1400d8dee
mov ecx, 8
jmp 0x1400d8e0b
mov r8d, dword [rbx + 0x50]
jmp 0x1400d8e42
mov r12d, dword [rbx + 0x54]
jmp 0x1400d8e4e
movzx edx, word [rbx + 6]
jmp 0x1400d8e5a
mov eax, dword [rbx + 0x28]
jmp 0x1400d8e69
lea rdi, [rbx + 0x108]
jmp 0x1400d8ec7
mov ecx, 0x4d0
jmp 0x1400d8f1e
mov dword [rdi], 0x10002
jmp 0x1400d8f3d
mov rcx, r15
mov rdx, rdi
call fcn.1400d94c0
test eax, eax
je 0x1400d90ac
jmp 0x1400d8f5d
lea rdx, [r12 + 0x10]
jmp 0x1400d8f85
mov r8, qword [rbp - 0x60]
cmp dword [r8 + 8], 0
jbe 0x1400d8d49
mov r8, qword [rbp - 0x60]
add r8, 0x10
jmp 0x1400d8fa7
mov ecx, dword [rbp - 0x44]
add rcx, rsi
mov qword [rdi + 0xb0], rcx
jmp 0x1400d8fe7
mov rcx, r15
mov rdx, rdi
call fcn.1400d66f0
test eax, eax
je 0x1400d9014
jmp 0x1400d9003
mov rcx, rsp
call fcn.1400d92da
nop
mov rax, qword [rbp - 0x58]
add rsp, 0xb8
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rcx, [0x140157990]
call fcn.140002370
mov rsi, rax
mov rcx, rsi
lea rdx, [0x14013fc40]
call fcn.14007c440
mov rcx, rsi
call fcn.140002960
xor eax, eax
jmp 0x1400d924c