Function at 0x14000ba10
Capabilities:
Enumerate pe sections

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x30
mov esi, edx
mov rdi, rcx
cmp edx, 8
jae 0x14000ba53
mov rdx, qword [rcx + 0x18]
xor eax, eax
mov r9, qword [rcx + 0x20]
sub r9, rdx
sar r9, 3
test r9, r9
je 0x14000ba53
mov ecx, eax
nop word [rax + rax]
mov rbx, qword [rdx + rcx*8]
cmp word [rbx], r8w
je 0x14000ba5d
inc eax
mov ecx, eax
cmp rcx, r9
jb 0x14000ba40
xor eax, eax
add rsp, 0x30
pop rdi
pop rsi
pop rbx
ret
test rbx, rbx
je 0x14000ba53
mov rcx, qword [rdi + 0x10]
lea edx, [rsi + 0x60]
mov qword [rsp + 0x50], rbp
xor r9d, r9d
mov qword [rsp + 0x58], r12
mov ebp, 0x7f
mov qword [rsp + 0x60], r13
mov r8d, ebp
mov rax, qword [rcx]
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r15
call qword [rax + InitCommonControls]
mov rcx, qword [rdi + 0x10]
lea edx, [rsi + 0x68]
xor r9d, r9d
mov r8d, ebp
mov rax, qword [rcx]
call qword [rax + InitCommonControls]
mov rcx, qword [rdi + 0x10]
lea edx, [rsi + 0x70]
xor r9d, r9d
mov r8d, ebp
mov rax, qword [rcx]
call qword [rax + InitCommonControls]
mov rcx, qword [rdi + 0x10]
lea edx, [rsi + 0x78]
xor r9d, r9d
mov r8d, ebp
mov rax, qword [rcx]
call qword [rax + InitCommonControls]
mov rcx, qword [rdi + 0x10]
lea edx, [rsi + 0xe0]
xor r9d, r9d
lea r8d, [rbp - 0x70]
mov rax, qword [rcx]
call qword [rax + InitCommonControls]
mov rcx, qword [rdi + 0x10]
lea edx, [rsi + 0xe8]
xor r9d, r9d
lea r8d, [rbp - 0x70]
mov rax, qword [rcx]
call qword [rax + InitCommonControls]
mov rcx, qword [rdi + 0x10]
lea edx, [rsi + 0xf0]
xor r9d, r9d
lea r8d, [rbp - 0x70]
mov rax, qword [rcx]
call qword [rax + InitCommonControls]
mov rcx, qword [rdi + 0x10]
lea edx, [rsi + 0xf8]
xor r9d, r9d
lea r8d, [rbp - 0x70]
mov rax, qword [rcx]
call qword [rax + InitCommonControls]
movzx edx, byte [rbx + 3]
or dl, 0xf8
shl dl, 3
or dl, byte [rbx + 2]
mov byte [rsi + rdi + 0xd08], dl
movzx eax, byte [rbx + 2]
cmp eax, 7
ja case.default.0x14000bb57
lea r8, [0x140000000]
mov ecx, dword [r8 + rax*4 + 0xbf28]
add rcx, r8
jmp rcx
mov byte [rsi + rdi + 0xd10], 8
jmp case.default.0x14000bb57
mov byte [rsi + rdi + 0xd10], 0xa
jmp case.default.0x14000bb57
mov byte [rsi + rdi + 0xd10], 0xe
jmp case.default.0x14000bb57
mov byte [rsi + rdi + 0xd10], 0xf
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
movzx r8d, dl
lea edx, [rsi + 0x20]
mov rax, qword [rcx]
call qword [rax + InitCommonControls]
movzx eax, byte [rbx + 0xc]
lea edx, [rsi + 0x40]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rbx + 0xb]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx r8d, byte [rbx + 9]
lea edx, [rsi + 0x60]
mov ecx, ebp
xor r9d, r9d
sub ecx, r8d
mov dword [rdi + rsi*4 + 0xc88], ecx
mov rcx, qword [rdi + 0x10]
mov rax, qword [rcx]
call qword [rax + InitCommonControls]
movzx eax, byte [rbx + 0xa]
lea edx, [rsi + 0x80]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 6
movzx r8d, al
movzx eax, byte [rbx + 4]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0xe]
lea edx, [rsi + 0xa0]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 7
movzx r8d, al
movzx eax, byte [rbx + 5]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0xd]
lea edx, [rsi + 0xc0]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 6
movzx r8d, al
movzx eax, byte [rbx + 6]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 8]
lea edx, [rsi + 0xe0]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rbx + 7]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0x19]
lea edx, [rsi + 0x50]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rbx + 0x18]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx r8d, byte [rbx + 0x16]
mov ecx, ebp
sub ecx, r8d
mov dword [rdi + rsi*4 + 0xca8], ecx
mov rcx, qword [rdi + 0x10]
mov rax, qword [rcx]
xor r9d, r9d
lea edx, [rsi + 0x70]
call qword [rax + InitCommonControls]
movzx eax, byte [rbx + 0x17]
lea edx, [rsi + 0x90]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 6
movzx r8d, al
movzx eax, byte [rbx + 0x11]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0x1b]
lea edx, [rsi + 0xb0]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 7
movzx r8d, al
movzx eax, byte [rbx + 0x12]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0x1a]
lea edx, [rsi + 0xd0]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 6
movzx r8d, al
movzx eax, byte [rbx + 0x13]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0x15]
lea edx, [rsi + 0xf0]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rbx + 0x14]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0x26]
lea edx, [rsi + 0x48]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rbx + 0x25]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx r8d, byte [rbx + 0x23]
lea edx, [rsi + 0x68]
mov ecx, ebp
xor r9d, r9d
sub ecx, r8d
mov dword [rdi + rsi*4 + 0xcc8], ecx
mov rcx, qword [rdi + 0x10]
mov rax, qword [rcx]
call qword [rax + InitCommonControls]
movzx eax, byte [rbx + 0x24]
lea edx, [rsi + 0x88]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 6
movzx r8d, al
movzx eax, byte [rbx + 0x1e]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0x28]
lea edx, [rsi + 0xa8]
mov rcx, qword [rdi + 0x10]
shl al, 7
movzx r8d, al
movzx eax, byte [rbx + 0x1f]
mov r10, qword [rcx]
or r8, rax
xor r9d, r9d
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0x27]
lea edx, [rsi + 0xc8]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 6
movzx r8d, al
movzx eax, byte [rbx + 0x20]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0x22]
lea edx, [rsi + 0xe8]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rbx + 0x21]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0x33]
lea edx, [rsi + 0x58]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rbx + 0x32]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx r8d, byte [rbx + 0x30]
lea edx, [rsi + 0x78]
sub ebp, r8d
xor r9d, r9d
mov dword [rdi + rsi*4 + 0xce8], ebp
mov rcx, qword [rdi + 0x10]
mov rax, qword [rcx]
call qword [rax + InitCommonControls]
movzx eax, byte [rbx + 0x31]
lea edx, [rsi + 0x98]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 6
movzx r8d, al
movzx eax, byte [rbx + 0x2b]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0x35]
lea edx, [rsi + 0xb8]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 7
movzx r8d, al
movzx eax, byte [rbx + 0x2c]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0x34]
lea edx, [rsi + 0xd8]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 6
movzx r8d, al
movzx eax, byte [rbx + 0x2d]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
movzx eax, byte [rbx + 0x2f]
lea edx, [rsi + 0xf8]
mov rcx, qword [rdi + 0x10]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rbx + 0x2e]
mov r10, qword [rcx]
or r8, rax
call qword [r10 + InitCommonControls]
mov r15, qword [rsp + 0x20]
mov eax, 1
mov r14, qword [rsp + 0x28]
mov r13, qword [rsp + 0x60]
mov r12, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
pop rsi
pop rbx
ret