Function at 0x1400112a0
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
movzx r9d, r8w
mov rbx, rcx
mov ebp, edx
cmp edx, 6
jae 0x1400117bc
mov r8, qword [rcx + 0x18]
xor eax, eax
mov rdx, qword [rcx + 0x20]
sub rdx, r8
sar rdx, 3
test rdx, rdx
je 0x1400112f3
mov ecx, eax
nop
mov rdi, qword [r8 + rcx*8]
cmp word [rdi], r9w
je 0x1400112fa
inc eax
mov ecx, eax
cmp rcx, rdx
jb 0x1400112e0
xor eax, eax
jmp 0x140011925
test rdi, rdi
je 0x1400112f3
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 0x140011333
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 0x14001134b
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 0x140011363
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 0x14001137b
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 0x140011397
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 0x1400113b3
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 0x1400113cf
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 0x1400113eb
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.0x14001140f
lea r8, [0x140000000]
mov ecx, dword [r8 + rax*4 + 0x1193c]
add rcx, r8
jmp rcx
mov byte [rbp + rbx + 0xdb8], 8
jmp case.default.0x14001140f
mov byte [rbp + rbx + 0xdb8], 0xa
jmp case.default.0x14001140f
mov byte [rbp + rbx + 0xdb8], InitCommonControls
jmp case.default.0x14001140f
mov byte [rbp + rbx + 0xdb8], InitCommonControls
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x140011453
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 0x14001147b
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 0x1400114a3
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 0x1400114cb
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 0x1400114e5
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 0x1400114ff
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 0x14001152a
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 0x140011552
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 0x14001157a
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 0x1400115a2
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 0x1400115bc
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 0x1400115d6
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 0x140011601
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 0x140011629
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 0x140011651
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 0x140011679
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 0x140011693
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 0x1400116ad
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 0x1400116d8
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 0x140011700
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 0x14001172c
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 0x140011754
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 0x14001176e
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 0x140011788
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 0x140011920
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 0x140011920
lea eax, [rbp - 9]
cmp eax, 5
ja 0x1400118ba
mov r8, qword [rcx + 0x30]
xor eax, eax
mov rdx, qword [rcx + 0x38]
sub rdx, r8
sar rdx, 3
test rdx, rdx
je 0x140011920
mov ecx, eax
nop dword [rax]
nop dword [rax + rax]
lea rdi, [rcx*8]
mov rcx, qword [rdi + r8]
cmp dword [rcx + 8], r9d
jne 0x140011808
cmp dword [rcx + 0x10], 1
je 0x140011816
inc eax
mov ecx, eax
cmp rcx, rdx
jb 0x1400117f0
jmp 0x140011920
mov rcx, qword [rbx + 0x10]
lea eax, [rbp - 9]
mov edx, 0x80
xor r9d, r9d
bts edx, eax
movsxd r8, edx
xor edx, edx
mov r10, qword [rcx]
call qword [r10 + InitCommonControls]
mov rax, qword [rbx + 0x30]
xor r9d, r9d
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rdi + rax]
mov r10, qword [rcx]
movzx r8d, byte [rdx + 0x14]
lea edx, [rbp + 0x107]
call qword [r10 + InitCommonControls]
mov rax, qword [rbx + 0x30]
xor r9d, r9d
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rdi + rax]
mov r10, qword [rcx]
movzx r8d, byte [rdx + 0x15]
lea edx, [rbp + 0x10f]
call qword [r10 + InitCommonControls]
mov rax, qword [rbx + 0x30]
xor r9d, r9d
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rdi + rax]
mov r10, qword [rcx]
movzx r8d, byte [rdx + 0x18]
lea edx, [rbp + 0x117]
call qword [r10 + InitCommonControls]
mov rax, qword [rbx + 0x30]
xor r9d, r9d
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rdi + rax]
mov r10, qword [rcx]
movzx r8d, byte [rdx + 0x19]
lea edx, [rbp + 0x11f]
call qword [r10 + InitCommonControls]
jmp 0x140011920
cmp ebp, 0xf
jne 0x140011920
xor eax, eax
mov qword [rcx + 0xf28], rax
mov r10, qword [rcx + 0x30]
mov r8, qword [rcx + 0x38]
sub r8, r10
sar r8, 3
test r8, r8
je 0x140011920
mov ecx, eax
nop
lea rdx, [r10 + rcx*8]
mov rcx, qword [r10 + rcx*8]
cmp dword [rcx + 8], r9d
jne 0x1400118f4
cmp dword [rcx + 0x10], 0
je 0x1400118ff
inc eax
mov ecx, eax
cmp rcx, r8
jb 0x1400118e0
jmp 0x140011920
mov eax, dword [rcx + 0x14]
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