Function at 0x14019c1e0
Capabilities:
Enumerate pe sections

Disassembly:
mov dword [rsp + 0x18], r8d
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x48
lea rbp, [rdx + rdx]
mov r14, r9
mov r13, rbp
lea r10, [r9 + 0x10]
shl r13, 6
mov r15, rdx
mov rdi, rcx
xor r11d, r11d
lea rsi, [r9 + r13]
nop dword [rax]
mov r9d, r11d
shl r9d, 6
add r9, rdi
movzx eax, byte [r9 + 2]
movzx r8d, byte [r9 + 3]
shl r8d, 8
add r8d, eax
movzx eax, byte [r9 + 1]
shl r8d, 8
add r8d, eax
movzx eax, byte [r9]
shl r8d, 8
add r8d, eax
mov dword [rsi], r8d
movzx eax, byte [r9 + 6]
movzx ecx, byte [r9 + 7]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 5]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 4]
shl ecx, 8
add ecx, eax
mov dword [rsi + 4], ecx
movzx eax, byte [r9 + 0xa]
movzx ecx, byte [r9 + 0xb]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 9]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 8]
shl ecx, 8
add ecx, eax
mov dword [rsi + 8], ecx
movzx eax, byte [r9 + 0xe]
movzx ecx, byte [r9 + 0xf]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0xd]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0xc]
shl ecx, 8
add ecx, eax
mov dword [rsi + 0xc], ecx
movzx eax, byte [r9 + 0x12]
movzx ecx, byte [r9 + 0x13]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x11]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x10]
shl ecx, 8
add ecx, eax
mov dword [rsi + 0x10], ecx
movzx eax, byte [r9 + 0x16]
movzx edx, byte [r9 + 0x17]
shl edx, 8
add edx, eax
movzx eax, byte [r9 + 0x15]
shl edx, 8
add edx, eax
movzx eax, byte [r9 + 0x14]
shl edx, 8
add edx, eax
mov dword [rsi + 0x14], edx
movzx eax, byte [r9 + 0x1a]
movzx ecx, byte [r9 + 0x1b]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x19]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x18]
shl ecx, 8
add ecx, eax
mov dword [rsi + 0x18], ecx
movzx ecx, byte [r9 + 0x1f]
shl ecx, 8
movzx eax, byte [r9 + 0x1e]
add ecx, eax
movzx eax, byte [r9 + 0x1d]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x1c]
shl ecx, 8
add ecx, eax
mov dword [rsi + 0x1c], ecx
movzx eax, byte [r9 + 0x22]
movzx ecx, byte [r9 + 0x23]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x21]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x20]
shl ecx, 8
add ecx, eax
mov dword [rsi + 0x20], ecx
movzx eax, byte [r9 + 0x26]
movzx ecx, byte [r9 + 0x27]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x25]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x24]
shl ecx, 8
add ecx, eax
mov dword [rsi + 0x24], ecx
movzx eax, byte [r9 + 0x2a]
movzx ecx, byte [r9 + 0x2b]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x29]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x28]
shl ecx, 8
add ecx, eax
mov dword [rsi + 0x28], ecx
movzx eax, byte [r9 + 0x2e]
movzx ecx, byte [r9 + 0x2f]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x2d]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x2c]
shl ecx, 8
add ecx, eax
mov dword [rsi + 0x2c], ecx
movzx eax, byte [r9 + 0x32]
movzx ecx, byte [r9 + 0x33]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x31]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x30]
shl ecx, 8
add ecx, eax
mov dword [rsi + 0x30], ecx
movzx eax, byte [r9 + 0x36]
movzx ecx, byte [r9 + 0x37]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x35]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x34]
shl ecx, 8
add ecx, eax
mov dword [rsi + 0x34], ecx
movzx ecx, byte [r9 + 0x3b]
movzx eax, byte [r9 + 0x3a]
shl ecx, 8
add ecx, eax
shl ecx, 8
movzx eax, byte [r9 + 0x39]
lea r10, [r10 + 0x40]
add ecx, eax
inc r11d
movzx eax, byte [r9 + 0x38]
shl ecx, 8
add ecx, eax
mov dword [rsi + 0x38], ecx
movzx eax, byte [r9 + 0x3e]
movzx ecx, byte [r9 + 0x3f]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x3d]
shl ecx, 8
add ecx, eax
movzx eax, byte [r9 + 0x3c]
shl ecx, 8
add ecx, eax
mov eax, r8d
mov dword [rsi + 0x3c], ecx
mov ecx, edx
shl rcx, 0x20
or rcx, rax
mov qword [r10 - 0x50], rcx
mov eax, dword [rsi + 0x28]
mov ecx, dword [rsi + 0x3c]
shl rcx, 0x20
or rcx, rax
mov qword [r10 - 0x48], rcx
mov eax, dword [rsi + 0x10]
mov ecx, dword [rsi + 0x24]
shl rcx, 0x20
or rcx, rax
mov qword [r10 - 0x40], rcx
mov eax, dword [rsi + 0x38]
mov ecx, dword [rsi + 0xc]
shl rcx, 0x20
or rcx, rax
mov qword [r10 - 0x38], rcx
mov eax, dword [rsi + 0x20]
mov ecx, dword [rsi + 0x34]
shl rcx, 0x20
or rcx, rax
mov qword [r10 - 0x30], rcx
mov eax, dword [rsi + 8]
mov ecx, dword [rsi + 0x1c]
shl rcx, 0x20
or rcx, rax
mov qword [r10 - 0x28], rcx
mov eax, dword [rsi + 0x30]
mov ecx, dword [rsi + 4]
shl rcx, 0x20
or rcx, rax
mov qword [r10 - 0x20], rcx
mov ecx, dword [rsi + 0x2c]
mov eax, dword [rsi + 0x18]
shl rcx, 0x20
or rcx, rax
mov qword [r10 - 0x18], rcx
cmp r11d, 2
jb 0x14019c220
mov r12, qword [rsp + 0xb8]
mov ebx, 1
mov edi, dword [rsp + 0xa0]
cmp r15, rbx
jbe 0x14019c56f
lea eax, [rbx + rbx]
mov r9, r12
mov edx, eax
mov r8d, 1
add eax, 0xfffffffe
shl rdx, 6
mov ecx, eax
add rdx, r14
shl rcx, 6
add rcx, r14
call fcn.140198c10
inc ebx
mov eax, ebx
cmp rax, r15
jb 0x14019c540
mov r9, r12
mov r8, r15
mov rdx, rsi
mov rcx, r14
call fcn.140198c10
add rsi, r13
lea rcx, [r14 + r13]
mov rdx, rsi
mov r9, r12
mov r8, r15
call fcn.140198c10
mov ecx, 2
mov rax, r15
shl rax, 7
mov dword [rsp + 0x98], ecx
mov edx, dword [rax + rsi - 0x40]
cmp edi, ecx
jbe 0x14019c683
mov eax, edi
shr eax, 1
mov dword [rsp + 0x30], eax
nop dword [rax]
mov ebp, edi
mov edi, 1
sub ebp, ecx
dec ebp
cmp ecx, eax
cmovb ebp, ecx
cmp ebp, edi
jbe 0x14019c667
lea eax, [rcx - 1]
mov dword [rsp + 0xa8], eax
nop dword [rax]
nop word [rax + rax]
and edx, eax
mov qword [rsp + 0x20], r12
dec edx
lea rax, [r15 + r15]
add edx, edi
lea rbx, [rsi + r13]
imul rdx, rax
mov r9, r15
mov r8, rbx
shl rdx, 6
mov rcx, rsi
add rdx, r14
call fcn.1401996f0
and eax, dword [rsp + 0xa8]
lea rsi, [rbx + r13]
mov r9, r15
mov qword [rsp + 0x20], r12
mov r8, rsi
mov rcx, rbx
lea edx, [rdi + rax]
lea rax, [r15 + r15]
imul rdx, rax
shl rdx, 6
add rdx, r14
call fcn.1401996f0
add edi, 2
mov edx, eax
mov eax, dword [rsp + 0xa8]
cmp edi, ebp
jb 0x14019c5f0
mov ecx, dword [rsp + 0x98]
mov eax, dword [rsp + 0x30]
mov edi, dword [rsp + 0xa0]
add ecx, ecx
mov dword [rsp + 0x98], ecx
cmp ecx, edi
jb 0x14019c5c0
lea rbp, [r15 + r15]
shr ecx, 1
lea rdi, [rsi + r13]
mov dword [rsp + 0x98], ecx
mov r9, r15
mov r8, rdi
mov qword [rsp + 0x20], r12
lea ebx, [rcx - 1]
mov eax, ebx
and eax, edx
mov edx, dword [rsp + 0xa0]
add edx, 0xfffffffe
sub eax, ecx
add edx, eax
mov rcx, rsi
imul rdx, rbp
shl rdx, 6
add rdx, r14
call fcn.1401996f0
mov edx, dword [rsp + 0xa0]
and eax, ebx
sub eax, dword [rsp + 0x98]
dec edx
mov rbx, qword [rsp + 0xb0]
add edx, eax
imul rdx, rbp
mov r9, r15
mov qword [rsp + 0x20], r12
shl rdx, 6
mov r8, rbx
add rdx, r14
mov rcx, rdi
call fcn.1401996f0
test rbp, rbp
je 0x14019ca2a
mov r10, qword [rsp + 0x90]
xor r9d, r9d
mov r8d, r9d
nop dword [rax]
nop dword [rax + rax]
shl r8, 6
mov edx, r9d
add r8, rbx
shl edx, 6
add rdx, r10
mov ecx, dword [r8]
mov eax, ecx
mov byte [rbx + r13], cl
shr eax, 8
mov byte [rbx + r13 + 1], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 2], al
shr ecx, 0x18
mov byte [rbx + r13 + 3], cl
mov ecx, dword [r8 + 4]
mov eax, ecx
mov byte [rbx + r13 + 4], cl
shr eax, 8
mov byte [rbx + r13 + 5], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 6], al
shr ecx, 0x18
mov byte [rbx + r13 + 7], cl
mov ecx, dword [r8 + 8]
mov eax, ecx
mov byte [rbx + r13 + 8], cl
shr eax, 8
mov byte [rbx + r13 + 9], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0xa], al
shr ecx, 0x18
mov byte [rbx + r13 + 0xb], cl
mov ecx, dword [r8 + 0xc]
mov eax, ecx
mov byte [rbx + r13 + 0xc], cl
shr eax, 8
mov byte [rbx + r13 + 0xd], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0xe], al
shr ecx, 0x18
mov byte [rbx + r13 + 0xf], cl
mov ecx, dword [r8 + 0x10]
mov eax, ecx
mov byte [rbx + r13 + 0x10], cl
shr eax, 8
mov byte [rbx + r13 + 0x11], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0x12], al
shr ecx, 0x18
mov byte [rbx + r13 + 0x13], cl
mov ecx, dword [r8 + 0x14]
mov eax, ecx
mov byte [rbx + r13 + 0x14], cl
shr eax, 8
mov byte [rbx + r13 + 0x15], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0x16], al
shr ecx, 0x18
mov byte [rbx + r13 + 0x17], cl
mov ecx, dword [r8 + 0x18]
mov eax, ecx
mov byte [rbx + r13 + 0x18], cl
shr eax, 8
mov byte [rbx + r13 + 0x19], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0x1a], al
shr ecx, 0x18
mov byte [rbx + r13 + 0x1b], cl
mov ecx, dword [r8 + 0x1c]
mov eax, ecx
shr eax, 8
mov byte [rbx + r13 + 0x1c], cl
mov byte [rbx + r13 + 0x1d], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0x1e], al
shr ecx, 0x18
mov byte [rbx + r13 + 0x1f], cl
mov ecx, dword [r8 + 0x20]
mov eax, ecx
mov byte [rbx + r13 + 0x20], cl
shr eax, 8
mov byte [rbx + r13 + 0x21], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0x22], al
shr ecx, 0x18
mov byte [rbx + r13 + 0x23], cl
mov ecx, dword [r8 + 0x24]
mov eax, ecx
mov byte [rbx + r13 + 0x24], cl
shr eax, 8
mov byte [rbx + r13 + 0x25], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0x26], al
shr ecx, 0x18
mov byte [rbx + r13 + 0x27], cl
mov ecx, dword [r8 + 0x28]
mov eax, ecx
mov byte [rbx + r13 + 0x28], cl
shr eax, 8
mov byte [rbx + r13 + 0x29], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0x2a], al
shr ecx, 0x18
mov byte [rbx + r13 + 0x2b], cl
mov ecx, dword [r8 + 0x2c]
mov eax, ecx
mov byte [rbx + r13 + 0x2c], cl
shr eax, 8
mov byte [rbx + r13 + 0x2d], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0x2e], al
shr ecx, 0x18
mov byte [rbx + r13 + 0x2f], cl
mov ecx, dword [r8 + 0x30]
mov eax, ecx
mov byte [rbx + r13 + 0x30], cl
shr eax, 8
mov byte [rbx + r13 + 0x31], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0x32], al
shr ecx, 0x18
mov byte [rbx + r13 + 0x33], cl
mov ecx, dword [r8 + 0x34]
mov eax, ecx
mov byte [rbx + r13 + 0x34], cl
shr eax, 8
mov byte [rbx + r13 + 0x35], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0x36], al
shr ecx, 0x18
mov byte [rbx + r13 + 0x37], cl
mov ecx, dword [r8 + 0x38]
mov eax, ecx
shr eax, 8
mov byte [rbx + r13 + 0x38], cl
mov byte [rbx + r13 + 0x39], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0x3a], al
shr ecx, 0x18
mov byte [rbx + r13 + 0x3b], cl
mov ecx, dword [r8 + 0x3c]
mov eax, ecx
shr eax, 8
mov byte [rbx + r13 + 0x3c], cl
mov byte [rbx + r13 + 0x3d], al
mov eax, ecx
shr eax, 0x10
mov byte [rbx + r13 + 0x3e], al
inc r9d
shr ecx, 0x18
mov byte [rbx + r13 + 0x3f], cl
mov eax, dword [rbx + r13]
mov dword [rdx], eax
mov rax, qword [rbx + r13 + 0x30]
shr rax, 0x20
mov dword [rdx + 4], eax
mov eax, dword [rbx + r13 + 0x28]
mov dword [rdx + 8], eax
mov rax, qword [rbx + r13 + 0x18]
shr rax, 0x20
mov dword [rdx + 0xc], eax
mov eax, dword [rbx + r13 + 0x10]
mov dword [rdx + 0x10], eax
mov rax, qword [rbx + r13]
shr rax, 0x20
mov dword [rdx + 0x14], eax
mov eax, dword [rbx + r13 + 0x38]
mov dword [rdx + 0x18], eax
mov rax, qword [rbx + r13 + 0x28]
shr rax, 0x20
mov dword [rdx + 0x1c], eax
mov eax, dword [rbx + r13 + 0x20]
mov dword [rdx + 0x20], eax
mov rax, qword [rbx + r13 + 0x10]
shr rax, 0x20
mov dword [rdx + 0x24], eax
mov eax, dword [rbx + r13 + 8]
mov dword [rdx + 0x28], eax
mov rax, qword [rbx + r13 + 0x38]
shr rax, 0x20
mov dword [rdx + 0x2c], eax
mov eax, dword [rbx + r13 + 0x30]
mov dword [rdx + 0x30], eax
mov rax, qword [rbx + r13 + 0x20]
shr rax, 0x20
mov dword [rdx + 0x34], eax
mov eax, dword [rbx + r13 + 0x18]
mov dword [rdx + 0x38], eax
mov rax, qword [rbx + r13 + 8]
shr rax, 0x20
mov r8d, r9d
mov dword [rdx + 0x3c], eax
cmp r8, rbp
jb 0x14019c720
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret