Function at 0x1401651c0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1d8]
sub rsp, 0x2d8
mov rax, qword [0x14022ff58]
xor rax, rsp
mov qword [rbp + 0x1c0], rax
mov r12, r9
mov r13b, r8b
mov r15, rdx
mov r14d, ecx
xor esi, esi
cmp qword [0x140231af0], rsi
setne dil
lea rax, [0x14022fab0]
cmp qword [0x14022fac8], 8
cmovae rax, qword [0x14022fab0]
mov qword [0x14022fac0], rsi
mov word [rax], si
test dil, dil
jne 0x14016527d
mov byte [0x14025657d], sil
mov byte [0x14025657e], sil
mov byte [0x140256a0f], sil
mov byte [0x140256aa0], sil
mov dword [0x140256578], ecx
lea rax, [0x14022fad0]
cmp qword [0x14022fae8], 8
cmovae rax, qword [0x14022fad0]
mov qword [0x14022fae0], rsi
mov word [rax], si
mov byte [0x14025657c], sil
mov byte [0x140256aa3], sil
lea rcx, [rbp - 0x40]
call fcn.1400e2880
nop
mov ebx, 1
mov edx, dword [0x140256578]
cmp edx, 7
jg 0x140165764
je 0x1401656fc
mov ecx, edx
test edx, edx
je 0x1401656dd
sub ecx, ebx
je 0x140165489
sub ecx, ebx
je 0x140165489
sub ecx, ebx
je 0x1401653c9
sub ecx, ebx
je 0x1401652ff
sub ecx, ebx
je 0x1401652f8
cmp ecx, ebx
jne 0x1401657d3
mov ecx, 0x224
call fcn.1400f5fe0
mov rdx, rax
lea rcx, [0x14022fab0]
call fcn.140012f6c
lea rax, str.CMDWNDOTHER
jmp 0x1401657cc
mov ecx, 0x24e
jmp 0x1401652d8
lea rbx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rbx, qword [rbp - 0x40]
mov ecx, 0x212
call fcn.1400f5fe0
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1400fdfbc
mov rbx, rax
lea rcx, [0x14022fab0]
cmp rcx, rax
je 0x1401653ba
mov rdx, qword [0x14022fac8]
cmp rdx, 8
jb 0x140165380
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14022fab0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14016537b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140165f56
call fcn.1401addcc
mov qword [0x14022fac0], rsi
mov eax, 7
mov qword [0x14022fac8], rax
mov word [0x14022fab0], si
movups xmm0, xmmword [rbx]
movups xmmword [0x14022fab0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x14022fac0], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], rax
mov word [rbx], si
lea rcx, [rsp + 0x30]
call fcn.140006b84
jmp 0x1401652ec
lea rbx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rbx, qword [rbp - 0x40]
mov ecx, 0x211
call fcn.1400f5fe0
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1400fdfbc
mov rbx, rax
lea rcx, [0x14022fab0]
cmp rcx, rax
je 0x140165484
mov rdx, qword [0x14022fac8]
cmp rdx, 8
jb 0x14016544a
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14022fab0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140165445
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140165f5c
call fcn.1401addcc
mov qword [0x14022fac0], rsi
mov eax, 7
mov qword [0x14022fac8], rax
mov word [0x14022fab0], si
movups xmm0, xmmword [rbx]
movups xmmword [0x14022fab0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x14022fac0], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], rax
mov word [rbx], si
jmp 0x1401653ba
lea rbx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rbx, qword [rbp - 0x40]
mov ecx, esi
cmp edx, 1
setne cl
add ecx, 0x20f
call fcn.1400f5fe0
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1400fdfbc
mov rbx, rax
lea rcx, [0x14022fab0]
cmp rcx, rax
je 0x14016554d
mov rdx, qword [0x14022fac8]
cmp rdx, 8
jb 0x140165513
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x14022fab0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14016550e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140165f62
call fcn.1401addcc
mov qword [0x14022fac0], rsi
mov eax, 7
mov qword [0x14022fac8], rax
mov word [0x14022fab0], si
movups xmm0, xmmword [rbx]
movups xmmword [0x14022fab0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x14022fac0], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], rax
mov word [rbx], si
lea rcx, [rsp + 0x30]
call fcn.140006b84
test dil, dil
jne 0x1401656f0
mov ebx, 1
cmp dword [0x140231b08], esi
je 0x140165576
cmp qword [0x140231b50], rbx
ja 0x140165581
cmp dword [0x140234024], ebx
mov al, sil
ja 0x140165583
mov al, bl
mov byte [0x14025657d], al
mov qword [rbp + 0x108], rsi
mov qword [rbp + 0x118], rsi
mov qword [rbp + 0x120], rsi
mov qword [rbp + 0x118], rsi
mov qword [rbp + 0x120], 7
mov word [rbp + 0x108], si
mov qword [rbp + 0x128], rsi
mov qword [rbp + 0x160], rsi
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x170], xmm0
movdqa xmm1, xmmword [0x1401da070]
movdqa xmmword [rbp + 0x170], xmm1
mov word [rbp + 0x160], si
lea rdx, [rbp - 0x20]
lea rcx, [0x140234020]
call fcn.14000ef10
cmp byte [rbp + 0x130], sil
je 0x140165616
lea rdx, [0x1401da450]
lea rcx, [rbp - 0x20]
call fcn.140104d38
test eax, eax
mov al, bl
je 0x140165619
mov al, sil
mov byte [0x14025657e], al
mov rdx, qword [rbp + 0x178]
cmp rdx, 8
jb 0x140165665
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140165660
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140165f68
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqa xmmword [rbp + 0x170], xmm0
mov word [rbp + 0x160], si
mov rdx, qword [rbp + 0x120]
cmp rdx, 8
jb 0x1401656c2
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1401656bd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140165f6e
call fcn.1401addcc
mov qword [rbp + 0x118], rsi
mov qword [rbp + 0x120], 7
mov word [rbp + 0x108], si
jmp 0x1401656f0
movzx eax, byte [0x14025657d]
test dil, dil
cmove eax, ebx
mov byte [0x14025657d], al
lea rax, str.CMDWNDADD
jmp 0x1401657cc
lea rbx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rbx, qword [rbp - 0x40]
mov ecx, 0x216
call fcn.1400f5fe0
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1400fdfbc
mov rbx, rax
lea rax, [0x14022fab0]
cmp rax, rbx
je 0x14016575f
mov rcx, rax
call fcn.140006b84
movups xmm0, xmmword [rbx]
movups xmmword [0x14022fab0], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x14022fac0], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 7
mov word [rbx], si
jmp 0x1401653ba
sub edx, 8
je 0x1401657c5
sub edx, ebx
je 0x1401657a3
sub edx, ebx
je 0x140165799
sub edx, ebx
je 0x14016578f
sub edx, ebx
je 0x140165786
cmp edx, ebx
jne 0x1401657d3
lea rax, str.CMDWNDREAD
jmp 0x1401657cc
lea rax, str.CMDWNDBENCH
jmp 0x1401657cc
mov ecx, 0x556
jmp 0x1401652d8
mov ecx, 0x543
jmp 0x1401652d8
mov ecx, 0x50b
call fcn.1400f5fe0
mov rdx, rax
lea rcx, [0x14022fab0]
call fcn.140012f6c
lea rax, str.CMDWNDCONVERT
jmp 0x1401657cc
lea rax, str.CMDWNDFIND
mov qword [0x140256d08], rax
test dil, dil
je 0x1401657e7
mov ecx, 1
call fcn.140167970
jmp 0x140165c98
call fcn.1401601e4
test al, al
je 0x1401658ae
mov qword [rsp + 0x38], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
movdqa xmm1, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x48], xmm1
mov word [rsp + 0x38], si
mov dword [rsp + 0x30], r14d
mov rdx, r15
lea rcx, [rsp + 0x38]
call fcn.140004948
mov byte [rsp + 0x58], r13b
mov qword [rsp + 0x60], r12
lea r9, [rsp + 0x30]
xor r8d, r8d
mov edx, 0x800f
mov rcx, qword [0x140231ad8]
call qword [sym.imp.USER32.dll_SendMessageW]
test rax, rax
setne bl
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x140165893
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14016588e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140165f74
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], si
mov sil, bl
jmp 0x140165c98
lea rax, [0x14022fa70]
cmp qword [0x14022fa88], 8
cmovae rax, qword [0x14022fa70]
mov qword [0x14022fa80], rsi
mov word [rax], si
mov word [0x140256580], si
mov word [0x140256a10], si
mov qword [0x140256a78], rsi
mov qword [0x140256a98], rsi
mov qword [0x140256a90], rsi
mov qword [0x140256a88], rsi
mov qword [0x140256a80], rsi
mov byte [0x140256a0d], sil
mov byte [0x140256a0e], sil
mov dword [0x140256a74], esi
call fcn.1401b5074
mov dword [0x140256a08], eax
mov qword [0x140256570], rsi
mov word [0x140256ab0], si
mov qword [0x140256a00], rsi
call fcn.14009b6a8
mov byte [0x140256aa1], sil
mov byte [0x140256aa2], sil
call fcn.140160238
movzx ebx, al
mov qword [rsp + 0x30], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
mov r8d, 0x11
lea rdx, str.SystemProgressBar
lea rcx, [rsp + 0x30]
call fcn.1400041a8
nop
mov qword [rbp - 0x60], rsi
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x50], xmm0
mov r14d, 9
mov r8d, r14d
lea rdx, [0x1401daad0]
lea rcx, [rbp - 0x60]
call fcn.1400041a8
nop
mov r8d, ebx
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x60]
call fcn.14011537c
test eax, eax
setne byte [0x14025657f]
mov rdx, qword [rbp - 0x48]
mov edi, 0x1000
cmp rdx, 8
jb 0x1401659f6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, rdi
jb 0x1401659f1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140165f7a
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rbp - 0x50], xmm0
mov word [rbp - 0x60], si
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x140165a45
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, rdi
jb 0x140165a40
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140165f80
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x40], xmm0
mov word [rsp + 0x30], si
call fcn.1400cfc48
mov ebx, esi
cmp eax, 0x601
setae bl
mov qword [rbp - 0x60], rsi
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x50], xmm0
mov r8d, 0x12
lea rdx, str.TaskbarProgressBar
lea rcx, [rbp - 0x60]
call fcn.1400041a8
nop
mov qword [rsp + 0x30], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
mov r8, r14
lea rdx, [0x1401daad0]
lea rcx, [rsp + 0x30]
call fcn.1400041a8
nop
mov r8d, ebx
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x30]
call fcn.14011537c
test eax, eax
setne byte [0x140256a0c]
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x140165b05
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, rdi
jb 0x140165b00
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140165f86
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x40], xmm0
mov word [rsp + 0x30], si
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x140165b54
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, rdi
jb 0x140165b4f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140165f50
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rbp - 0x50], xmm0
mov word [rbp - 0x60], si
cmp dword [0x140256578], 2
ja 0x140165b87
mov qword [0x140231b58], rsi
mov eax, dword [0x140231b08]
neg eax
sbb rcx, rcx
and qword [0x140231b70], rcx
mov r8d, 5
mov rdx, qword [0x140256d08]
mov rcx, qword [0x14023bc40]
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rbx, rax
mov rdx, rax
mov rcx, qword [0x14023bc40]
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rdi, rax
mov rdx, rbx
mov rcx, qword [0x14023bc40]
call qword [sym.imp.KERNEL32.dll_SizeofResource]
movsxd rbx, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rdi, rax
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov r14, rax
mov r8, rbx
mov rdx, rdi
mov rcx, rax
call fcn.1401aff80
mov ebx, 1
cmp dword [0x140231b08], ebx
je 0x140165c15
mov rcx, qword [0x140231ad8]
call qword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x140165c15
mov dil, sil
jmp 0x140165c54
mov dil, bl
cmp dword [0x140256578], 0xd
je 0x140165c54
mov ecx, dword [r14]
mov eax, ecx
mov edx, 0xffff0000
and eax, edx
cmp eax, edx
jne 0x140165c45
mov eax, dword [r14 + 0xc]
and eax, 0x3ff5f7ff
or eax, 0x800a0800
mov dword [r14 + 0xc], eax
jmp 0x140165c54
and ecx, 0x3ff5f7ff
or ecx, 0x800a0800
mov dword [r14], ecx
lea r9, [fcn.140163700]
test r12, r12
cmovne r9, r12
mov r8, qword [0x140231ad8]
mov r12, rbx
cmp dword [0x140231b08], r12d
cmove r8, rsi
mov qword [rsp + 0x20], rsi
mov rdx, r14
mov rcx, qword [0x14023bc40]
call qword [sym.imp.USER32.dll_CreateDialogIndirectParamW]
mov qword [0x140231af0], rax
test rax, rax
jne 0x140165ca9
lea rcx, [rbp - 0x40]
call fcn.140006b84
mov al, sil
jmp 0x140165f2d
test dil, dil
je 0x140165cfa
mov dl, r12b
lea rcx, [0x140235190]
call fcn.14012c42c
mov r9, rax
xor r8d, r8d
mov ebx, 0x80
mov edx, ebx
mov rcx, qword [0x140231af0]
call qword [sym.imp.USER32.dll_SendMessageW]
xor edx, edx
lea rcx, [0x140235190]
call fcn.14012c42c
mov r9, rax
mov r8, r12
mov edx, ebx
mov rcx, qword [0x140231af0]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x140256578], 0xd
jne 0x140165d32
xor r8d, r8d
mov edx, 0x9a
mov rcx, qword [0x140231af0]
call fcn.140027fe4
xor r8d, r8d
mov edx, 0xa3
mov rcx, qword [0x140231af0]
call fcn.140027fe4
mov byte [0x140256aa0], r12b
cmp dword [0x140256578], 7
jne 0x140165df9
cmp dword [0x140232ab4], esi
jne 0x140165df9
lea rbx, str.___s
cmp qword [0x140232f50], rsi
je 0x140165da0
lea rdx, [0x140232f40]
lea rcx, [rsp + 0x30]
call fcn.1400e2880
nop
lea rdx, [0x1401dbbec]
mov rcx, rax
call fcn.140081e68
movzx ecx, al
add ecx, 0x214
call fcn.1400f5fe0
mov rdx, rax
mov rcx, rbx
call fcn.140162de0
nop
lea rcx, [rsp + 0x30]
call fcn.140006b84
cmp qword [0x140232f70], rsi
je 0x140165dbe
mov ecx, 0x213
call fcn.1400f5fe0
mov rdx, rax
mov rcx, rbx
call fcn.140162de0
cmp dword [0x140232ab0], esi
je 0x140165ddb
mov ecx, 0x218
call fcn.1400f5fe0
mov rdx, rax
mov rcx, rbx
call fcn.140162de0
cmp byte [0x140232d78], sil
je 0x140165df9
mov ecx, 0x217
call fcn.1400f5fe0
mov rdx, rax
mov rcx, rbx
call fcn.140162de0
test r13b, r13b
je 0x140165e19
xor r9d, r9d
mov edx, 0x111
lea r8d, [rdx - 0x69]
mov rcx, qword [0x140231af0]
call qword [sym.imp.USER32.dll_PostMessageW]
jmp 0x140165e5b
mov eax, dword [0x140256578]
sub eax, 0xd
neg eax
sbb ebx, ebx
and ebx, 5
test dil, dil
je 0x140165e4c
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetStartupInfoW]
test byte [rsp + 0x6c], r12b
je 0x140165e4c
movzx eax, word [rsp + 0x70]
neg ax
sbb ecx, ecx
and ebx, ecx
mov edx, ebx
mov rcx, qword [0x140231af0]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov eax, dword [0x140256578]
cmp eax, 2
jbe 0x140165e74
cmp eax, 0xd
jne 0x140165ebb
mov r8, r15
cmp qword [r15 + 0x18], 8
jb 0x140165e81
mov r8, qword [r15]
mov ebx, 0xa6
mov edx, ebx
mov rcx, qword [0x140231af0]
call qword [sym.imp.USER32.dll_SetDlgItemTextW]
mov edx, ebx
mov rcx, qword [0x140231af0]
call qword [sym.imp.USER32.dll_GetDlgItem]
mov rcx, rax
call fcn.140128e88
mov rdx, r15
lea rcx, [0x14022fa90]
call fcn.140004948
cmp qword [0x14022fac0], rsi
jne 0x140165ef0
mov rdx, qword [0x140231af0]
lea rcx, [rsp + 0x30]
call fcn.140027a8c
nop
mov rdx, rax
lea rcx, [0x14022fab0]
call fcn.140017a8c
nop
lea rcx, [rsp + 0x30]
call fcn.140006b84
mov cl, r12b
call fcn.140167970
mov eax, dword [0x140256578]
cmp eax, 0xd
je 0x140165f17
xor edx, edx
mov rcx, qword [0x140231af0]
call fcn.140162cf4
mov eax, dword [0x140256578]
test eax, eax
jne 0x140165f21
call fcn.140167d40
nop
lea rcx, [rbp - 0x40]
call fcn.140006b84
mov al, r12b
mov rcx, qword [rbp + 0x1c0]
xor rcx, rsp
call fcn.1401adee0
add rsp, 0x2d8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
int3
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
int3