Function at 0x180008b70
Capabilities:
Enumerate pe sections

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x47]
sub rsp, 0xa0
mov rsi, rcx
xor edi, edi
mov ebx, edx
movabs rax, 0xfe13b9c80c67f693
mul rbx
shr rdx, 0xe
imul rax, rdx, 0x407c
sub rbx, rax
mov ecx, edx
mov rax, qword [0x180058b70]
lea rcx, [rax + rcx*8]
call fcn.180004820
mov ecx, ebx
lea rcx, [rax + rcx*8]
call fcn.180004820
lea rbx, [rax + 0x10]
lea rax, [rbx - 0xfffff8]
movabs rcx, 0x7ffffef00010
cmp rax, rcx
ja 0x180008de9
mov rax, qword [sym.imp.KERNEL32.dll_IsBadHugeReadPtr]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40
mov rcx, rbx
call fcn.18002de76
test eax, eax
jne 0x180008de9
movzx eax, byte [rbx]
mov byte [rbp + 7], al
movzx eax, byte [rbx + 1]
mov byte [rbp + 8], al
movzx eax, byte [rbx + 2]
mov byte [rbp + 9], al
movzx eax, byte [rbx + 3]
mov byte [rbp + 0xa], al
movzx eax, byte [rbx + 4]
mov byte [rbp + 0xb], al
movzx eax, byte [rbx + 5]
mov byte [rbp + 0xc], al
movzx eax, byte [rbx + 6]
mov byte [rbp + 0xd], al
movzx eax, byte [rbx + 7]
mov byte [rbp + 0xe], al
movzx eax, byte [rbx + 8]
mov byte [rbp + 0xf], al
movzx eax, byte [rbx + 9]
mov byte [rbp + 0x10], al
movzx eax, byte [rbx + 0xa]
mov byte [rbp + 0x11], al
movzx eax, byte [rbx + 0xb]
mov byte [rbp + 0x12], al
movzx eax, byte [rbx + 0xc]
mov byte [rbp + 0x13], al
movzx eax, byte [rbx + 0xd]
mov byte [rbp + 0x14], al
movzx eax, byte [rbx + 0xe]
mov byte [rbp + 0x15], al
movzx eax, byte [rbx + 0xf]
mov byte [rbp + 0x16], al
movzx eax, byte [rbx + 0x10]
mov byte [rbp + 0x17], al
movzx eax, byte [rbx + 0x11]
mov byte [rbp + 0x18], al
movzx eax, byte [rbx + 0x12]
mov byte [rbp + 0x19], al
movzx eax, byte [rbx + 0x13]
mov byte [rbp + 0x1a], al
movzx eax, byte [rbx + 0x14]
mov byte [rbp + 0x1b], al
movzx eax, byte [rbx + 0x15]
mov byte [rbp + 0x1c], al
movzx eax, byte [rbx + 0x16]
mov byte [rbp + 0x1d], al
movzx eax, byte [rbx + 0x17]
mov byte [rbp + 0x1e], al
movzx eax, byte [rbx + 0x18]
mov byte [rbp + 0x1f], al
movzx eax, byte [rbx + 0x19]
mov byte [rbp + 0x20], al
movzx eax, byte [rbx + 0x1a]
mov byte [rbp + 0x21], al
movzx eax, byte [rbx + 0x1b]
mov byte [rbp + 0x22], al
movzx eax, byte [rbx + 0x1c]
mov byte [rbp + 0x23], al
movzx eax, byte [rbx + 0x1d]
mov byte [rbp + 0x24], al
movzx eax, byte [rbx + 0x1e]
mov byte [rbp + 0x25], al
movzx eax, byte [rbx + 0x1f]
mov byte [rbp + 0x26], al
movzx eax, byte [rbx + 0x20]
mov byte [rbp + 0x27], al
movzx eax, byte [rbx + 0x21]
mov byte [rbp + 0x28], al
movzx eax, byte [rbx + 0x22]
mov byte [rbp + 0x29], al
movzx eax, byte [rbx + 0x23]
mov byte [rbp + 0x2a], al
movzx eax, byte [rbx + 0x24]
mov byte [rbp + 0x2b], al
movzx eax, byte [rbx + 0x25]
mov byte [rbp + 0x2c], al
movzx eax, byte [rbx + 0x26]
mov byte [rbp + 0x2d], al
movzx eax, byte [rbx + 0x27]
mov byte [rbp + 0x2e], al
movzx eax, byte [rbx + 0x28]
mov byte [rbp + 0x2f], al
movzx eax, byte [rbx + 0x29]
mov byte [rbp + 0x30], al
movzx eax, byte [rbx + 0x2a]
mov byte [rbp + 0x31], al
movzx eax, byte [rbx + 0x2b]
mov byte [rbp + 0x32], al
movzx eax, byte [rbx + 0x2c]
mov byte [rbp + 0x33], al
movzx eax, byte [rbx + 0x2d]
mov byte [rbp + 0x34], al
movzx eax, byte [rbx + 0x2e]
mov byte [rbp + 0x35], al
movzx eax, byte [rbx + 0x2f]
mov byte [rbp + 0x36], al
movzx eax, byte [rbx + 0x30]
mov byte [rbp + 0x37], al
movzx eax, byte [rbx + 0x31]
mov byte [rbp + 0x38], al
movzx eax, byte [rbx + 0x32]
mov byte [rbp + 0x39], al
movzx eax, byte [rbx + 0x33]
mov byte [rbp + 0x3a], al
movzx eax, byte [rbx + 0x34]
mov byte [rbp + 0x3b], al
movzx eax, byte [rbx + 0x35]
mov byte [rbp + 0x3c], al
movzx eax, byte [rbx + 0x36]
mov byte [rbp + 0x3d], al
movzx eax, byte [rbx + 0x37]
mov byte [rbp + 0x3e], al
movzx eax, byte [rbx + 0x38]
mov byte [rbp + 0x3f], al
movzx eax, byte [rbx + 0x39]
mov byte [rbp + 0x40], al
movzx eax, byte [rbx + 0x3a]
mov byte [rbp + 0x41], al
movzx eax, byte [rbx + 0x3b]
mov byte [rbp + 0x42], al
movzx eax, byte [rbx + 0x3c]
mov byte [rbp + 0x43], al
movzx eax, byte [rbx + 0x3d]
mov byte [rbp + 0x44], al
movzx eax, byte [rbx + 0x3e]
mov byte [rbp + 0x45], al
movzx eax, byte [rbx + 0x3f]
mov byte [rbp + 0x46], al
movdqu xmm0, xmmword [rbp + 0x37]
movdqu xmm1, xmmword [rbp + 0x27]
movdqu xmm2, xmmword [rbp + 0x17]
movdqu xmm3, xmmword [rbp + 7]
jmp 0x180008df5
xorps xmm3, xmm3
xorps xmm2, xmm2
xorps xmm1, xmm1
xorps xmm0, xmm0
movaps xmmword [rbp + 7], xmm3
movaps xmmword [rbp + 0x17], xmm2
movaps xmmword [rbp + 0x27], xmm1
movaps xmmword [rbp + 0x37], xmm0
xorps xmm0, xmm0
movups xmmword [rbp - 0x21], xmm0
mov qword [rbp - 0x11], rdi
mov qword [rbp - 9], rdi
lea rax, [rbp + 7]
mov r14, 0xffffffffffffffff
mov r8, r14
inc r8
cmp byte [rax + r8], dil
jne 0x180008e22
lea rdx, [rbp + 7]
lea rcx, [rbp - 0x21]
call fcn.180002c60
nop
lea rdx, [rbp - 0x21]
mov r8, qword [rbp - 0x21]
mov r9, qword [rbp - 9]
cmp r9, 0xf
cmova rdx, r8
mov rbx, qword [rbp - 0x11]
test rbx, rbx
je 0x180008e82
lea rcx, [rbx - 1]
mov rax, r14
cmp rcx, rax
cmovb rax, rcx
add rax, rdx
cmp byte [rax], 0x2f
je 0x180008e7d
nop dword [rax]
cmp rax, rdx
je 0x180008e82
dec rax
cmp byte [rax], 0x2f
jne 0x180008e70
sub rax, rdx
jmp 0x180008e85
mov rax, r14
cmp rax, 0xffffffffffffffff
je 0x180008f34
lea rcx, [rax + 1]
xorps xmm0, xmm0
movups xmmword [rbp + 7], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x17], xmm1
cmp rbx, rcx
jb 0x18000907b
sub rbx, rcx
cmp rbx, 0xffffffffffffffff
cmovb r14, rbx
lea rdx, [rbp - 0x21]
cmp r9, 0xf
cmova rdx, r8
add rdx, rcx
mov r8, r14
lea rcx, [rbp + 7]
call fcn.180002c60
mov rdx, qword [rbp - 9]
cmp rdx, 0xf
jbe 0x180008f0c
inc rdx
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180008f07
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180008fe4
call fcn.18002e234
movups xmm2, xmmword [rbp + 7]
movups xmmword [rbp - 0x21], xmm2
movups xmm1, xmmword [rbp + 0x17]
movups xmmword [rbp - 0x11], xmm1
movdqa xmm0, xmm1
psrldq xmm0, 8
movq r9, xmm0
movq rbx, xmm1
movq r8, xmm2
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
mov qword [rsi + 0x10], rdi
mov qword [rsi + 0x18], rdi
lea r15, [rbp - 0x21]
cmp r9, 0xf
cmova r15, r8
movabs r14, 0x7fffffffffffffff
cmp rbx, r14
ja 0x18000906f
cmp rbx, 0xf
ja 0x180008f7f
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], 0xf
movups xmm0, xmmword [r15]
movups xmmword [rsi], xmm0
jmp 0x180009015
mov rax, rbx
or rax, 0xf
cmp rax, r14
jbe 0x180008fb4
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.18002e23c
test rax, rax
je 0x180008fe4
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x180008ff3
mov r14, rax
mov ecx, 0x16
cmp rax, rcx
cmovb r14, rcx
lea rcx, [r14 + 1]
test rcx, rcx
je 0x180008ff3
cmp rcx, 0x1000
jb 0x180008feb
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x180009075
jmp 0x180008f99
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.18002e23c
mov rdi, rax
mov qword [rsi], rdi
mov qword [rsi + 0x10], rbx
mov qword [rsi + 0x18], r14
lea r8, [rbx + 1]
mov rdx, r15
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov r9, qword [rbp - 9]
mov r8, qword [rbp - 0x21]
cmp r9, 0xf
jbe 0x18000904f
lea rdx, [r9 + 1]
mov rax, r8
cmp rdx, 0x1000
jb 0x180009047
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180009047
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r8
call fcn.18002e234
mov rax, rsi
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.180001510
nop
call fcn.180001470
int3
call fcn.180006d60
int3