Function at 0x140166950
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 [0x140231ec8]
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 [0x140233a58], rsi
setne dil
lea rax, [0x140231a20]
cmp qword [0x140231a38], 8
cmovae rax, qword [0x140231a20]
mov qword [0x140231a30], rsi
mov word [rax], si
test dil, dil
jne 0x140166a0d
mov byte [0x14025a57d], sil
mov byte [0x14025a57e], sil
mov byte [0x14025aa0f], sil
mov byte [0x14025aaa0], sil
mov dword [0x14025a578], ecx
lea rax, [0x140231a40]
cmp qword [0x140231a58], 8
cmovae rax, qword [0x140231a40]
mov qword [0x140231a50], rsi
mov word [rax], si
mov byte [0x14025a57c], sil
mov byte [0x14025aaa3], sil
lea rcx, [rbp - 0x40]
call fcn.1400e393c
nop
mov ebx, 1
mov edx, dword [0x14025a578]
cmp edx, 7
jg 0x140166ef4
je 0x140166e8c
mov ecx, edx
test edx, edx
je 0x140166e6d
sub ecx, ebx
je 0x140166c19
sub ecx, ebx
je 0x140166c19
sub ecx, ebx
je 0x140166b59
sub ecx, ebx
je 0x140166a8f
sub ecx, ebx
je 0x140166a88
cmp ecx, ebx
jne 0x140166f63
mov ecx, 0x224
call fcn.1400f70b0
mov rdx, rax
lea rcx, [0x140231a20]
call fcn.140012fc0
lea rax, str.CMDWNDOTHER
jmp 0x140166f5c
mov ecx, 0x24e
jmp 0x140166a68
lea rbx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rbx, qword [rbp - 0x40]
mov ecx, 0x212
call fcn.1400f70b0
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1400ff0a0
mov rbx, rax
lea rcx, [0x140231a20]
cmp rcx, rax
je 0x140166b4a
mov rdx, qword [0x140231a38]
cmp rdx, 8
jb 0x140166b10
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x140231a20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140166b0b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401676e6
call fcn.1401af9bc
mov qword [0x140231a30], rsi
mov eax, 7
mov qword [0x140231a38], rax
mov word [0x140231a20], si
movups xmm0, xmmword [rbx]
movups xmmword [0x140231a20], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x140231a30], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], rax
mov word [rbx], si
lea rcx, [rsp + 0x30]
call fcn.140006b94
jmp 0x140166a7c
lea rbx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rbx, qword [rbp - 0x40]
mov ecx, 0x211
call fcn.1400f70b0
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1400ff0a0
mov rbx, rax
lea rcx, [0x140231a20]
cmp rcx, rax
je 0x140166c14
mov rdx, qword [0x140231a38]
cmp rdx, 8
jb 0x140166bda
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x140231a20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140166bd5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401676ec
call fcn.1401af9bc
mov qword [0x140231a30], rsi
mov eax, 7
mov qword [0x140231a38], rax
mov word [0x140231a20], si
movups xmm0, xmmword [rbx]
movups xmmword [0x140231a20], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x140231a30], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], rax
mov word [rbx], si
jmp 0x140166b4a
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.1400f70b0
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1400ff0a0
mov rbx, rax
lea rcx, [0x140231a20]
cmp rcx, rax
je 0x140166cdd
mov rdx, qword [0x140231a38]
cmp rdx, 8
jb 0x140166ca3
lea rdx, [rdx*2 + 2]
mov rcx, qword [0x140231a20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140166c9e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401676f2
call fcn.1401af9bc
mov qword [0x140231a30], rsi
mov eax, 7
mov qword [0x140231a38], rax
mov word [0x140231a20], si
movups xmm0, xmmword [rbx]
movups xmmword [0x140231a20], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x140231a30], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], rax
mov word [rbx], si
lea rcx, [rsp + 0x30]
call fcn.140006b94
test dil, dil
jne 0x140166e80
mov ebx, 1
cmp dword [0x140233a70], esi
je 0x140166d06
cmp qword [0x140233ab8], rbx
ja 0x140166d11
cmp dword [0x140236034], ebx
mov al, sil
ja 0x140166d13
mov al, bl
mov byte [0x14025a57d], 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 [0x1401dc090]
movdqa xmmword [rbp + 0x170], xmm1
mov word [rbp + 0x160], si
lea rdx, [rbp - 0x20]
lea rcx, [0x140236030]
call fcn.14000ef60
cmp byte [rbp + 0x130], sil
je 0x140166da6
lea rdx, [0x1401dc470]
lea rcx, [rbp - 0x20]
call fcn.140105f6c
test eax, eax
mov al, bl
je 0x140166da9
mov al, sil
mov byte [0x14025a57e], al
mov rdx, qword [rbp + 0x178]
cmp rdx, 8
jb 0x140166df5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x160]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140166df0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401676f8
call fcn.1401af9bc
movdqa xmm0, xmmword [0x1401dc090]
movdqa xmmword [rbp + 0x170], xmm0
mov word [rbp + 0x160], si
mov rdx, qword [rbp + 0x120]
cmp rdx, 8
jb 0x140166e52
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x108]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140166e4d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401676fe
call fcn.1401af9bc
mov qword [rbp + 0x118], rsi
mov qword [rbp + 0x120], 7
mov word [rbp + 0x108], si
jmp 0x140166e80
movzx eax, byte [0x14025a57d]
test dil, dil
cmove eax, ebx
mov byte [0x14025a57d], al
lea rax, str.CMDWNDADD
jmp 0x140166f5c
lea rbx, [rbp - 0x40]
cmp qword [rbp - 0x28], 8
cmovae rbx, qword [rbp - 0x40]
mov ecx, 0x216
call fcn.1400f70b0
mov r8, rbx
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.1400ff0a0
mov rbx, rax
lea rax, [0x140231a20]
cmp rax, rbx
je 0x140166eef
mov rcx, rax
call fcn.140006b94
movups xmm0, xmmword [rbx]
movups xmmword [0x140231a20], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [0x140231a30], xmm1
mov qword [rbx + 0x10], rsi
mov qword [rbx + 0x18], 7
mov word [rbx], si
jmp 0x140166b4a
sub edx, 8
je 0x140166f55
sub edx, ebx
je 0x140166f33
sub edx, ebx
je 0x140166f29
sub edx, ebx
je 0x140166f1f
sub edx, ebx
je 0x140166f16
cmp edx, ebx
jne 0x140166f63
lea rax, str.CMDWNDREAD
jmp 0x140166f5c
lea rax, str.CMDWNDBENCH
jmp 0x140166f5c
mov ecx, 0x556
jmp 0x140166a68
mov ecx, 0x543
jmp 0x140166a68
mov ecx, 0x50b
call fcn.1400f70b0
mov rdx, rax
lea rcx, [0x140231a20]
call fcn.140012fc0
lea rax, str.CMDWNDCONVERT
jmp 0x140166f5c
lea rax, str.CMDWNDFIND
mov qword [0x14025ad08], rax
test dil, dil
je 0x140166f77
mov ecx, 1
call fcn.140169100
jmp 0x140167428
call fcn.140161914
test al, al
je 0x14016703e
mov qword [rsp + 0x38], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
movdqa xmm1, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x48], xmm1
mov word [rsp + 0x38], si
mov dword [rsp + 0x30], r14d
mov rdx, r15
lea rcx, [rsp + 0x38]
call fcn.140004958
mov byte [rsp + 0x58], r13b
mov qword [rsp + 0x60], r12
lea r9, [rsp + 0x30]
xor r8d, r8d
mov edx, 0x800f
mov rcx, qword [0x140233a48]
call qword [sym.imp.USER32.dll_SendMessageW]
test rax, rax
setne bl
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x140167023
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14016701e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140167704
call fcn.1401af9bc
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], si
mov sil, bl
jmp 0x140167428
lea rax, [0x1402319e0]
cmp qword [0x1402319f8], 8
cmovae rax, qword [0x1402319e0]
mov qword [0x1402319f0], rsi
mov word [rax], si
mov word [0x14025a580], si
mov word [0x14025aa10], si
mov qword [0x14025aa78], rsi
mov qword [0x14025aa98], rsi
mov qword [0x14025aa90], rsi
mov qword [0x14025aa88], rsi
mov qword [0x14025aa80], rsi
mov byte [0x14025aa0d], sil
mov byte [0x14025aa0e], sil
mov dword [0x14025aa74], esi
call fcn.1401b6c64
mov dword [0x14025aa08], eax
mov qword [0x14025a570], rsi
mov word [0x14025aab0], si
mov qword [0x14025aa00], rsi
call fcn.14009b9f8
mov byte [0x14025aaa1], sil
mov byte [0x14025aaa2], sil
call fcn.140161968
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.1400041b8
nop
mov qword [rbp - 0x60], rsi
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x50], xmm0
mov r14d, 9
mov r8d, r14d
lea rdx, [0x1401dcae0]
lea rcx, [rbp - 0x60]
call fcn.1400041b8
nop
mov r8d, ebx
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x60]
call fcn.1401165ec
test eax, eax
setne byte [0x14025a57f]
mov rdx, qword [rbp - 0x48]
mov edi, 0x1000
cmp rdx, 8
jb 0x140167186
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, rdi
jb 0x140167181
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14016770a
call fcn.1401af9bc
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x50], xmm0
mov word [rbp - 0x60], si
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x1401671d5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, rdi
jb 0x1401671d0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140167710
call fcn.1401af9bc
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x40], xmm0
mov word [rsp + 0x30], si
call fcn.1400d0c20
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.1400041b8
nop
mov qword [rsp + 0x30], rsi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
mov r8, r14
lea rdx, [0x1401dcae0]
lea rcx, [rsp + 0x30]
call fcn.1400041b8
nop
mov r8d, ebx
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x30]
call fcn.1401165ec
test eax, eax
setne byte [0x14025aa0c]
mov rdx, qword [rsp + 0x48]
cmp rdx, 8
jb 0x140167295
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, rdi
jb 0x140167290
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140167716
call fcn.1401af9bc
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x40], xmm0
mov word [rsp + 0x30], si
mov rdx, qword [rbp - 0x48]
cmp rdx, 8
jb 0x1401672e4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, rdi
jb 0x1401672df
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1401676e0
call fcn.1401af9bc
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x50], xmm0
mov word [rbp - 0x60], si
cmp dword [0x14025a578], 2
ja 0x140167317
mov qword [0x140233ac0], rsi
mov eax, dword [0x140233a70]
neg eax
sbb rcx, rcx
and qword [0x140233ad8], rcx
mov r8d, 5
mov rdx, qword [0x14025ad08]
mov rcx, qword [0x14023fc50]
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rbx, rax
mov rdx, rax
mov rcx, qword [0x14023fc50]
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rdi, rax
mov rdx, rbx
mov rcx, qword [0x14023fc50]
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.1401b1b70
mov ebx, 1
cmp dword [0x140233a70], ebx
je 0x1401673a5
mov rcx, qword [0x140233a48]
call qword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x1401673a5
mov dil, sil
jmp 0x1401673e4
mov dil, bl
cmp dword [0x14025a578], 0xd
je 0x1401673e4
mov ecx, dword [r14]
mov eax, ecx
mov edx, 0xffff0000
and eax, edx
cmp eax, edx
jne 0x1401673d5
mov eax, dword [r14 + 0xc]
and eax, 0x3ff5f7ff
or eax, 0x800a0800
mov dword [r14 + 0xc], eax
jmp 0x1401673e4
and ecx, 0x3ff5f7ff
or ecx, 0x800a0800
mov dword [r14], ecx
lea r9, [fcn.140164e30]
test r12, r12
cmovne r9, r12
mov r8, qword [0x140233a48]
mov r12, rbx
cmp dword [0x140233a70], r12d
cmove r8, rsi
mov qword [rsp + 0x20], rsi
mov rdx, r14
mov rcx, qword [0x14023fc50]
call qword [sym.imp.USER32.dll_CreateDialogIndirectParamW]
mov qword [0x140233a58], rax
test rax, rax
jne 0x140167439
lea rcx, [rbp - 0x40]
call fcn.140006b94
mov al, sil
jmp 0x1401676bd
test dil, dil
je 0x14016748a
mov dl, r12b
lea rcx, [0x1402371a0]
call fcn.14012d6bc
mov r9, rax
xor r8d, r8d
mov ebx, 0x80
mov edx, ebx
mov rcx, qword [0x140233a58]
call qword [sym.imp.USER32.dll_SendMessageW]
xor edx, edx
lea rcx, [0x1402371a0]
call fcn.14012d6bc
mov r9, rax
mov r8, r12
mov edx, ebx
mov rcx, qword [0x140233a58]
call qword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x14025a578], 0xd
jne 0x1401674c2
xor r8d, r8d
mov edx, 0x9a
mov rcx, qword [0x140233a58]
call fcn.140028174
xor r8d, r8d
mov edx, 0xa3
mov rcx, qword [0x140233a58]
call fcn.140028174
mov byte [0x14025aaa0], r12b
cmp dword [0x14025a578], 7
jne 0x140167589
cmp dword [0x140234a84], esi
jne 0x140167589
lea rbx, [0x1401f2460]
cmp qword [0x140234f20], rsi
je 0x140167530
lea rdx, [0x140234f10]
lea rcx, [rsp + 0x30]
call fcn.1400e393c
nop
lea rdx, [0x1401ddbfc]
mov rcx, rax
call fcn.140082420
movzx ecx, al
add ecx, 0x214
call fcn.1400f70b0
mov rdx, rax
mov rcx, rbx
call fcn.140164510
nop
lea rcx, [rsp + 0x30]
call fcn.140006b94
cmp qword [0x140234f40], rsi
je 0x14016754e
mov ecx, 0x213
call fcn.1400f70b0
mov rdx, rax
mov rcx, rbx
call fcn.140164510
cmp dword [0x140234a80], esi
je 0x14016756b
mov ecx, 0x218
call fcn.1400f70b0
mov rdx, rax
mov rcx, rbx
call fcn.140164510
cmp byte [0x140234d48], sil
je 0x140167589
mov ecx, 0x217
call fcn.1400f70b0
mov rdx, rax
mov rcx, rbx
call fcn.140164510
test r13b, r13b
je 0x1401675a9
xor r9d, r9d
mov edx, 0x111
lea r8d, [rdx - 0x69]
mov rcx, qword [0x140233a58]
call qword [sym.imp.USER32.dll_PostMessageW]
jmp 0x1401675eb
mov eax, dword [0x14025a578]
sub eax, 0xd
neg eax
sbb ebx, ebx
and ebx, 5
test dil, dil
je 0x1401675dc
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetStartupInfoW]
test byte [rsp + 0x6c], r12b
je 0x1401675dc
movzx eax, word [rsp + 0x70]
neg ax
sbb ecx, ecx
and ebx, ecx
mov edx, ebx
mov rcx, qword [0x140233a58]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov eax, dword [0x14025a578]
cmp eax, 2
jbe 0x140167604
cmp eax, 0xd
jne 0x14016764b
mov r8, r15
cmp qword [r15 + 0x18], 8
jb 0x140167611
mov r8, qword [r15]
mov ebx, 0xa6
mov edx, ebx
mov rcx, qword [0x140233a58]
call qword [sym.imp.USER32.dll_SetDlgItemTextW]
mov edx, ebx
mov rcx, qword [0x140233a58]
call qword [sym.imp.USER32.dll_GetDlgItem]
mov rcx, rax
call fcn.14012a118
mov rdx, r15
lea rcx, [0x140231a00]
call fcn.140004958
cmp qword [0x140231a30], rsi
jne 0x140167680
mov rdx, qword [0x140233a58]
lea rcx, [rsp + 0x30]
call fcn.140027c1c
nop
mov rdx, rax
lea rcx, [0x140231a20]
call fcn.140017bbc
nop
lea rcx, [rsp + 0x30]
call fcn.140006b94
mov cl, r12b
call fcn.140169100
mov eax, dword [0x14025a578]
cmp eax, 0xd
je 0x1401676a7
xor edx, edx
mov rcx, qword [0x140233a58]
call fcn.140164424
mov eax, dword [0x14025a578]
test eax, eax
jne 0x1401676b1
call fcn.1401694b4
nop
lea rcx, [rbp - 0x40]
call fcn.140006b94
mov al, r12b
mov rcx, qword [rbp + 0x1c0]
xor rcx, rsp
call fcn.1401afad0
add rsp, 0x2d8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1401b6b94
nop
call fcn.1401b6b94
nop
call fcn.1401b6b94
nop
call fcn.1401b6b94
nop
call fcn.1401b6b94
nop
call fcn.1401b6b94
int3
call fcn.1401b6b94
nop
call fcn.1401b6b94
nop
call fcn.1401b6b94
nop
call fcn.1401b6b94
int3