Function at 0x3883fcfb0
Capabilities:
Enumerate pe sections
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, 0xa8
movaps xmmword [rsp + 0x90], xmm6
lea rbx, [0x38840aa28]
mov rdi, rcx
mov rcx, qword [0x38848a120]
mov qword [rsp + 0xf8], rdx
mov edx, 0x16
mov dword [rsp + 0x84], 0
call fcn.3883e9210
mov r11d, 0xffffc3e3
movdqa xmm0, xmmword [0x3884109b0]
mov edx, 0x50a651c6
mov rsi, rax
lea rcx, [0x38840ec80]
lea rax, [rax + 0x10]
mov word [rsi + 0x24], r11w
mov dword [rsi + 0x20], 0xff410000
movups xmmword [rsi + 0x10], xmm0
mov qword [rsp + 0x78], rax
call fcn.3883efd70
mov edx, 0x5c1ce6e2
mov rcx, rax
call fcn.3883f5070
mov qword [rsp + 0x48], rbx
test rax, rax
je 0x3883fd05c
lea rdx, [rax + 0x10]
cmp qword [rax], 0
cmove rdx, rbx
mov qword [rsp + 0x48], rdx
mov rcx, qword [rsp + 0x48]
xor r9d, r9d
mov r8d, 1
mov edx, 0x80000000
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], pe_nt_image_headers64
mov dword [rsp + 0x20], 3
call qword [0x3884a2a98]
xor edx, edx
mov r12, rax
mov rcx, rax
call qword [0x3884a2a90]
mov r10d, dword [0x3884a2ad8]
mov ebx, eax
test r10d, r10d
je 0x3883fd4f6
mov rax, qword [0x388489c40]
call qword [rax]
movsxd r8, ebx
xor edx, edx
mov rcx, rax
mov rax, qword [0x388489c30]
call qword [rax]
mov r13, rax
mov r8d, ebx
mov rcx, r12
mov rdx, r13
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x84]
call qword [0x3884a2a80]
movsxd r11, dword [r13 + 0x3c]
lea r14, [r13 + r11]
mov eax, dword [r14 + 0x88]
movzx ebx, word [r14 + 0x14]
mov dword [rsp + 0x40], eax
lea rax, [r14 + 0x18]
mov rcx, rax
add rax, rbx
cmp word [r14 + 6], 0
mov qword [rsp + 0x50], rax
je 0x3883fd537
mov qword [rsp + 0x58], rsi
mov rbp, rax
mov rsi, r14
xor r15d, r15d
movdqa xmm6, xmmword [0x388410820]
mov r14, rcx
jmp 0x3883fd147
mov rbp, rbx
movzx ebx, word [rsi + 0x14]
lea eax, [r15 + r15*4]
mov rcx, qword [0x38848a750]
add rbx, r14
mov edx, 0x19
shl eax, 3
movzx eax, ax
add rbx, rax
call fcn.3883e6c10
lea rcx, [0x38840ec50]
movups xmmword [rax], xmm6
movzx edx, byte [rbx]
mov r12, rax
mov byte [rax + 0x10], dl
movzx edx, byte [rbx + 1]
mov byte [rax + 0x11], dl
movzx edx, byte [rbx + 2]
mov byte [rax + 0x12], dl
movzx edx, byte [rbx + 3]
mov byte [rax + 0x13], dl
movzx edx, byte [rbx + 4]
mov byte [rax + 0x14], dl
movzx edx, byte [rbx + 5]
mov byte [rax + 0x15], dl
movzx edx, byte [rbx + 6]
mov byte [rax + 0x16], dl
movzx edx, byte [rbx + 7]
mov byte [rax + 0x17], dl
mov edx, 0x637f75c6
call fcn.3883f5070
xor r9d, r9d
xor r8d, r8d
mov rcx, r12
mov rdx, rax
call fcn.3883eb6a0
test rax, rax
cmovs rbx, rbp
add r15d, 1
cmp word [rsi + 6], r15w
ja 0x3883fd140
mov rsi, qword [rsp + 0x58]
movsxd rcx, dword [rsp + 0x40]
movsxd rdx, dword [rbx + 0xc]
movsxd rax, dword [rbx + 0x14]
add rcx, r13
sub rcx, rdx
lea r15, [rcx + rax]
movsxd rcx, dword [r15 + 0x1c]
movsxd rbp, dword [r15 + 0x20]
mov r9d, dword [r15 + 0x18]
add rcx, r13
add rbp, r13
sub rcx, rdx
sub rbp, rdx
add rcx, rax
add rbp, rax
mov qword [rsp + 0x60], rcx
test r9d, r9d
jle 0x3883fd33d
add rcx, 4
mov qword [rsp + 0x40], r15
xor r14d, r14d
mov r15, qword [rsp + 0xf8]
sub rcx, rbp
mov dword [rsp + 0x58], 0
mov qword [rsp + 0x68], rcx
lea rcx, [rsi + 0x11]
mov qword [rsp + 0x70], rcx
jmp 0x3883fd28c
test rcx, rcx
je 0x3883fd26e
test rdi, rdi
je 0x3883fd26e
mov rdx, rdi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x3883fd2a2
mov rax, qword [rsp + 0x40]
add rbp, 4
cmp dword [rax + 0x18], r12d
jle 0x3883fd345
movsxd rdx, dword [rbx + 0xc]
movsxd rax, dword [rbx + 0x14]
mov r14d, r12d
movsxd rcx, dword [rbp]
lea r12d, [r14 + 1]
add rcx, r13
sub rcx, rdx
add rcx, rax
cmp rdi, rcx
jne 0x3883fd258
mov rdx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x68]
mov r8d, dword [0x3884a2ad8]
movsxd rcx, dword [rdx + 0xc]
movsxd rax, dword [rax + rbp]
movsxd rdx, dword [rdx + 0x14]
test r8d, r8d
je 0x3883fd2d3
mov r11, qword [rsp + 0x60]
lea eax, [r14 + 8]
cdqe
movsxd rax, dword [r11 + rax*4]
add rax, r13
sub rax, rcx
mov rcx, qword [rsp + 0x48]
add rax, rdx
movzx edx, byte [rax + 4]
mov byte [rsi + 0x14], dl
movzx edx, byte [rax + 5]
mov byte [rsi + 0x15], dl
movzx edx, byte [rax + 6]
mov byte [rsi + 0x16], dl
movzx eax, byte [rax + 7]
mov byte [rsi + 0x17], al
call qword [0x3884a2a78]
mov rdx, rdi
mov rcx, rax
call qword [0x3884a2a70]
mov edx, 1
jmp 0x3883fd32e
add rdx, 1
add rax, 1
cmp rdx, 0x28
je 0x3883fd365
cmp byte [rax], 0xf
jne 0x3883fd320
cmp byte [rax + 1], 5
jne 0x3883fd320
mov edx, eax
jmp 0x3883fd369
mov dword [rsp + 0x58], 0
mov eax, dword [rsp + 0x58]
movaps xmm6, xmmword [rsp + 0x90]
add rsp, 0xa8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
xor edx, edx
xor eax, eax
mov rcx, rax
mov byte [rsi + 0x1b], ah
mov r14d, eax
mov r11d, eax
shr rcx, 0x38
mov r10, rax
mov r9, rax
mov r8, rax
mov qword [rsp + 0x58], rcx
shr r14d, 0x10
lea rcx, [rsi + 0x1a]
shr r11d, 0x18
mov qword [rsp + 0x88], rax
movzx eax, byte [rsp + 0x58]
shr r10, 0x20
shr r9, 0x28
shr r8, 0x30
mov byte [rsi + 0x1a], dl
mov byte [rcx + 2], r14b
mov byte [rcx + 3], r11b
mov byte [rcx + 4], r10b
mov byte [rcx + 5], r9b
mov byte [rcx + 6], r8b
mov byte [rcx + 7], al
mov rdx, qword [0x388409060]
test rdx, rdx
jle 0x3883fd4e9
mov rcx, r15
sub rcx, qword [rsp + 0x70]
lea rax, [rdx - 1]
mov r8, rdx
cmp rcx, 0xe
jbe 0x3883fd512
cmp rax, 6
jbe 0x3883fd512
cmp rax, 0xe
jbe 0x3883fd53f
mov rcx, rdx
xor eax, eax
and rcx, 0xfffffffffffffff0
nop dword [rax]
movdqu xmm1, xmmword [rsi + rax + 0x10]
movups xmmword [r15 + rax], xmm1
add rax, 0x10
cmp rax, rcx
jne 0x3883fd410
mov rcx, rdx
and rcx, 0xfffffffffffffff0
mov rax, rcx
cmp rcx, rdx
je 0x3883fd4e9
mov r8, rdx
sub r8, rcx
lea r9, [r8 - 1]
cmp r9, 6
jbe 0x3883fd463
mov r9, qword [rsi + rcx + 0x10]
mov qword [r15 + rcx], r9
mov rcx, r8
and rcx, 0xfffffffffffffff8
add rax, rcx
cmp r8, rcx
je 0x3883fd4e9
mov r10, qword [rsp + 0x78]
movzx ecx, byte [r10 + rax]
mov byte [r15 + rax], cl
lea rcx, [rax + 1]
cmp rdx, rcx
jle 0x3883fd4e9
movzx ecx, byte [r10 + rax + 1]
mov byte [r15 + rax + 1], cl
lea rcx, [rax + 2]
cmp rdx, rcx
jle 0x3883fd4e9
movzx ecx, byte [r10 + rax + 2]
mov byte [r15 + rax + 2], cl
lea rcx, [rax + 3]
cmp rdx, rcx
jle 0x3883fd4e9
movzx ecx, byte [r10 + rax + 3]
mov byte [r15 + rax + 3], cl
lea rcx, [rax + 4]
cmp rdx, rcx
jle 0x3883fd4e9
movzx ecx, byte [r10 + rax + 4]
mov byte [r15 + rax + 4], cl
lea rcx, [rax + 5]
cmp rdx, rcx
jle 0x3883fd4e9
movzx ecx, byte [r10 + rax + 5]
mov byte [r15 + rax + 5], cl
lea rcx, [rax + 6]
cmp rdx, rcx
jle 0x3883fd4e9
movzx edx, byte [r10 + rax + 6]
mov byte [r15 + rax + 6], dl
mov dword [rsp + 0x58], 1
jmp 0x3883fd26e
call qword [0x3884a2ad0]
movsxd r8, ebx
xor edx, edx
mov rcx, rax
call qword [0x3884a2a88]
mov r13, rax
jmp 0x3883fd0cb
xor eax, eax
nop dword [rax]
movzx ecx, byte [rsi + rax + 0x10]
mov byte [r15 + rax], cl
add rax, 1
cmp rdx, rax
jne 0x3883fd518
mov dword [rsp + 0x58], 1
jmp 0x3883fd26e
mov rbx, rax
jmp 0x3883fd1e2
xor eax, eax
xor ecx, ecx
jmp 0x3883fd447