Function at 0x180021630
Capabilities:
Enumerate pe sections

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x110]
sub rsp, 0x210
mov rax, qword [0x1800575c0]
xor rax, rsp
mov qword [rbp + 0x100], rax
mov rbx, rcx
movzx ecx, byte [rdx]
movzx eax, cl
shr cl, 4
and al, 0xf
mov byte [rbp + 0xc1], cl
movzx ecx, byte [rdx + 1]
mov byte [rbp + 0xc0], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xc3], cl
movzx ecx, byte [rdx + 2]
mov byte [rbp + 0xc2], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xc5], cl
movzx ecx, byte [rdx + 3]
mov byte [rbp + 0xc4], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xc7], cl
movzx ecx, byte [rdx + 4]
mov byte [rbp + 0xc6], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xc9], cl
movzx ecx, byte [rdx + 5]
mov byte [rbp + 0xc8], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xcb], cl
movzx ecx, byte [rdx + 6]
mov byte [rbp + 0xca], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xcd], cl
movzx ecx, byte [rdx + 7]
mov byte [rbp + 0xcc], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xcf], cl
movzx ecx, byte [rdx + 8]
mov byte [rbp + 0xce], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xd1], cl
movzx ecx, byte [rdx + 9]
mov byte [rbp + 0xd0], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xd3], cl
movzx ecx, byte [rdx + 0xa]
mov byte [rbp + 0xd2], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xd5], cl
movzx ecx, byte [rdx + 0xb]
mov byte [rbp + 0xd4], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xd7], cl
movzx ecx, byte [rdx + 0xc]
mov byte [rbp + 0xd6], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xd9], cl
movzx ecx, byte [rdx + 0xd]
mov byte [rbp + 0xd8], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xdb], cl
movzx ecx, byte [rdx + 0xe]
mov byte [rbp + 0xda], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xdd], cl
movzx ecx, byte [rdx + 0xf]
mov byte [rbp + 0xdc], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xdf], cl
movzx ecx, byte [rdx + 0x10]
mov byte [rbp + 0xde], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xe1], cl
movzx ecx, byte [rdx + 0x11]
mov byte [rbp + 0xe0], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xe3], cl
movzx ecx, byte [rdx + 0x12]
mov byte [rbp + 0xe2], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xe5], cl
movzx ecx, byte [rdx + 0x13]
mov byte [rbp + 0xe4], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xe7], cl
movzx ecx, byte [rdx + 0x14]
mov byte [rbp + 0xe6], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xe9], cl
movzx ecx, byte [rdx + 0x15]
mov byte [rbp + 0xe8], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xeb], cl
movzx ecx, byte [rdx + 0x16]
mov byte [rbp + 0xea], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xed], cl
movzx ecx, byte [rdx + 0x17]
mov byte [rbp + 0xec], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xef], cl
movzx ecx, byte [rdx + 0x18]
mov byte [rbp + 0xee], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xf1], cl
movzx ecx, byte [rdx + 0x19]
mov byte [rbp + 0xf0], al
movzx eax, cl
and al, 0xf
shr cl, 4
mov byte [rbp + 0xf3], cl
movzx ecx, byte [rdx + 0x1a]
mov byte [rbp + 0xf2], al
movzx eax, cl
and al, 0xf
mov byte [rbp + 0xf4], al
shr cl, 4
mov byte [rbp + 0xf5], cl
xor r8b, r8b
movzx ecx, byte [rdx + 0x1b]
movzx eax, cl
shr cl, 4
and al, 0xf
mov byte [rbp + 0xf7], cl
movzx ecx, byte [rdx + 0x1c]
mov byte [rbp + 0xf6], al
movzx eax, cl
shr cl, 4
and al, 0xf
mov byte [rbp + 0xf9], cl
movzx ecx, byte [rdx + 0x1d]
mov byte [rbp + 0xf8], al
movzx eax, cl
shr cl, 4
and al, 0xf
mov byte [rbp + 0xfb], cl
movzx ecx, byte [rdx + 0x1e]
mov byte [rbp + 0xfa], al
movzx eax, cl
shr cl, 4
and al, 0xf
mov byte [rbp + 0xfd], cl
movzx ecx, byte [rdx + 0x1f]
mov byte [rbp + 0xfc], al
movzx eax, cl
and al, 0xf
shr cl, 4
xor esi, esi
mov byte [rbp + 0xfe], al
mov r9d, esi
mov byte [rbp + 0xff], cl
nop dword [rax + rax]
add r8b, byte [rbp + r9 + 0xc0]
lea ecx, [r8 + 8]
sar cl, 4
movzx eax, cl
add cl, byte [rbp + r9 + 0xc1]
shl al, 4
sub r8b, al
mov byte [rbp + r9 + 0xc0], r8b
lea edx, [rcx + 8]
sar dl, 4
movzx eax, dl
add dl, byte [rbp + r9 + 0xc2]
shl al, 4
sub cl, al
mov byte [rbp + r9 + 0xc1], cl
lea ecx, [rdx + 8]
sar cl, 4
movzx eax, cl
add cl, byte [rbp + r9 + 0xc3]
shl al, 4
sub dl, al
mov byte [rbp + r9 + 0xc2], dl
lea edx, [rcx + 8]
sar dl, 4
movzx eax, dl
add dl, byte [rbp + r9 + 0xc4]
shl al, 4
sub cl, al
mov byte [rbp + r9 + 0xc3], cl
lea ecx, [rdx + 8]
sar cl, 4
movzx eax, cl
add cl, byte [rbp + r9 + 0xc5]
shl al, 4
sub dl, al
mov byte [rbp + r9 + 0xc4], dl
lea edx, [rcx + 8]
sar dl, 4
movzx eax, dl
add dl, byte [rbp + r9 + 0xc6]
shl al, 4
sub cl, al
mov byte [rbp + r9 + 0xc5], cl
lea ecx, [rdx + 8]
sar cl, 4
movzx eax, cl
add cl, byte [rbp + r9 + 0xc7]
shl al, 4
sub dl, al
mov byte [rbp + r9 + 0xc6], dl
lea edx, [rcx + 8]
sar dl, 4
movzx eax, dl
add dl, byte [rbp + r9 + 0xc8]
shl al, 4
sub cl, al
mov byte [rbp + r9 + 0xc7], cl
lea ecx, [rdx + 8]
sar cl, 4
movzx eax, cl
add cl, byte [rbp + r9 + 0xc9]
shl al, 4
sub dl, al
mov byte [rbp + r9 + 0xc8], dl
lea edx, [rcx + 8]
sar dl, 4
movzx eax, dl
add dl, byte [rbp + r9 + 0xca]
shl al, 4
sub cl, al
mov byte [rbp + r9 + 0xc9], cl
lea ecx, [rdx + 8]
sar cl, 4
movzx eax, cl
add cl, byte [rbp + r9 + 0xcb]
shl al, 4
sub dl, al
mov byte [rbp + r9 + 0xca], dl
lea edx, [rcx + 8]
sar dl, 4
movzx eax, dl
add dl, byte [rbp + r9 + 0xcc]
shl al, 4
sub cl, al
mov byte [rbp + r9 + 0xcb], cl
lea ecx, [rdx + 8]
sar cl, 4
movzx eax, cl
add cl, byte [rbp + r9 + 0xcd]
shl al, 4
sub dl, al
mov byte [rbp + r9 + 0xcc], dl
lea edx, [rcx + 8]
sar dl, 4
movzx eax, dl
add dl, byte [rbp + r9 + 0xce]
shl al, 4
sub cl, al
mov byte [rbp + r9 + 0xcd], cl
lea ecx, [rdx + 8]
sar cl, 4
movzx eax, cl
add cl, byte [rbp + r9 + 0xcf]
shl al, 4
sub dl, al
mov byte [rbp + r9 + 0xce], dl
lea edx, [rcx + 8]
sar dl, 4
movzx eax, dl
add dl, byte [rbp + r9 + 0xd0]
shl al, 4
sub cl, al
mov byte [rbp + r9 + 0xcf], cl
lea ecx, [rdx + 8]
sar cl, 4
movzx eax, cl
add cl, byte [rbp + r9 + 0xd1]
shl al, 4
sub dl, al
mov byte [rbp + r9 + 0xd0], dl
lea edx, [rcx + 8]
sar dl, 4
movzx eax, dl
add dl, byte [rbp + r9 + 0xd2]
shl al, 4
sub cl, al
mov byte [rbp + r9 + 0xd1], cl
lea ecx, [rdx + 8]
sar cl, 4
movzx eax, cl
add cl, byte [rbp + r9 + 0xd3]
shl al, 4
sub dl, al
mov byte [rbp + r9 + 0xd2], dl
lea edx, [rcx + 8]
sar dl, 4
movzx eax, dl
add dl, byte [rbp + r9 + 0xd4]
shl al, 4
sub cl, al
mov byte [rbp + r9 + 0xd3], cl
lea r8d, [rdx + 8]
sar r8b, 4
movzx eax, r8b
shl al, 4
sub dl, al
mov byte [rbp + r9 + 0xd4], dl
add r9, 0x15
cmp r9, 0x3f
jl 0x180021970
add byte [rbp + 0xff], r8b
mov rcx, rbx
call fcn.180021520
mov edi, 1
lea r14, [rbp + 0xc1]
movzx r8d, byte [r14]
lea rcx, [rbp + 0x40]
mov edx, edi
shr edx, 1
call fcn.180021110
lea r8, [rbp + 0x40]
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.180021130
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.180021380
add edi, 2
lea r14, [r14 + 2]
cmp edi, 0x40
jl 0x180021c14
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.180021570
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.180021320
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.180021400
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.180021320
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.180021400
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.180021320
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.180021400
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.180021380
lea rdi, [rbp + 0xc0]
movzx r8d, byte [rdi]
lea rcx, [rbp + 0x40]
mov edx, esi
shr edx, 1
call fcn.180021110
lea r8, [rbp + 0x40]
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.180021130
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.180021380
add esi, 2
lea rdi, [rdi + 2]
cmp esi, 0x40
jl 0x180021cc4
mov rcx, qword [rbp + 0x100]
xor rcx, rsp
call fcn.180024a40
lea r11, [rsp + 0x210]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret