Function at 0x42e3b0
Capabilities:
Get graphical window text
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1e4
mov eax, dword [0x4f22ec]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x53d934], 0
push ebx
push esi
push edi
mov edi, ecx
mov dword [ebp - 0x1d4], 0
mov dword [ebp - 0x1dc], edi
mov dword [ebp - 0x1d8], 0
jne 0x42e40a
push str.IsWow64Process2
push ecx
mov ecx, str.Kernel32
call fcn.00409990
add esp, 4
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x53d934], eax
push edi
call dword [sym.imp.USER32.dll_GetDC]
push 0x48
mov esi, eax
push 0x5a
push esi
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push eax
push 9
call dword [sym.imp.KERNEL32.dll_MulDiv]
neg eax
mov dword [ebp - 0x1c4], eax
cmp esi, 0xffffffff
je 0x42e440
test esi, esi
je 0x42e440
push esi
push edi
call dword [sym.imp.USER32.dll_ReleaseDC]
mov dword [0x5430c4], edi
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ebx, dword [sym.imp.USER32.dll_GetDlgItem]
push 0x3e9
push edi
call ebx
push 0x3ec
push edi
mov dword [0x542e7c], eax
call ebx
push 0x3f9
push edi
mov dword [0x542af4], eax
call ebx
push 0x3ea
push edi
mov dword [0x5429a4], eax
call ebx
push 0x3ed
push edi
mov dword [0x542fac], eax
call ebx
push 0x3ef
push edi
mov dword [0x542fb8], eax
call ebx
push 0x3f2
push edi
mov dword [0x542e78], eax
call ebx
push 0x3f3
push edi
mov dword [0x4fadd4], eax
call ebx
push 0x402
push edi
mov dword [0x542d44], eax
call ebx
push 0x3f6
push edi
mov dword [0x542e64], eax
call ebx
push 0x3f4
push edi
mov dword [0x53db68], eax
call ebx
push 0x3fc
push edi
mov dword [0x542e68], eax
call ebx
push 0x3eb
push edi
mov dword [0x542e80], eax
call ebx
mov esi, eax
mov byte [0x53d698], 0
push 2
push 0x40
mov dword [0x53db18], esi
call fcn.0049570f
add esp, 8
mov ebx, eax
push 0x40
push ebx
push esi
call dword [sym.imp.USER32.dll_GetWindowTextW]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c0], eax
test esi, esi
je 0x42e558
push 0
push 0
push 0x40
push 0x53d698
push 0xffffffffffffffff
push ebx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
jne 0x42e558
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x42e55e
mov esi, dword [ebp - 0x1c0]
test ebx, ebx
je 0x42e56b
push ebx
call fcn.004998ec
add esp, 4
mov byte [0x53d6d7], 0
push esi
call dword [sym.imp.KERNEL32.dll_SetLastError]
push 2
push 0x40
call fcn.0049570f
mov esi, eax
add esp, 8
test esi, esi
je 0x42e5cf
push 0x40
push esi
push 0xffffffffffffffff
push 0x53d698
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push 0x40
push esi
call dword [sym.imp.USER32.dll_CharUpperBuffW]
push 0
push 0
push 0x40
push 0x53d698
push 0xffffffffffffffff
push esi
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push esi
call fcn.004998ec
add esp, 4
mov ecx, dword [0x53db18]
mov edx, 0x53d698
call fcn.0041a5b0
push 2
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push 2
push 0x40
mov esi, eax
mov byte [0x53db20], 0
call fcn.0049570f
add esp, 8
mov ebx, eax
push 0x40
push ebx
push esi
call dword [sym.imp.USER32.dll_GetWindowTextW]
mov esi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x1c0], eax
test esi, esi
je 0x42e644
push 0
push 0
push 0x40
push 0x53db20
push 0xffffffffffffffff
push ebx
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
jne 0x42e644
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x42e64a
mov esi, dword [ebp - 0x1c0]
test ebx, ebx
je 0x42e657
push ebx
call fcn.004998ec
add esp, 4
mov byte [0x53db5f], 0
push esi
call dword [sym.imp.KERNEL32.dll_SetLastError]
push 2
push 0x40
call fcn.0049570f
mov esi, eax
add esp, 8
test esi, esi
je 0x42e6bb
push 0x40
push esi
push 0xffffffffffffffff
push 0x53db20
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push 0x40
push esi
call dword [sym.imp.USER32.dll_CharUpperBuffW]
push 0
push 0
push 0x40
push 0x53db20
push 0xffffffffffffffff
push esi
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push esi
call fcn.004998ec
add esp, 4
mov ecx, 0x53db20
mov eax, str.SCHLIEEN
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42e6e5
test dl, dl
je 0x42e6e1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42e6e5
add eax, 2
add ecx, 2
test dl, dl
jne 0x42e6c5
xor eax, eax
jmp 0x42e6ea
sbb eax, eax
or eax, 1
test eax, eax
jne 0x42e718
mov eax, dword [str.SCHLIESSEN]
mov dword [0x53db20], eax
mov eax, dword [0x4d971c]
mov dword [0x53db24], eax
mov ax, word [0x4d9720]
mov word [0x53db28], ax
mov al, byte [0x4d9722]
mov byte [0x53db2a], al
mov ebx, dword [sym.imp.USER32.dll_GetDlgItem]
push 2
push edi
call ebx
mov edx, 0x53db20
mov ecx, eax
call fcn.0041a5b0
push 0x40
push 0x3f6
push edi
call ebx
mov edx, 0x53da88
mov ecx, eax
call fcn.00426d10
add esp, 4
push 0xbe0
call fcn.0041afe0
add esp, 4
test eax, eax
je 0x42e786
push 0xbe0
call fcn.0041afe0
add esp, 4
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42e770
sub eax, edx
inc eax
cmp eax, 0x40
jb 0x42e786
mov eax, 0x40
jmp 0x42e7b1
push 0xbe0
call fcn.0041afe0
add esp, 4
test eax, eax
je 0x42e7b0
push 0xbe0
call fcn.0041afe0
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42e7a7
sub eax, edx
inc eax
push eax
push 0xbe0
call fcn.0041afe0
add esp, 4
push eax
push 0x53dac8
call fcn.00493080
add esp, 0xc
push 0xbe0
call fcn.0041afe0
add esp, 4
test eax, eax
je 0x42e806
push 0xbe0
call fcn.0041afe0
add esp, 4
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42e7f0
sub eax, edx
inc eax
cmp eax, 0x40
jb 0x42e806
mov eax, 0x53db07
jmp 0x42e836
push 0xbe0
call fcn.0041afe0
add esp, 4
test eax, eax
je 0x42e830
push 0xbe0
call fcn.0041afe0
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42e827
sub eax, edx
lea eax, [eax + 0x53dac8]
push 2
push 0x40
mov byte [eax], 0
call fcn.0049570f
mov esi, eax
add esp, 8
test esi, esi
je 0x42e88f
push 0x40
push esi
push 0xffffffffffffffff
push 0x53da88
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push 0x40
push esi
call dword [sym.imp.USER32.dll_CharUpperBuffW]
push 0
push 0
push 0x40
push 0x53da88
push 0xffffffffffffffff
push esi
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push esi
call fcn.004998ec
add esp, 4
push 2
push 0x40
call fcn.0049570f
mov esi, eax
add esp, 8
test esi, esi
je 0x42e8e5
push 0x40
push esi
push 0xffffffffffffffff
push 0x53dac8
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push 0x40
push esi
call dword [sym.imp.USER32.dll_CharUpperBuffW]
push 0
push 0
push 0x40
push 0x53dac8
push 0xffffffffffffffff
push esi
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push esi
call fcn.004998ec
add esp, 4
push 0x3f6
push edi
call ebx
mov edx, 0x53da88
mov ecx, eax
call fcn.0041a5b0
push 0xbbf
call fcn.0041afe0
add esp, 4
test eax, eax
je 0x42e936
push 0xbbf
call fcn.0041afe0
add esp, 4
lea edx, [eax + 1]
lea ebx, [ebx]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42e920
sub eax, edx
inc eax
cmp eax, 0x40
jb 0x42e936
mov eax, 0x40
jmp 0x42e961
push 0xbbf
call fcn.0041afe0
add esp, 4
test eax, eax
je 0x42e960
push 0xbbf
call fcn.0041afe0
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42e957
sub eax, edx
inc eax
push eax
push 0xbbf
call fcn.0041afe0
add esp, 4
push eax
push 0x53d8d8
call fcn.00493080
add esp, 0xc
push 0xbbf
call fcn.0041afe0
add esp, 4
test eax, eax
je 0x42e9b6
push 0xbbf
call fcn.0041afe0
add esp, 4
lea edx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42e9a0
sub eax, edx
inc eax
cmp eax, 0x40
jb 0x42e9b6
mov eax, 0x53d917
jmp 0x42e9e6
push 0xbbf
call fcn.0041afe0
add esp, 4
test eax, eax
je 0x42e9e0
push 0xbbf
call fcn.0041afe0
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x42e9d7
sub eax, edx
lea eax, [eax + 0x53d8d8]
push 2
push 0x40
mov byte [eax], 0
call fcn.0049570f
mov esi, eax
add esp, 8
test esi, esi
je 0x42ea3f
push 0x40
push esi
push 0xffffffffffffffff
push 0x53d8d8
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push 0x40
push esi
call dword [sym.imp.USER32.dll_CharUpperBuffW]
push 0
push 0
push 0x40
push 0x53d8d8
push 0xffffffffffffffff
push esi
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push esi
call fcn.004998ec
add esp, 4
call fcn.0044f540
mov ecx, edi
call fcn.0044cf30
mov ecx, edi
call fcn.0044d0f0
mov ecx, edi
call fcn.0044d3b0
mov ecx, edi
call fcn.0044da10
push 0xcf4
call fcn.0041afe0
mov ecx, dword [0x542e68]
add esp, 4
mov edx, eax
call fcn.0044cdf0
push 0xcf5
call fcn.0041afe0
mov ecx, dword [0x542e80]
add esp, 4
mov edx, eax
call fcn.0044cdf0
push str.Segoe_UI
push 0
push 2
push 0
push 0
push 1
push 0
push 0
push 0
push 0x190
push 0
push 0
push 0
push dword [ebp - 0x1c4]
call dword [sym.imp.GDI32.dll_CreateFontA]
mov ecx, edi
mov dword [0x5429d0], eax
call fcn.00446ee0
push 0x80
lea eax, [ebp - 0xa8]
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextA]
lea eax, [ebp - 0xa8]
push 0x4d69f4
push eax
call fcn.004a3110
add esp, 8
mov esi, 0x542b10
jmp 0x42eb00
push 0x4d32a4
push 0
call fcn.004a3110
add esp, 8
test eax, eax
je 0x42eb2a
push eax
call fcn.004a2aea
mov word [esi], ax
add esp, 4
add esi, 2
cmp esi, 0x542b16
jl 0x42eb00
cmp dword [0x4fad90], 0
mov eax, str._Portable_
mov ebx, 0x4ce59a
cmove eax, ebx
push eax
movzx eax, word [0x542b14]
push 0x4d69f4
push eax
movzx eax, word [0x542b12]
push eax
movzx eax, word [0x542b10]
push eax
push str.Rufus__d._d._d_s_s
lea eax, [ebp - 0xa8]
push 0x80
push eax
call fcn.00403820
add esp, 0x20
mov byte [ebp - 0x29], 0
lea edx, [ebp - 0xa8]
mov ecx, edi
call fcn.0041a5b0
lea eax, [ebp - 0xa8]
push eax
push 0
call dword [sym.imp.USER32.dll_FindWindowA]
cmp dword [0x4fae0c], 0
mov dword [0x4fae20], eax
je 0x42ec0f
mov eax, 0x5b
mov word [ebp - 0x24], ax
xor eax, eax
mov dword [ebp - 0x22], eax
mov dword [ebp - 0x1e], eax
mov dword [ebp - 0x1a], eax
mov dword [ebp - 0x16], eax
mov dword [ebp - 0x12], eax
mov dword [ebp - 0xe], eax
mov dword [ebp - 0xa], eax
mov word [ebp - 6], ax
lea eax, [ebp - 0x1b0]
push eax
call fcn.004a15f4
add esp, 4
lea eax, [ebp - 0x1b0]
push eax
lea eax, [ebp - 0x23]
push 0x1e
push eax
call fcn.004a4116
add esp, 0xc
test eax, eax
jne 0x42ec0f
lea ecx, [ebp - 0x24]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42ebf5
sub ecx, edx
lea eax, [ebp - 0x24]
push eax
mov byte [ebp + ecx - 0x25], 0x5d
call fcn.004407e0
add esp, 4
cmp dword [0x4fad90], 0
je 0x42ec1f
mov eax, str._Portable_
jmp 0x42ec2e
cmp dword [0x4fb838], 0
mov eax, str._AppStore_version_
cmove eax, ebx
push eax
movzx eax, word [0x542b14]
push 0x4d69f4
push eax
movzx eax, word [0x542b12]
push eax
movzx eax, word [0x542b10]
push eax
push str.Rufus_x86_v_d._d._d_s_s
call fcn.004407e0
add esp, 0x18
cmp dword [0x53d934], 0
je 0x42ed17
lea eax, [ebp - 0x1d8]
push eax
lea eax, [ebp - 0x1d4]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [0x53d934]
test eax, eax
je 0x42ed17
mov eax, dword [ebp - 0x1d4]
mov esi, 0x14c
mov ecx, dword [ebp - 0x1d8]
test ax, ax
mov edx, 0x1c0
cmove eax, esi
mov dword [ebp - 0x1d4], eax
cmp cx, dx
je 0x42ecba
mov edx, 0xaa64
cmp cx, dx
jne 0x42ed17
cmp ax, si
je 0x42ecc9
mov edx, 0x8664
cmp ax, dx
jne 0x42ed17
movzx eax, cx
cmp eax, 0x8664
ja 0x42ecf6
je 0x42ecef
sub eax, 0x14c
je 0x42ece8
sub eax, 0x74
jne 0x42ecfd
mov eax, 0x4d599c
jmp 0x42ed09
mov eax, 0x4d5990
jmp 0x42ed09
mov eax, 0x4d598c
jmp 0x42ed09
cmp eax, 0xaa64
je 0x42ed04
mov eax, str.unknown
jmp 0x42ed09
mov eax, str.arm64
push eax
push str.Notice:_Running_emulated_on__s_platform
call fcn.004407e0
add esp, 8
xor esi, esi
mov dword [ebp - 0x1cc], 0x4f430b
xor edi, edi
mov dword [ebp - 0x1c4], esi
mov dword [ebp - 0x1c0], edi
mov edx, dword [esi*4 + 0x4cb224]
lea eax, [ebp - 0x1c8]
mov ecx, dword [0x542fb0]
push 1
push eax
push str.ldlinux_sys
push 0xa
mov dword [ebp - 0x1c8], 0
call fcn.0043f5c0
mov ebx, eax
add esp, 0x10
test ebx, ebx
jne 0x42ed7c
lea eax, [esi + 4]
push eax
push str.Warning:_could_not_read_embedded_Syslinux_v_d_version
call fcn.004407e0
add esp, 8
jmp 0x42f0dd
mov eax, dword [ebp - 0x1c8]
mov esi, 0x4ce59a
mov dword [ebp - 0x1b0], 0x554e494c
mov word [ebp - 0x1ac], 0x2058
mov dword [ebp - 0x1d0], esi
cmp eax, 0x100
jb 0x42ee85
mov edi, 0x40
add eax, 0xffffffc0
cmp eax, edi
jbe 0x42ee7f
mov ecx, dword [ebp - 0x1c8]
mov eax, dword [edi + ebx]
lea edx, [ebp - 0x1b0]
cmp eax, dword [edx]
jne 0x42ee6d
movzx eax, word [edi + ebx + 4]
cmp ax, word [edx + 4]
jne 0x42ee6d
mov al, byte [edi + ebx - 3]
cmp al, 0x49
jne 0x42edfd
cmp byte [edi + ebx - 2], 0x53
jne 0x42ee6d
cmp byte [edi + ebx - 1], 0x4f
je 0x42ee0e
jmp 0x42ee6d
cmp al, 0x53
jne 0x42ee6d
cmp byte [edi + ebx - 2], 0x59
jne 0x42ee6d
cmp byte [edi + ebx - 1], al
jne 0x42ee6d
add edi, 6
lea ecx, [ebp - 0x1bc]
push 0xa
push ecx
lea eax, [edi + ebx]
push eax
mov dword [ebp - 0x1e0], eax
call fcn.004a0ef4
movzx ecx, al
add esp, 0xc
mov eax, 0x100
imul ecx, eax
lea eax, [ebp - 0x1bc]
push 0xa
push eax
mov eax, dword [ebp - 0x1bc]
inc eax
movzx esi, cx
push eax
call fcn.004a0ef4
movzx eax, al
add esp, 0xc
add ax, si
movzx eax, ax
mov dword [ebp - 0x1e4], eax
test ax, ax
jne 0x42eed2
mov ecx, dword [ebp - 0x1c8]
inc edi
lea eax, [ecx - 0x40]
cmp edi, eax
jb 0x42edc1
mov esi, dword [ebp - 0x1d0]
mov edi, dword [ebp - 0x1c0]
xor ecx, ecx
mov eax, dword [ebp - 0x1c4]
mov word [eax*2 + 0x542c28], cx
movzx eax, cl
push eax
movzx eax, cx
shr eax, 8
push eax
mov eax, dword [ebp - 0x1cc]
push str._d._02d
add eax, 0xfffffff5
push 0xc
push eax
call fcn.00403820
mov eax, dword [ebp - 0x1cc]
add esp, 0x14
mov byte [eax], 0
test esi, esi
jne 0x42f047
xor ecx, ecx
inc ecx
jmp 0x42f077
mov edx, dword [ebp - 0x1bc]
test edx, edx
jne 0x42eee0
xor ecx, ecx
jmp 0x42eeee
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42eee5
sub ecx, esi
mov byte [edx + ecx], 0
xor edi, edi
mov eax, dword [ebp - 0x1bc]
mov byte [eax], 0x2f
mov eax, dword [ebp - 0x1e0]
mov ecx, dword [ebp - 0x1bc]
mov dl, byte [eax]
cmp dl, byte [ecx + 1]
jne 0x42ef22
lea esi, [ecx + 1]
cmp dl, 0x20
je 0x42ef22
mov dl, byte [eax + 1]
inc eax
inc esi
inc edi
cmp dl, byte [esi]
je 0x42ef13
cmp byte [ecx + edi + 1], 0x2d
lea eax, [edi + 1]
cmovne eax, edi
cmp eax, 4
jb 0x42ef44
mov byte [eax + ecx], 0x2f
mov ecx, dword [ebp - 0x1bc]
add ecx, eax
mov dword [ebp - 0x1bc], ecx
test ecx, ecx
jne 0x42ef4d
or eax, 0xffffffff
jmp 0x42ef62
mov edx, ecx
lea esi, [edx + 1]
mov al, byte [edx]
inc edx
test al, al
jne 0x42ef52
sub edx, esi
lea eax, [edx - 1]
test eax, eax
je 0x42ef7e
mov dl, byte [ecx + eax]
cmp dl, 0x20
je 0x42ef6f
cmp dl, 0x2a
jne 0x42ef7e
mov byte [ecx + eax], 0
mov ecx, dword [ebp - 0x1bc]
sub eax, 1
jne 0x42ef62
mov edx, 1
test ecx, ecx
je 0x42f027
mov esi, ecx
lea edi, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x42ef90
sub esi, edi
cmp edx, esi
jae 0x42f027
cmp byte [ecx + edx], 0x3c
jne 0x42efb1
mov byte [ecx + edx], 0x5f
mov ecx, dword [ebp - 0x1bc]
cmp byte [ecx + edx], 0x3e
jne 0x42efc1
mov byte [ecx + edx], 0x5f
mov ecx, dword [ebp - 0x1bc]
cmp byte [ecx + edx], 0x3a
jne 0x42efd1
mov byte [ecx + edx], 0x5f
mov ecx, dword [ebp - 0x1bc]
cmp byte [ecx + edx], 0x7c
jne 0x42efe1
mov byte [ecx + edx], 0x5f
mov ecx, dword [ebp - 0x1bc]
cmp byte [ecx + edx], 0x2a
jne 0x42eff1
mov byte [ecx + edx], 0x5f
mov ecx, dword [ebp - 0x1bc]
cmp byte [ecx + edx], 0x3f
jne 0x42f001
mov byte [ecx + edx], 0x5f
mov ecx, dword [ebp - 0x1bc]
cmp byte [ecx + edx], 0x5c
jne 0x42f011
mov byte [ecx + edx], 0x5f
mov ecx, dword [ebp - 0x1bc]
cmp byte [ecx + edx], 0x2f
jne 0x42f021
mov byte [ecx + edx], 0x5f
mov ecx, dword [ebp - 0x1bc]
inc edx
jmp 0x42ef83
cmp byte [ecx + 1], 0
mov esi, 0x4ce59a
mov eax, dword [ebp - 0x1e4]
mov edi, dword [ebp - 0x1c0]
cmovne esi, ecx
movzx ecx, ax
jmp 0x42ee87
mov ecx, esi
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42f050
sub ecx, edx
lea eax, [ecx + 1]
cmp eax, 0x20
jae 0x42f072
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42f066
sub ecx, edx
inc ecx
jmp 0x42f077
mov ecx, 0x20
push ecx
lea eax, [edi + 0x542280]
push esi
push eax
call fcn.00493080
add esp, 0xc
test esi, esi
jne 0x42f094
lea eax, [esi + 0x542280]
jmp 0x42f0ca
mov ecx, esi
lea edx, [ecx + 1]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42f0a0
sub ecx, edx
lea eax, [ecx + 1]
cmp eax, 0x20
jae 0x42f0c5
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x42f0b4
sub esi, ecx
lea eax, [esi + 0x542280]
jmp 0x42f0ca
mov eax, 0x54229f
push ebx
mov byte [eax + edi], 0
call fcn.004998ec
mov esi, dword [ebp - 0x1c4]
add esp, 4
add dword [ebp - 0x1cc], 0xc
inc esi
add edi, 0x20
mov dword [ebp - 0x1c4], esi
mov dword [ebp - 0x1c0], edi
cmp esi, 2
jb 0x42ed31
push 0x52b89a
push str.Windows_version:__s
call fcn.004407e0
push 0x5422a0
push 0x4f430c
push 0x542280
push 0x4f4300
push str.Syslinux_versions:__s_s___s_s
call fcn.004407e0
add esp, 0x1c
push str.2.06
push str.0.4.6a
push str.Grub_versions:__s___s
call fcn.004407e0
mov esi, dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
add esp, 0xc
call esi
push 0
push 0x55
lea ecx, [ebp - 0x158]
movzx eax, ax
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_LCIDToLocaleName]
test eax, eax
jle 0x42f188
push 0
push 0
push 0x55
push 0x53dde0
push 0xffffffffffffffff
lea eax, [ebp - 0x158]
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
jmp 0x42f1a5
mov eax, dword [str.en_US]
mov dword [0x53dde0], eax
mov ax, word [0x4dc010]
mov word [0x53dde4], ax
mov byte [0x53dde5], 0
push 0x53dde0
call esi
movzx eax, ax
push eax
push str.System_locale_ID:_0x_04X___s_
call fcn.004407e0
add esp, 0xc
cmp dword [0x52b91c], 0
je 0x42f1d8
push 0x540f60
push 0x4c9bac
call fcn.004407e0
add esp, 8
mov eax, dword [0x4fadd8]
mov dword [0x52b91c], 0
test byte [eax + 4], 2
je 0x42f207
push dword [eax + 0x18]
push str.NOTE:_The__s_translation_requires_an_update__but_the_current_translator_hasnt_submitted_one._Because_of_this__some_messages_will_only_be_displayed_in_English.
call fcn.004407e0
push str.If_you_think_you_can_help_update_this_translation__please_e_mail_the_author_of_this_application
call fcn.004407e0
add esp, 0xc
push 0x205
push str.Found__d_officially_revoked_UEFI_bootloaders_from_embedded_list
call fcn.004407e0
add esp, 8
call fcn.00423d30
test eax, eax
je 0x42f237
push dword [0x4fb848]
push str.Found__d_additional_revoked_UEFI_bootloaders_from_this_systems_SKUSiPolicy.p7b
call fcn.004407e0
add esp, 8
jmp 0x42f244
push str.WARNING:_Could_not_parse_this_systems_SkuSiPolicy.p7b_for_additional_revoked_UEFI_bootloaders
call fcn.004407e0
add esp, 4
push 4
lea eax, [ebp - 0x1d0]
mov edx, str.SYSTEMCurrentControlSetPoliciesMicrosoftFVE
push eax
push 4
mov ecx, 0x80000002
call fcn.00427520
add esp, 0xc
cmp dword [ebp - 0x1d0], 0
je 0x42f277
push str.WARNING:_This_system_has_a_policy_set_to_prevent_write_access_to_FIXED_drives_not_using_BitLocker
call fcn.004407e0
add esp, 4
push 4
lea eax, [ebp - 0x1d0]
mov edx, str.SYSTEMCurrentControlSetControlStorageDevicePoliciesWriteProtect
push eax
push 4
mov ecx, 0x80000002
call fcn.00427520
add esp, 0xc
cmp dword [ebp - 0x1d0], 0
je 0x42f2aa
push str.WARNING:_This_system_has_a_policy_set_to_prevent_write_access_to_storage_devices
call fcn.004407e0
add esp, 4
cmp dword [0x4f4254], 0
jne 0x42f2c0
push str.Notice:_Windows_VDS_is_unavailable
call fcn.004407e0
add esp, 4
push 0x53f058
push 0x4bc630
push 0x17
push 0
push 0x4bc650
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x42f2f7
push eax
push str.CoCreateInstance_for_TaskbarList_failed:_error__X_n
call fcn.004407e0
add esp, 8
mov dword [0x53f058], 0
jmp 0x42f311
mov ecx, dword [0x53f058]
test ecx, ecx
je 0x42f311
mov eax, dword [ecx]
push 2
push dword [0x5430c4]
mov eax, dword [eax + 0x28]
push ecx
call eax
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push 0xffff0000
push 0
push 0x401
push dword [0x4fadd4]
call ebx
mov esi, 1
cmp esi, 1
jne 0x42f359
push esi
push 0xbda
call fcn.0041afe0
mov ecx, dword [0x542e68]
mov edx, 0x143
push eax
push 0
call fcn.00426ad0
add esp, 0x10
inc esi
jmp 0x42f330
cmp esi, 2
jne 0x42f365
mov eax, 0x4ce59a
jmp 0x42f379
push dword [esi*4 + 0x4cb220]
push 0xc0f
call fcn.0041afe0
add esp, 8
push eax
xor eax, eax
cmp esi, 2
setne al
lea eax, [eax*2 + 2]
push eax
push 0xbdb
call fcn.0041afe0
mov ecx, dword [0x542e68]
add esp, 0xc
mov edx, 0x143
push eax
push 0
call fcn.00426ad0
inc esi
add esp, 8
cmp esi, 5
jle 0x42f330
push 0
push 0
push 0x14e
push dword [0x542e68]
call ebx
call fcn.00451d40
call fcn.00427860
push 0x80
push ecx
push 0x4d9ab0
push 0xbd6
call fcn.0041afe0
mov ecx, dword [0x542e80]
add esp, 0xc
mov edx, 0x143
push eax
push 0
call fcn.00426ad0
add esp, 8
push eax
push 0x151
push dword [0x542e80]
call ebx
mov esi, 0x81
lea edi, [esi - 0x7a]
push esi
push ecx
lea eax, [esi - 0x7f]
push eax
push esi
push 0xc25
call fcn.0041afe0
mov ecx, dword [0x542e80]
mov edx, 0x143
push eax
push 0
call fcn.00426ad0
add esp, 0x18
push eax
push 0x151
push dword [0x542e80]
call ebx
inc esi
sub edi, 1
jne 0x42f416
push edi
push edi
push 0x14e
push dword [0x542e80]
call ebx
push 4
push 0x10
mov dword [0x542b08], 0x10
mov dword [0x542b04], edi
call fcn.0049570f
add esp, 8
mov dword [0x542b00], eax
test eax, eax
jne 0x42f492
push str.Could_not_allocate_string_array
call fcn.004407e0
add esp, 4
push 4
push 0x10
mov dword [0x5429b8], 0x10
mov dword [0x5429b4], 0
call fcn.0049570f
add esp, 8
mov dword [0x5429b0], eax
test eax, eax
jne 0x42f4c8
push str.Could_not_allocate_string_array
call fcn.004407e0
add esp, 4
mov edi, dword [ebp - 0x1dc]
mov ebx, dword [sym.imp.USER32.dll_CheckDlgButton]
push 1
push 0x3f0
push edi
call ebx
push 1
push 0x3f7
push edi
call ebx
mov ecx, edi
call fcn.0044fe80
push str.Segoe_UI
push 0
push 2
push 0
push 0
push 1
push 0
push 0
push 0
push 0x258
push 0
push 0
push 0
push 0x48
push 0x5a
push dword [0x5430c4]
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push eax
push 0xe
call dword [sym.imp.KERNEL32.dll_MulDiv]
neg eax
push eax
call dword [sym.imp.GDI32.dll_CreateFontA]
mov edx, eax
xor ebx, ebx
mov dword [ebp - 0x1d0], edx
mov dword [ebp - 0x1c0], ebx
push 1
push edx
push 0x30
push dword [ebx + 0x4cb864]
push edi
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
push dword [ebx + 0x4cb864]
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
push 0x100
mov ebx, eax
lea eax, [ebp - 0x1a8]
push 0
push eax
call fcn.00493600
add esp, 0xc
lea eax, [ebp - 0x1a8]
push 0x7c
push eax
push ebx
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea esi, [ebp - 0x1a8]
lea ecx, [esi + 2]
jmp 0x42f5a0
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x42f5a0
sub esi, ecx
sar esi, 1
cmp esi, 0x7e
jb 0x42f5cb
push 0x243
push str.C:UsersgamerDownloads_rufus72_rufus_7_srcui.c
push str.wlen___ARRAYSIZE_wtmp____2
call fcn.0049ed6b
add esp, 0xc
lea eax, [ebp - 0x1a8]
mov dword [ebp + esi*2 - 0x1a8], 0x200020
push eax
push ebx
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov esi, dword [sym.imp.USER32.dll_GetWindowRect]
lea eax, [ebp - 0x1b8]
push eax
push ebx
call esi
push 2
lea eax, [ebp - 0x1b8]
push eax
push edi
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
xor edx, edx
mov ecx, ebx
call fcn.00446fb0
push 4
push edx
push eax
push dword [ebp - 0x1b4]
push dword [ebp - 0x1b8]
push 0
push ebx
call dword [sym.imp.USER32.dll_SetWindowPos]
mov ebx, dword [ebp - 0x1c0]
mov edx, dword [ebp - 0x1d0]
add ebx, 4
mov dword [ebp - 0x1c0], ebx
cmp ebx, 0xc
jb 0x42f548
mov ecx, edi
call fcn.0044dd20
movss xmm0, dword [0x4f4324]
xor ecx, ecx
comiss xmm0, dword [0x4ebaf4]
jae 0x42f7a1
mov edx, 0x4cb870
mov dword [ebp - 0x1c8], 0x12
mov dword [ebp - 0x1cc], edx
lea esp, [esp]
xor eax, eax
mov dword [ebp - 0x1c0], 0
cmp dword [edx], 0x3f0
mov dword [ebp - 0x1c4], edx
sete al
add eax, 4
add eax, ecx
mov dword [ebp - 0x1bc], eax
mov eax, edx
jmp 0x42f6b0
mov eax, dword [eax]
test eax, eax
je 0x42f750
push eax
push edi
call dword [sym.imp.USER32.dll_GetDlgItem]
mov ebx, eax
lea eax, [ebp - 0x1b8]
push eax
push ebx
call esi
push 2
lea eax, [ebp - 0x1b8]
push eax
push edi
push 0
call dword [sym.imp.USER32.dll_MapWindowPoints]
push 3
push ebx
call dword [sym.imp.USER32.dll_GetWindow]
mov ecx, dword [ebp - 0x1ac]
mov edi, eax
sub ecx, dword [ebp - 0x1b4]
mov edx, dword [ebp - 0x1b8]
mov eax, dword [ebp - 0x1bc]
add eax, dword [ebp - 0x1b4]
push 0
push ecx
mov ecx, dword [ebp - 0x1b0]
sub ecx, edx
push ecx
push eax
push edx
push edi
push ebx
call dword [sym.imp.USER32.dll_SetWindowPos]
mov ecx, dword [ebp - 0x1c0]
mov eax, dword [ebp - 0x1c4]
inc ecx
mov edi, dword [ebp - 0x1dc]
add eax, 4
mov esi, dword [sym.imp.USER32.dll_GetWindowRect]
mov dword [ebp - 0x1c0], ecx
mov dword [ebp - 0x1c4], eax
cmp ecx, 5
jl 0x42f6b0
mov edx, dword [ebp - 0x1cc]
mov ecx, dword [ebp - 0x1bc]
add edx, 0x14
sub dword [ebp - 0x1c8], 1
mov dword [ebp - 0x1cc], edx
jne 0x42f680
add dword [0x53fb64], 0x24
add ecx, 8
add dword [0x53fb68], 0x41
add dword [0x540f38], 0xc
add dword [0x540f34], 0xd
call fcn.0044e630
push 1
push 0
push edi
call dword [sym.imp.USER32.dll_InvalidateRect]
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0
push 0x8006
push dword [0x4fae10]
call esi
mov ebx, dword [sym.imp.USER32.dll_GetDlgItem]
push 0
push 7
push 0xc5
push 0x3fa
push edi
call ebx
push eax
call esi
push 0
push dword [0x542fb0]
push 0x3ee
push dword [0x5430c4]
push 0x80000000
push 0x80000000
push 0x80000000
push 0x80000000
push 0x50000800
push 0
push str.msctls_statusbar32
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov dword [0x541f60], eax
lea eax, [ebp - 0x14]
push eax
push dword [0x5430c4]
call dword [sym.imp.USER32.dll_GetClientRect]
fld dword [0x4f4324]
fmul qword [0x4ebb50]
call fcn.004b9bc0
mov edx, dword [ebp - 0xc]
mov ecx, edx
sub ecx, eax
mov dword [ebp - 0x1ac], edx
lea eax, [ebp - 0x1b0]
mov dword [ebp - 0x1b0], ecx
push eax
push 2
push 0x404
push dword [0x541f60]
call esi
push str.Segoe_UI
push 0
push 2
push 0
push 0
push 1
push 0
push 0
push 0
push 0x1f4
push 0
push 0
push 0
push 0x48
push 0x5a
push dword [0x5430c4]
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetDeviceCaps]
push eax
push 9
call dword [sym.imp.KERNEL32.dll_MulDiv]
neg eax
push eax
call dword [sym.imp.GDI32.dll_CreateFontA]
push 1
push eax
push 0x30
push dword [0x541f60]
call esi
push 0xffffffffffffffff
push ecx
push 0xc55
call fcn.0041afe0
mov ecx, dword [0x542fac]
add esp, 8
mov edx, eax
call fcn.00444c40
add esp, 4
push 0xffffffffffffffff
push ecx
push 0xc56
call fcn.0041afe0
mov ecx, dword [0x542fb8]
add esp, 8
mov edx, eax
call fcn.00444c40
add esp, 4
push 0xffffffffffffffff
push ecx
push 0xc57
call fcn.0041afe0
mov ecx, dword [0x542e78]
add esp, 8
mov edx, eax
call fcn.00444c40
add esp, 4
push 0xffffffffffffffff
push ecx
push 0xc58
call fcn.0041afe0
mov ecx, dword [0x5429bc]
add esp, 8
mov edx, eax
call fcn.00444c40
add esp, 4
push 0xffffffffffffffff
push ecx
push 0xc58
call fcn.0041afe0
mov ecx, dword [0x5429cc]
add esp, 8
mov edx, eax
call fcn.00444c40
add esp, 4
push 0xffffffffffffffff
push ecx
push 0xc59
call fcn.0041afe0
add esp, 8
mov esi, eax
push 0x3f1
push edi
call ebx
mov edx, esi
mov ecx, eax
call fcn.00444c40
add esp, 4
push 0xffffffffffffffff
push ecx
push 0xc5a
call fcn.0041afe0
add esp, 8
mov esi, eax
push 0x3f0
push edi
call ebx
mov edx, esi
mov ecx, eax
call fcn.00444c40
add esp, 4
push 0xffffffffffffffff
push ecx
push 0xc5c
call fcn.0041afe0
mov ecx, dword [0x542d44]
add esp, 8
mov edx, eax
call fcn.00444c40
add esp, 4
push 0xffffffffffffffff
push ecx
push 0xc5d
call fcn.0041afe0
add esp, 8
mov ecx, dword [0x53db68]
mov edx, eax
call fcn.00444c40
add esp, 4
push 0x2710
push ecx
push 0xc5e
call fcn.0041afe0
add esp, 8
mov esi, eax
push 0x3f7
push edi
call ebx
mov edx, esi
mov ecx, eax
call fcn.00444c40
add esp, 4
push 0x2710
push ecx
push 0xc5f
call fcn.0041afe0
add esp, 8
mov esi, eax
push 0x3f8
push edi
call ebx
mov edx, esi
mov ecx, eax
call fcn.00444c40
add esp, 4
push 0x2710
push ecx
push 0xc60
call fcn.0041afe0
mov ecx, dword [0x542e80]
add esp, 8
mov edx, eax
call fcn.00444c40
add esp, 4
push 0xffffffffffffffff
push ecx
push 0xc61
call fcn.0041afe0
add esp, 8
mov esi, eax
push 0x3fd
push edi
call ebx
mov edx, esi
mov ecx, eax
call fcn.00444c40
add esp, 4
push 0xffffffffffffffff
push ecx
push 0xc62
call fcn.0041afe0
add esp, 8
mov esi, eax
push 0x3fe
push edi
call ebx
mov edx, esi
mov ecx, eax
call fcn.00444c40
add esp, 4
push 0xffffffffffffffff
push ecx
push 0xc63
call fcn.0041afe0
mov ecx, dword [0x53db18]
add esp, 8
mov edx, eax
call fcn.00444c40
add esp, 4
push 0xffffffffffffffff
push ecx
push 0xc5b
call fcn.0041afe0
mov ecx, dword [0x542af4]
add esp, 8
mov edx, eax
call fcn.00444c40
add esp, 4
push 0x7530
push ecx
push 0xc4e
call fcn.0041afe0
mov ecx, dword [0x5429a4]
add esp, 8
mov edx, eax
call fcn.00444c40
add esp, 4
push 0x7530
push ecx
push 0xc4f
call fcn.0041afe0
add esp, 8
mov esi, eax
push 0x7d5
push edi
call ebx
mov edx, esi
mov ecx, eax
call fcn.00444c40
add esp, 4
push 0x7530
push ecx
push 0xce9
call fcn.0041afe0
mov ecx, dword [0x542e64]
add esp, 8
mov edx, eax
call fcn.00444c40
add esp, 4
push 0x7530
push ecx
push 0xc35
call fcn.0041afe0
add esp, 8
mov esi, eax
push 0x403
push edi
call ebx
mov edx, esi
mov ecx, eax
call fcn.00444c40
add esp, 4
push 0x7530
push ecx
push 0xc35
call fcn.0041afe0
add esp, 8
mov esi, eax
push 0x3fa
push edi
call ebx
mov edx, esi
mov ecx, eax
call fcn.00444c40
add esp, 4
push 0x7530
push ecx
push 0xc36
call fcn.0041afe0
add esp, 8
mov esi, eax
push 0x3fb
push edi
call ebx
mov edx, esi
mov ecx, eax
call fcn.00444c40
add esp, 4
cmp dword [0x542ae4], 0
jne 0x42fbd9
xor ecx, ecx
call fcn.0044e790
cmp dword [0x542ae8], 0
jne 0x42fbe9
xor ecx, ecx
call fcn.0044e9c0
call fcn.0044f1c0
cmp dword [0x53db60], 0
je 0x42fc0a
push 0
push 0x3f6
push 0x111
push edi
call dword [sym.imp.USER32.dll_PostMessageW]
call fcn.00451e40
xor eax, eax
cmp dword [0x4fb834], eax
setne al
push eax
push 0x3fe
push dword [0x5430c4]
call dword [sym.imp.USER32.dll_CheckDlgButton]
push 0xc8a
push 0
push 0
push 1
call fcn.0041b3e0
mov ecx, dword [ebp - 4]
add esp, 0x10
xor ecx, ebp
pop edi
pop esi
pop ebx
call fcn.00491940
mov esp, ebp
pop ebp
ret