Function at 0x140040c80
Capabilities:
Enumerate pe sections

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
lea rbp, [rsp - 0x110]
sub rsp, 0x210
mov rax, qword [0x14018a240]
xor rax, rsp
mov qword [rbp + 0x100], rax
movzx r8d, byte [rdx]
mov rdi, rcx
movzx ecx, byte [rdx + 1]
movzx eax, r8b
and al, 0xf
shr r8b, 4
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
mov byte [rbp + 0xc1], r8b
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 ebx, ebx
mov byte [rbp + 0xfe], al
mov r9d, ebx
mov byte [rbp + 0xff], cl
nop word [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 0x140040fd0
add byte [rbp + 0xff], r8b
lea r13, [rbp + 0xc1]
mov r12d, 1
mov qword [rdi], rbx
mov qword [rdi + 0x28], r12
mov qword [rdi + 0x50], r12
mov qword [rdi + 8], rbx
mov qword [rdi + 0x10], rbx
mov qword [rdi + 0x18], rbx
mov qword [rdi + 0x20], rbx
mov qword [rdi + 0x30], rbx
mov qword [rdi + 0x38], rbx
mov qword [rdi + 0x40], rbx
mov qword [rdi + 0x48], rbx
mov qword [rdi + 0x58], rbx
mov qword [rdi + 0x60], rbx
mov qword [rdi + 0x68], rbx
mov qword [rdi + 0x70], rbx
mov qword [rdi + 0x78], rbx
mov qword [rdi + 0x80], rbx
mov qword [rdi + 0x88], rbx
mov qword [rdi + 0x90], rbx
mov qword [rdi + 0x98], rbx
nop dword [rax + rax]
movzx r8d, byte [r13]
lea rcx, [rbp + 0x40]
mov edx, r12d
shr edx, 1
call fcn.140040830
lea r8, [rbp + 0x40]
mov rdx, rdi
lea rcx, [rsp + 0x20]
call fcn.140040050
lea r8, [rbp - 0x68]
mov rcx, rdi
lea rdx, [rsp + 0x20]
call fcn.14003e9c0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
lea rcx, [rdi + 0x28]
call fcn.14003e9c0
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x70]
lea rcx, [rdi + 0x50]
call fcn.14003e9c0
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x20]
lea rcx, [rdi + 0x78]
call fcn.14003e9c0
add r12d, 2
lea r13, [r13 + 2]
cmp r12d, 0x40
jl 0x1400412d0
mov rdx, rdi
lea rcx, [rsp + 0x20]
call fcn.140040750
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.14003e9c0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x18]
call fcn.14003e9c0
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x10]
call fcn.14003e9c0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.140040440
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.14003e9c0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x18]
call fcn.14003e9c0
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x10]
call fcn.14003e9c0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.140040440
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.14003e9c0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
lea rcx, [rbp - 0x18]
call fcn.14003e9c0
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x10]
call fcn.14003e9c0
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x20]
call fcn.140040440
lea r8, [rbp - 0x68]
mov rcx, rdi
lea rdx, [rsp + 0x20]
call fcn.14003e9c0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
lea rcx, [rdi + 0x28]
call fcn.14003e9c0
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x70]
lea rcx, [rdi + 0x50]
call fcn.14003e9c0
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x20]
lea rcx, [rdi + 0x78]
call fcn.14003e9c0
lea r12, [rbp + 0xc0]
nop word [rax + rax]
movzx r8d, byte [r12]
lea rcx, [rbp + 0x40]
mov edx, ebx
shr edx, 1
call fcn.140040830
lea r8, [rbp + 0x40]
mov rdx, rdi
lea rcx, [rsp + 0x20]
call fcn.140040050
lea r8, [rbp - 0x68]
mov rcx, rdi
lea rdx, [rsp + 0x20]
call fcn.14003e9c0
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
lea rcx, [rdi + 0x28]
call fcn.14003e9c0
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x70]
lea rcx, [rdi + 0x50]
call fcn.14003e9c0
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x20]
lea rcx, [rdi + 0x78]
call fcn.14003e9c0
add ebx, 2
lea r12, [r12 + 2]
cmp ebx, 0x40
jl 0x140041480
mov rcx, qword [rbp + 0x100]
xor rcx, rsp
call fcn.140116030
lea r11, [rsp + 0x210]
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