Function at 0x422280
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x264
mov eax, dword [0x438004]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [sym.imp.USER32.dll_GetDlgItem]
mov eax, ecx
mov ecx, dword [ebp + 0xc]
push esi
push edi
mov dword [ebp - 0x234], ecx
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 0x238], ecx
xor ecx, ecx
push 0x4b8
push eax
mov dword [ebp - 0x230], edx
mov dword [ebp - 0x21c], eax
mov dword [ebp - 0x224], ecx
call ebx
push 0xffffffffffffffeb
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov esi, eax
mov dword [ebp - 0x214], esi
test esi, esi
je 0x42232b
push 0
push 0
push 0xf0
push 0x4ca
push dword [esi + 0x18]
call ebx
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
cmp eax, 1
je 0x422309
and byte [0x439c7c], 0xef
jmp 0x422310
or byte [0x439c7c], 0x10
push 0x14a
push dword [esi + 0x10]
call ebx
mov edx, 0x4389b8
mov ecx, eax
call fcn.00428250
mov byte [0x439c85], al
push 0x480
push dword [esi + 0x14]
call ebx
push 0x47f
push dword [esi + 0x14]
mov edi, eax
call ebx
push 0x486
push dword [esi + 0x14]
mov dword [ebp - 0x22c], eax
call ebx
mov edx, 0x438c08
mov ecx, eax
call fcn.00428250
push 0
push 0
push 0xf0
push 0x482
push dword [esi + 0x14]
mov dword [ebp - 0x220], eax
call ebx
mov ecx, dword [sym.imp.USER32.dll_SendMessageW]
push eax
call ecx
mov esi, eax
mov edx, 0x438d50
xor eax, eax
mov ecx, edi
cmp esi, 1
sete al
mov dword [ebp - 0x228], eax
call fcn.00428250
and byte [0x439c7c], 0xfc
and eax, 2
mov edx, 0x438d50
mov dword [ebp - 0x218], eax
mov ecx, edi
call fcn.00428250
mov cl, byte [0x439c7c]
mov edi, dword [ebp - 0x214]
or cl, al
mov byte [0x439c7c], cl
cmp esi, 1
jne 0x4223f1
push 0x80
push 0x439c86
push 0x485
push dword [edi + 0x14]
call ebx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov cl, byte [0x439c7c]
cmp dword [ebp - 0x228], 0
jne 0x4223ff
and cl, 0xfb
jmp 0x422402
or cl, 4
mov byte [0x439c7c], cl
mov edx, 0x438880
mov ecx, dword [ebp - 0x22c]
call fcn.00428250
cmp eax, 8
je 0x422426
and byte [0x439c7c], 0xf7
jmp 0x42242d
or byte [0x439c7c], 8
mov eax, dword [ebp - 0x220]
mov dword [0x439f86], eax
test eax, eax
jne 0x42244a
mov eax, 0xfffd
and word [0x439c83], ax
jmp 0x422452
or word [0x439c83], 2
push 0
push 0
push 0xf0
push 0x411
push dword [edi + 0x14]
call ebx
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push eax
call esi
cmp eax, 1
je 0x422481
mov eax, 0xfffb
and word [0x439c83], ax
jmp 0x422489
or word [0x439c83], 4
cmp dword [ebp - 0x218], 0
je 0x42259c
mov edx, dword [0x43aca8]
xor ecx, ecx
cmp edx, 0x43aca8
je 0x4225ad
mov eax, edx
test edx, edx
je 0x4225ad
mov eax, dword [eax]
inc ecx
cmp eax, 0x43aca8
je 0x4224c2
test eax, eax
jne 0x4224b4
test ecx, ecx
je 0x4225ad
push 0x40
push 0
push 0x439f8a
call fcn.004023d0
mov ecx, dword [0x43aca8]
add esp, 0xc
and byte [0x439c7c], 0xfd
xor eax, eax
cmp ecx, 0x43aca8
cmovne eax, ecx
lea ecx, [ebp - 0x218]
push ecx
lea ecx, [ebp - 0x214]
add eax, 8
push ecx
push eax
call dword [sym.imp.dcapi.dll_load_file]
add esp, 0xc
test eax, eax
je 0x42253c
push 0x10
push str.Error
push str.Keyfile_not_loaded_n
push dword [ebp - 0x21c]
call dword [sym.imp.USER32.dll_MessageBoxW]
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x224], 1
jmp 0x422574
mov eax, dword [ebp - 0x214]
movups xmm0, xmmword [eax]
movups xmmword [0x439f8a], xmm0
movups xmm0, xmmword [eax + 0x10]
movups xmmword [0x439f9a], xmm0
movups xmm0, xmmword [eax + 0x20]
movups xmmword [0x439faa], xmm0
movups xmm0, xmmword [eax + 0x30]
or byte [0x439c7c], 2
movups xmmword [0x439fba], xmm0
mov ecx, dword [ebp - 0x218]
test ecx, ecx
je 0x422591
nop
mov byte [eax], 0
lea eax, [eax + 1]
sub ecx, 1
jne 0x422580
mov eax, dword [ebp - 0x214]
push eax
call fcn.00408e0e
add esp, 4
jmp 0x4225ad
push 0x40
push 0
push 0x439f8a
call fcn.004023d0
add esp, 0xc
push 0
push 0
push 0xf0
push 0x4c4
push dword [edi + 0x18]
call ebx
push eax
call esi
xor ecx, ecx
cmp eax, 1
sete cl
je 0x4225db
mov eax, 0xfeff
and word [0x439c83], ax
jmp 0x4225e7
mov eax, 0x100
or word [0x439c83], ax
test ecx, ecx
je 0x422606
push 0x80
push 0x43a04a
push 0x4c5
push dword [edi + 0x18]
call ebx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
push 0x47e
push dword [edi + 0x18]
call ebx
mov edx, 0x43893c
mov ecx, eax
call fcn.00428250
mov byte [0x439c7e], al
cmp al, 5
jne 0x422703
push 0
push 0
push 0x1042
push dword [0x43ad30]
call esi
movaps xmm0, xmmword [0x434a10]
mov esi, eax
mov ecx, dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [ebp - 0x210]
mov dword [ebp - 0x24c], eax
lea eax, [ebp - 0x260]
push eax
push 0
push 0x104b
push dword [0x43ad30]
mov dword [ebp - 0x260], 1
mov dword [ebp - 0x25c], esi
mov dword [ebp - 0x258], 2
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0
movups xmmword [ebp - 0x248], xmm0
call ecx
cmp esi, 0xffffffff
jne 0x4226ae
xor eax, eax
mov word [ebp - 0x210], ax
lea ecx, [ebp - 0x210]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4226b7
sub ecx, edx
sar ecx, 1
je 0x422770
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x1032
push dword [0x43ad30]
call esi
test eax, eax
je 0x422770
push 0x10
lea eax, [ebp - 0x210]
push 0
push eax
call fcn.00404ba8
add esp, 0xc
mov dword [0x439c7f], eax
push 0
push 0
push 0xf0
push 0x48a
push dword [edi + 0x1c]
call ebx
push eax
call esi
push 0
push 0
mov esi, eax
xor eax, eax
push 0xf0
cmp esi, 1
push 0x494
push dword [edi + 0x1c]
sete al
mov dword [ebp - 0x220], eax
call ebx
mov ecx, dword [sym.imp.USER32.dll_SendMessageW]
push eax
call ecx
dec eax
neg eax
push 0x488
push dword [edi + 0x1c]
sbb eax, eax
inc eax
mov dword [ebp - 0x218], eax
call ebx
mov edx, 0x438bd0
mov ecx, eax
call fcn.00428250
cmp esi, 1
je 0x42279e
and al, 0xfe
jmp 0x4227a0
push 0x10
push str.Error
push str.You_must_select_partition_by_id
push dword [ebp - 0x21c]
call dword [sym.imp.USER32.dll_MessageBoxW]
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004010c7
mov esp, ebp
pop ebp
ret
or al, 1
cmp dword [ebp - 0x218], 0
mov byte [0x439c7d], al
jne 0x4227bc
mov eax, 0xfff7
and word [0x439c83], ax
jmp 0x4227c4
or word [0x439c83], 8
cmp dword [ebp - 0x220], 0
je 0x4227e8
push 0x80
push 0x439d06
push 0x489
push dword [edi + 0x1c]
call ebx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
push 0
push 0
push 0xf0
push 0x4bf
push dword [edi + 0x20]
call ebx
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push eax
call esi
cmp eax, 1
je 0x422817
mov eax, 0xffef
and word [0x439c83], ax
jmp 0x42281f
or word [0x439c83], 0x10
push 0
push 0
push 0xf0
push 0x4c6
push dword [edi + 0x20]
call ebx
push eax
call esi
xor ecx, ecx
cmp eax, 1
sete cl
je 0x42284d
mov eax, 0xff7f
and word [0x439c83], ax
jmp 0x422859
mov eax, 0x80
or word [0x439c83], ax
test ecx, ecx
je 0x422878
push 0x80
push 0x439fca
push 0x4c7
push dword [edi + 0x20]
call ebx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
push 0
push 0
push 0xf0
push 0x4c0
push dword [edi + 0x20]
call ebx
push eax
call esi
cmp eax, 1
je 0x4228a1
mov eax, 0xffbf
and word [0x439c83], ax
jmp 0x4228a9
or word [0x439c83], 0x40
mov eax, dword [ebp - 0x224]
test eax, eax
jne 0x4229b3
mov eax, dword [ebp - 0x230]
cmp eax, 3
ja case.default.0x4228c6
jmp dword [eax*4 + 0x4229c4]
mov esi, dword [ebp + 8]
push esi
call dword [sym.imp.dcapi.dll_dc_is_dcs_on_disk]
add esp, 4
mov ebx, eax
push 0x439c70
test ebx, ebx
je 0x4228f3
push 1
push esi
call dword [sym.imp.dcapi.dll_dc_efi_config]
add esp, 0xc
jmp 0x42294e
push 0
push esi
call dword [sym.imp.dcapi.dll_dc_set_mbr_config]
add esp, 0xc
jmp 0x42294e
mov esi, dword [ebp - 0x234]
push esi
call dword [sym.imp.dcapi.dll_dc_is_dcs_on_partition]
add esp, 4
mov ebx, eax
push 0x439c70
push 1
push esi
test ebx, ebx
je 0x42292a
call dword [sym.imp.dcapi.dll_dc_efi_config_by_partition]
add esp, 0xc
jmp 0x42294e
call dword [sym.imp.dcapi.dll_dc_mbr_config_by_partition]
add esp, 0xc
jmp 0x42294e
push 0x439c70
push dword [ebp - 0x238]
push 0
call dword [sym.imp.dcapi.dll_dc_set_mbr_config]
add esp, 0xc
or ebx, 0xffffffff
mov esi, eax
test esi, esi
je case.default.0x4228c6
cmp ebx, 1
jne 0x422960
mov eax, str.EFI
jmp 0x42296f
test ebx, ebx
mov eax, str.MBR
mov ecx, 0x42ff3c
cmovne eax, ecx
push eax
push esi
push str.Error_set__sbootloader_configuration
push dword [ebp - 0x21c]
call fcn.00426320
add esp, 0x10
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004010c7
mov esp, ebp
pop ebp
ret
mov esi, dword [sym.imp.USER32.dll_GetParent]
push 1
push dword [ebp - 0x21c]
call esi
push eax
call esi
push eax
call dword [sym.imp.USER32.dll_EndDialog]
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004010c7
mov esp, ebp
pop ebp
ret