Function at 0x1400040e4
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x1405eaab8]
xor rax, rsp
mov qword [rbp - 8], rax
mov r15, rcx
xor r12d, r12d
mov dword [rbp - 0x30], r12d
mov rax, qword [rcx + 0x10]
movsxd rdi, dword [rax + 0x3c]
add rdi, rax
lea rbx, [rdi + 0x90]
lea rcx, [rdi + 0x88]
lea r9, [rbp - 0x30]
mov esi, 0x80
lea r8d, [r12 + 4]
mov edx, esi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x140004365
xor eax, eax
mov qword [rdi + 0xe8], rax
cmp dword [rbx], r12d
je 0x1400041b1
mov edx, dword [rbx + 4]
mov ecx, dword [rbx]
add rcx, qword [r15 + 0x10]
lea r9, [rbp - 0x30]
lea r8d, [r12 + 4]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x140004365
mov r8d, dword [rbx + 4]
mov ecx, dword [rbx]
add rcx, qword [r15 + 0x10]
xor edx, edx
call fcn.1401dd2b6
mov edx, dword [rbx + 4]
mov ecx, dword [rbx]
add rcx, qword [r15 + 0x10]
lea r9, [rbp - 0x30]
lea r8d, [r12 + 2]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x14000443d
xor eax, eax
mov qword [rbx], rax
lea r9, [rbp - 0x30]
lea r8d, [rax + 2]
mov rdx, rsi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x140004457
mov r14, qword [r15 + 0x30]
mov rsi, qword [r15 + 0x38]
mov qword [rbp - 0x50], rsi
cmp r14, rsi
je 0x140004398
mov rdx, qword [r14]
xorps xmm0, xmm0
movups xmmword [rbp - 0x28], xmm0
mov qword [rbp - 0x18], r12
mov qword [rbp - 0x10], r12
or r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], r12b
jne 0x1400041fd
lea rcx, [rbp - 0x28]
call fcn.14000d5c4
nop
lea r12, [rbp - 0x28]
mov rbx, qword [rbp - 0x28]
mov r13, qword [rbp - 0x10]
cmp r13, 0x10
cmovae r12, rbx
mov rax, qword [rbp - 0x18]
cmp rax, 6
jb 0x140004280
lea r8, [rax - 5]
add r8, r12
sub r8, r12
mov rcx, r12
jmp 0x14000426a
mov r8d, 6
lea rdx, str..reloc
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400042c3
inc rsi
mov r8, qword [rbp - 0x18]
add r8, 0xfffffffffffffffb
add r8, r12
sub r8, rsi
mov rcx, rsi
mov edx, 0x2e
call sub.VCRUNTIME140.dll_memchr
test rax, rax
mov rsi, rax
jne 0x14000423d
mov rsi, qword [rbp - 0x50]
xor r12d, r12d
cmp r13, 0x10
jb 0x1400042ba
lea rdx, [r13 + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x1400042b2
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004391
mov rcx, rbx
call fcn.1401dc738
add r14, 8
jmp 0x1400041de
sub rsi, r12
cmp rsi, 0xffffffffffffffff
je 0x14000427c
mov rax, qword [r14]
mov edx, dword [rax + 0x10]
mov ecx, dword [rax + 0xc]
add rcx, qword [r15 + 0x10]
lea r9, [rbp - 0x30]
mov r8d, 4
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
xor r12d, r12d
test eax, eax
je 0x140004332
mov rax, qword [r14]
mov r8d, dword [rax + 0x10]
mov ecx, dword [rax + 0xc]
add rcx, qword [r15 + 0x10]
xor edx, edx
call fcn.1401dd2b6
mov rax, qword [r14]
mov edx, dword [rax + 0x10]
mov ecx, dword [rax + 0xc]
add rcx, qword [r15 + 0x10]
lea r9, [rbp - 0x30]
lea r8d, [r12 + 2]
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x140004409
mov rsi, qword [rbp - 0x50]
jmp 0x140004283
cmp r13, 0x10
jb 0x140004365
lea rdx, [r13 + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x14000435d
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140004391
mov rcx, rbx
call fcn.1401dc738
xor al, al
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.1401dc200
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
movzx ebx, word [rdi + 0x14]
add rbx, 0x18
add rbx, rdi
mov esi, r12d
cmp r12w, word [rdi + 6]
jae 0x140004402
mov r14d, 0x28
lea r9, [rbp - 0x30]
mov r8d, 4
mov rdx, r14
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x140004365
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx], xmm0
movups xmmword [rbx + 0x10], xmm0
mov qword [rbx + 0x20], rax
lea r9, [rbp - 0x30]
lea r8d, [rax + 2]
mov rdx, r14
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
je 0x140004423
inc esi
add rbx, r14
movzx eax, word [rdi + 6]
cmp esi, eax
jl 0x1400043b3
mov al, 1
jmp 0x140004367
lea rcx, [rbp - 0x48]
call fcn.140001534
lea rdx, [0x14045a9e8]
lea rcx, [rbp - 0x48]
call sub.VCRUNTIME140.dll__CxxThrowException
nop
lea rcx, [rbp - 0x48]
call fcn.140001534
lea rdx, [0x14045a9e8]
lea rcx, [rbp - 0x48]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
lea rcx, [rbp - 0x48]
call fcn.140001534
lea rdx, [0x14045a9e8]
lea rcx, [rbp - 0x48]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
lea rcx, [rbp - 0x48]
call fcn.140001534
lea rdx, [0x14045a9e8]
lea rcx, [rbp - 0x48]
call sub.VCRUNTIME140.dll__CxxThrowException
int3