Function at 0x14000f360
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
mov ebp, edx
mov rbx, rcx
cmp edx, 6
jae 0x14000f879
mov rdx, qword [rcx + 0x18]
xor eax, eax
mov r9, qword [rcx + 0x20]
sub r9, rdx
sar r9, 3
test r9, r9
je 0x14000f3b3
mov ecx, eax
nop word [rax + rax]
mov rdi, qword [rdx + rcx*8]
cmp word [rdi], r8w
je 0x14000f3ba
inc eax
mov ecx, eax
cmp rcx, r9
jb 0x14000f3a0
xor eax, eax
jmp 0x14000f8e8
test rdi, rdi
je 0x14000f3b3
mov rcx, qword [rbx + 0x10]
mov eax, 0xaaaaaaab
mul ebp
mov qword [rsp + 0x30], r14
mov r14d, 0x7f
shr edx, 1
imul esi, edx, 0xfd
add esi, ebp
test rcx, rcx
je 0x14000f3f3
mov rax, qword [rcx]
lea edx, [rsi + 0x40]
xor r9d, r9d
mov r8d, r14d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f40b
mov rax, qword [rcx]
lea edx, [rsi + 0x44]
xor r9d, r9d
mov r8, r14
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f423
mov rax, qword [rcx]
lea edx, [rsi + 0x48]
xor r9d, r9d
mov r8, r14
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f43b
mov rax, qword [rcx]
lea edx, [rsi + 0x4c]
xor r9d, r9d
mov r8, r14
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f457
mov rax, qword [rcx]
lea edx, [rsi + 0x80]
xor r9d, r9d
lea r8d, [r9 + 0xf]
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f473
mov rax, qword [rcx]
lea edx, [rsi + 0x84]
xor r9d, r9d
lea r8d, [r9 + 0xf]
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f48f
mov rax, qword [rcx]
lea edx, [rsi + 0x88]
xor r9d, r9d
lea r8d, [r9 + 0xf]
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f4ab
mov rax, qword [rcx]
lea edx, [rsi + 0x8c]
xor r9d, r9d
lea r8d, [r9 + 0xf]
call qword [rax + InitCommonControls]
movzx eax, byte [rdi + 2]
movzx edx, byte [rdi + 3]
shl dl, 3
or dl, al
cmp eax, 7
ja case.default.0x14000f4cf
lea r8, [0x140000000]
mov ecx, dword [r8 + rax*4 + 0xf900]
add rcx, r8
jmp rcx
mov byte [rbp + rbx + 0xdb8], 8
jmp case.default.0x14000f4cf
mov byte [rbp + rbx + 0xdb8], 0xa
jmp case.default.0x14000f4cf
mov byte [rbp + rbx + 0xdb8], InitCommonControls
jmp case.default.0x14000f4cf
mov byte [rbp + rbx + 0xdb8], InitCommonControls
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f513
mov rax, qword [rcx]
xor r9d, r9d
movzx r8d, dl
lea edx, [rsi + 0xb0]
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f53b
movzx eax, byte [rdi + 0xc]
lea edx, [rsi + 0x30]
mov r10, qword [rcx]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rdi + 0xb]
or r8, rax
call qword [r10 + InitCommonControls]
movzx edx, byte [rdi + 9]
mov ecx, r14d
sub ecx, edx
mov dword [rbx + rbp*4 + 0xdc0], ecx
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f563
mov rax, qword [rcx]
mov r8d, edx
lea edx, [rsi + 0x40]
xor r9d, r9d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f58b
movzx eax, byte [rdi + 0xa]
lea edx, [rsi + 0x50]
mov r10, qword [rcx]
xor r9d, r9d
shl al, 6
movzx r8d, al
movzx eax, byte [rdi + 4]
or r8, rax
call qword [r10 + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f5a5
mov rax, qword [rcx]
lea edx, [rsi + 0x60]
movzx r8d, byte [rdi + 5]
xor r9d, r9d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f5bf
mov rax, qword [rcx]
lea edx, [rsi + 0x70]
movzx r8d, byte [rdi + 6]
xor r9d, r9d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f5ea
movzx eax, byte [rdi + 8]
lea edx, [rsi + 0x80]
mov r10, qword [rcx]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rdi + 7]
or r8, rax
call qword [r10 + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f612
movzx eax, byte [rdi + 0x19]
lea edx, [rsi + 0x38]
mov r10, qword [rcx]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rdi + 0x18]
or r8, rax
call qword [r10 + InitCommonControls]
movzx edx, byte [rdi + 0x16]
mov ecx, r14d
sub ecx, edx
mov dword [rbx + rbp*4 + 0xdd8], ecx
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f63a
mov rax, qword [rcx]
mov r8d, edx
lea edx, [rsi + 0x48]
xor r9d, r9d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f662
movzx eax, byte [rdi + 0x17]
lea edx, [rsi + 0x58]
mov r10, qword [rcx]
xor r9d, r9d
shl al, 6
movzx r8d, al
movzx eax, byte [rdi + 0x11]
or r8, rax
call qword [r10 + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f67c
mov rax, qword [rcx]
lea edx, [rsi + 0x68]
movzx r8d, byte [rdi + 0x12]
xor r9d, r9d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f696
mov rax, qword [rcx]
lea edx, [rsi + 0x78]
movzx r8d, byte [rdi + 0x13]
xor r9d, r9d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f6c1
movzx eax, byte [rdi + 0x15]
lea edx, [rsi + 0x88]
mov r10, qword [rcx]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rdi + 0x14]
or r8, rax
call qword [r10 + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f6e9
movzx eax, byte [rdi + 0x26]
lea edx, [rsi + 0x34]
mov r10, qword [rcx]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rdi + 0x25]
or r8, rax
call qword [r10 + InitCommonControls]
movzx edx, byte [rdi + 0x23]
mov ecx, r14d
sub ecx, edx
mov dword [rbx + rbp*4 + 0xdf0], ecx
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f711
mov rax, qword [rcx]
mov r8d, edx
lea edx, [rsi + 0x44]
xor r9d, r9d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f739
movzx eax, byte [rdi + 0x24]
lea edx, [rsi + 0x54]
mov r10, qword [rcx]
xor r9d, r9d
shl al, 6
movzx r8d, al
movzx eax, byte [rdi + 0x1e]
or r8, rax
call qword [r10 + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f753
mov rax, qword [rcx]
lea edx, [rsi + 0x64]
movzx r8d, byte [rdi + 0x1f]
xor r9d, r9d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f76d
mov rax, qword [rcx]
lea edx, [rsi + 0x74]
movzx r8d, byte [rdi + 0x20]
xor r9d, r9d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f798
movzx eax, byte [rdi + 0x22]
lea edx, [rsi + 0x84]
mov r10, qword [rcx]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rdi + 0x21]
or r8, rax
call qword [r10 + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f7c0
movzx eax, byte [rdi + 0x33]
lea edx, [rsi + 0x3c]
mov r10, qword [rcx]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rdi + 0x32]
or r8, rax
call qword [r10 + InitCommonControls]
movzx edx, byte [rdi + 0x30]
sub r14d, edx
mov dword [rbx + rbp*4 + 0xe08], r14d
mov rcx, qword [rbx + 0x10]
mov r14, qword [rsp + 0x30]
test rcx, rcx
je 0x14000f7ec
mov rax, qword [rcx]
mov r8d, edx
lea edx, [rsi + 0x4c]
xor r9d, r9d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f814
movzx eax, byte [rdi + 0x31]
lea edx, [rsi + 0x5c]
mov r10, qword [rcx]
xor r9d, r9d
shl al, 6
movzx r8d, al
movzx eax, byte [rdi + 0x2b]
or r8, rax
call qword [r10 + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f82e
mov rax, qword [rcx]
lea edx, [rsi + 0x6c]
movzx r8d, byte [rdi + 0x2c]
xor r9d, r9d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f848
mov rax, qword [rcx]
lea edx, [rsi + 0x7c]
movzx r8d, byte [rdi + 0x2d]
xor r9d, r9d
call qword [rax + InitCommonControls]
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x14000f8e3
movzx eax, byte [rdi + 0x2f]
lea edx, [rsi + 0x8c]
mov r10, qword [rcx]
xor r9d, r9d
shl al, 4
movzx r8d, al
movzx eax, byte [rdi + 0x2e]
or r8, rax
call qword [r10 + InitCommonControls]
jmp 0x14000f8e3
cmp ebp, 0xf
jne 0x14000f8e3
mov r9, qword [rcx + 0x30]
xor eax, eax
mov rdx, qword [rcx + 0x38]
sub rdx, r9
sar rdx, 3
test rdx, rdx
je 0x14000f8e3
mov ecx, eax
movzx r10d, r8w
nop word [rax + rax]
mov r8, qword [r9 + rcx*8]
lea rcx, [rcx*8]
cmp dword [r8 + 8], r10d
je 0x14000f8bd
inc eax
mov ecx, eax
cmp rcx, rdx
jb 0x14000f8a0
jmp 0x14000f8e3
mov eax, dword [r8 + 0x14]
lea rdx, [rcx + r9]
mov dword [rbx + 0xf28], eax
mov rax, qword [rdx]
mov ecx, dword [rax + 0x18]
mov dword [rbx + 0xf2c], ecx
mov rax, qword [rdx]
mov ecx, dword [rax + 0x1c]
mov dword [rbx + 0xf30], ecx
mov eax, 1
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret