Function at 0x4119a8
Capabilities:
Get disk information
Identify system language via api

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c8
push ebx
push esi
xor ebx, ebx
mov dword [ebp - 0x3c], ecx
push edi
inc ebx
mov byte [ebp - 0x2d], dl
push ebx
lea ecx, [ebp - 0xdc]
call fcn.004113a6
push 2
pop esi
mov dword [ebp - 0x28], 0xfffffff7
lea ecx, [ebp - 0x11c]
push esi
call fcn.004113a6
xor eax, eax
mov dword [ebp - 0x10], eax
jmp 0x4119f9
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xdc]
mov dword [ecx + edx*4], 0x53b26bdd
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], ebx
jl 0x4119e6
mov dword [ebp - 0x10], eax
jmp 0x411a16
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x11c]
mov dword [ecx + edx*4], 0x5a60d005
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x411a03
mov ecx, dword [ebp - 0xdc]
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov dword [ecx], eax
mov dword [ebp - 0x34], ebx
lea ecx, [ebp - 0x144]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x28], 0xee28fdeb
mov dword [ebp - 0x28], 3
push ebx
call fcn.004113a6
xor eax, eax
mov dword [ebp - 0x28], 5
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
jmp 0x411a6c
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x144]
mov dword [ecx + edx*4], eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], ebx
jl 0x411a5d
cmp dword [ebp - 0x34], eax
je 0x411aaa
mov byte [ebp - 5], al
cmp byte [ebp - 5], al
je 0x411a93
push 0x928
push 0xeea
call edi
push eax
call dword [sym.imp.USER32.dll_CheckDlgButton]
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x411ab6
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_ValidateRect]
xor eax, eax
jmp 0x411ab6
or ecx, 0xffffffff
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x28], ebx
inc dword [ebp - 0x1c]
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x411ac8
call edi
push eax
call dword [sym.imp.USER32.dll_IsIconic]
lea ecx, [ebp - 0x144]
call fcn.00411478
mov eax, dword [ebp - 0xdc]
push 0
dec dword [eax]
cmp dword [eax], 0xfffffff2
pop eax
jg 0x411a29
lea ecx, [ebp - 0x11c]
call fcn.00411478
lea ecx, [ebp - 0xdc]
call fcn.00411478
mov dword [ebp - 0xc], 0xd3f7bf4
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0x1c], 0
push 4
call fcn.004113a6
mov dword [ebp - 0x1c], 0x986d6dbc
xor eax, eax
mov dword [ebp - 0x34], 0xfffffffd
mov dword [ebp - 0x14], eax
jmp 0x411b3e
mov ecx, dword [ebp - 0x14]
mov dword [ebp + ecx*4 - 0x90], 0xfffffff9
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], ebx
jl 0x411b2d
mov dword [ebp - 0x14], eax
jmp 0x411b56
mov ecx, dword [ebp - 0x14]
mov dword [ebp + ecx*4 - 0x5c], 0xab61
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], esi
jl 0x411b48
mov dword [ebp - 0x14], eax
jmp 0x411b73
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc4]
mov dword [ecx + edx*4], 0xa9dade66
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x411b60
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x90], ecx
test ecx, ecx
je 0x411b8d
mov esi, ebx
cmp dword [ebp - 0xc], eax
jne 0x411bb2
mov esi, eax
cmp dword [ebp - 0xc], eax
jne 0x411bb2
mov ecx, dword [ebp - 0x58]
mov edx, dword [ebp - 0xc4]
imul ecx, ecx, 0xfff8
mov dword [edx + 4], ecx
cmp ecx, 0x8bc0
jge 0x411bb8
mov ecx, eax
jmp 0x411bba
mov edx, dword [ebp - 0xc4]
mov ecx, ebx
imul ecx, ecx, 0x2076
test ecx, ecx
je 0x411bcb
mov ecx, ebx
cmp dword [edx + 8], eax
jne 0x411bcd
mov ecx, eax
mov dword [ebp - 0x1c], esi
mov eax, dword [ebp - 0x58]
sub ecx, eax
mov eax, dword [ebp - 0x1c]
add eax, ecx
xor ecx, ecx
cmp eax, 0x473e
setl cl
xor edx, edx
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
mov eax, dword [ebp - 0x58]
lea ecx, [ebp - 0xc4]
setg dl
imul eax, edx
mov dword [ebp - 0x34], eax
call fcn.00411478
or eax, 0xffffffff
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x18], 0x4320e32c
mov dword [ebp - 0x1c], 0x3bd6525
mov dword [ebp - 0xc], 0xfffffff7
mov dword [ebp - 0x20], 0x491b
mov dword [ebp - 0x34], 0xce68266c
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x24], eax
xor eax, eax
cmp dword [ebp - 0x14], eax
je 0x411c54
mov dword [ebp - 0x1c], 0x23a266d2
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
xor ebx, ebx
mov ecx, dword [ebp - 0x10]
test ecx, ecx
mov ecx, dword [ebp - 0x18]
setle bl
xor edx, edx
cmp ecx, ebx
setge dl
sub edx, dword [ebp - 0x18]
je 0x411c73
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0xc]
cmp dword [ebp - 0x24], ecx
je 0x411c87
cmp dword [ebp - 0x14], eax
jne 0x411c87
xor esi, esi
mov ecx, eax
inc esi
jmp 0x411c8c
xor esi, esi
inc esi
mov ecx, esi
mov dword [ebp - 0xc], ecx
cmp dword [ebp - 0x20], 3
ja 0x411d99
mov dword [ebp - 0x18], 0x253d9751
mov dword [ebp - 0x14], 0xfffffff4
jmp 0x411d87
mov dword [ebp - 0x1c], 0xfffffff6
mov dword [ebp - 0x10], eax
jmp 0x411cc6
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x38], 5
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], esi
jl 0x411cb8
or ecx, 0xffffffff
mov dword [ebp - 0x10], ecx
jmp 0x411cf1
mov dword [ebp - 0x20], eax
jmp 0x411ce4
mov ecx, dword [ebp - 0x20]
cmp dword [ebp + ecx*4 - 0x38], eax
jne 0x411ce9
inc dword [ebp - 0x20]
cmp dword [ebp - 0x20], eax
jle 0x411cd8
cmp dword [ebp - 0x38], eax
jne 0x411cf7
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x39
jg 0x411cd3
imul ecx, dword [ebp - 0x18], 0xf725
test ecx, ecx
jne 0x411d05
mov ecx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x38]
sub ecx, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
inc ecx
neg ecx
neg ecx
sbb ecx, ecx
xor ebx, ebx
inc ecx
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x34]
mov ecx, dword [ebp - 0x24]
cmp ecx, edx
setge bl
xor ecx, ecx
cmp ebx, 0xb224
setl cl
xor ebx, ebx
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x38]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0xc]
cmp edx, ecx
setl bl
mov dword [ebp - 0xc], ebx
xor ebx, ebx
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
imul ecx, dword [ebp - 0x18], 0xdb9c
cmp ecx, esi
mov ecx, dword [ebp - 0x14]
setle bl
xor edx, edx
cmp ebx, ecx
setle dl
shl edx, 2
mov dword [ebp - 0x38], edx
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x1c
jg 0x411cac
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
jmp 0x411da7
mov byte [ebp - 5], al
cmp byte [ebp - 5], al
je 0x411da7
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 3
lea ecx, [ebp - 0x12c]
call fcn.004113a6
mov dword [ebp - 0xc], 0
lea ecx, [ebp - 0xf8]
push 4
call fcn.004113a6
mov dword [ebp - 0x10], 0
or ebx, 0xffffffff
cmp dword [ebp - 0x10], 3
jge 0x411de9
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0x12c]
mov dword [eax + ecx*4], ebx
inc dword [ebp - 0x10]
jmp 0x411dd2
mov dword [ebp - 0x10], 0
jmp 0x411e05
mov ecx, dword [ebp - 0x10]
mov eax, dword [ebp - 0xf8]
mov dword [eax + ecx*4], 0x3eee2fde
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 4
jl 0x411df2
mov byte [ebp - 5], 0
cmp byte [ebp - 5], 0
je 0x411e2a
push 0x26af
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_SetTextAlign]
mov dword [ebp - 0xc], 2
cmp dword [ebp - 0xc], 0
jl 0x411e49
mov eax, dword [ebp - 0xf8]
mov dword [eax + 0xc], 0xa9ef72d4
dec dword [ebp - 0xc]
jns 0x411e3d
lea ecx, [ebp - 0xf8]
call fcn.00411478
lea ecx, [ebp - 0x12c]
call fcn.00411478
mov esi, dword [0x46d27c]
xor eax, eax
mov dword [ebp - 0x14], 0xfffffffc
xor edx, edx
mov dword [ebp - 0x1c], ebx
inc edx
mov dword [ebp - 0x24], ebx
mov dword [ebp - 0x34], esi
mov dword [ebp - 0xc], eax
jmp 0x411e8c
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x160], edx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], edx
jl 0x411e7f
cmp dword [ebp - 0x14], eax
je 0x411eb4
mov byte [ebp - 5], al
cmp byte [ebp - 5], al
je 0x411f56
push eax
push 0xd22
push eax
call dword [sym.imp.OLEAUT32.dll_SafeArrayLock]
jmp 0x411f56
mov dword [ebp - 0x18], 0xb441791e
mov dword [ebp - 0x1c], 3
cmp dword [ebp - 0x14], eax
je 0x411eef
mov ecx, dword [ebp - 0x14]
add ecx, 0x8068
imul ecx, dword [ebp - 0x14]
sub ecx, 0x478c9dff
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x24], edx
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x24]
xor ebx, ebx
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov edx, dword [ebp - 0x18]
imul edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
cmp edx, ecx
setl bl
xor ecx, ecx
or edx, 0xffffffff
cmp ebx, edx
setne cl
xor edx, edx
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x14]
cmp dword [ebp - 0x1c], ecx
setle dl
xor ecx, ecx
test edx, edx
setns cl
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x14], eax
jmp 0x411f50
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x411f4d
call dword [sym.imp.KERNEL32.dll_GetUserDefaultUILanguage]
xor eax, eax
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0x1a
jg 0x411f3c
xor eax, eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], eax
jl 0x411f7c
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x411f77
call edi
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_SetParent]
xor eax, eax
dec dword [ebp - 0x14]
jns 0x411f60
push dword [ebp + 8]
mov ebx, dword [ebp + 8]
lea ecx, [ebp - 0x180]
movdqa xmm0, xmmword [0xa5c830]
push ecx
lea ecx, [ebp - 0x190]
mov dword [ebp - 0xac], eax
push ecx
push eax
lea ecx, [ebp - 0xac]
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], eax
movdqu xmmword [ebp - 0x190], xmm0
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], eax
call fcn.004114da
mov dword [ebp - 0x28], 3
lea ecx, [ebp - 0x15c]
push 4
call fcn.004113a6
push dword [ebp + 8]
movdqa xmm0, xmmword [0xa5c820]
lea ecx, [ebp - 0x190]
push ecx
xor eax, eax
mov dword [ebp - 0x28], 0x3fe5e81a
lea ecx, [ebp - 0x1a0]
mov dword [ebp - 0x28], 3
push ecx
push eax
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xd0], eax
movdqu xmmword [ebp - 0x1a0], xmm0
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc8], eax
call fcn.004114da
xor eax, eax
mov dword [ebp - 0x28], 0xa9a1
inc eax
lea ecx, [ebp - 0x16c]
push eax
call fcn.004113a6
push 2
lea ecx, [ebp - 0x150]
call fcn.004113a6
xor eax, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], eax
jmp 0x41206c
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x15c]
mov dword [ecx + edx*4], 0x252604
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 4
jl 0x412059
xor edx, edx
mov dword [ebp - 0x14], eax
inc edx
jmp 0x41208b
mov ecx, dword [ebp - 0x14]
mov dword [ebp + ecx*4 - 0x170], 0xffffffff
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], edx
jl 0x41207a
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], edx
jge 0x4120b1
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x16c]
mov dword [ecx + edx*4], 0xfffffff8
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 1
jl 0x412098
mov dword [ebp - 0x14], eax
jmp 0x4120c9
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x150]
mov dword [eax + ecx*4], 0x1837def5
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 2
jl 0x4120b6
dec dword [ebp - 0x1c]
lea ecx, [ebp - 0x150]
call fcn.00411478
lea ecx, [ebp - 0x16c]
call fcn.00411478
lea ecx, [ebp - 0xd0]
call fcn.00411478
lea ecx, [ebp - 0x15c]
call fcn.00411478
lea ecx, [ebp - 0xac]
call fcn.00411478
xor eax, eax
cmp byte [ebp - 0x2d], al
je 0x412284
inc eax
cmp esi, eax
jne 0x412282
push 2
lea ecx, [ebp - 0xb8]
call fcn.004113a6
xor esi, esi
or eax, 0xffffffff
inc esi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x18], eax
xor eax, eax
mov dword [ebp - 0xc], eax
jmp 0x412150
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0xb8]
mov dword [ecx + edx*4], 0x5e17ca00
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x41213d
mov edx, dword [ebp - 0xb8]
cmp dword [edx + 4], eax
je 0x41219f
mov dword [ebp - 0x1c], 0xffff
cmp dword [ebp - 0x1c], eax
je 0x412172
cmp dword [edx + 4], eax
jne 0x412174
mov esi, eax
mov ecx, dword [ebp - 0xb8]
mov edi, dword [ecx]
mov ecx, dword [ebp - 0x18]
add ecx, esi
add ecx, edi
jne 0x412191
cmp dword [edx + 4], eax
jne 0x412191
xor esi, esi
mov ecx, eax
inc esi
jmp 0x412196
xor esi, esi
inc esi
mov ecx, esi
cmp edi, ecx
jne 0x4121a3
cmp dword [edx + 4], eax
jne 0x4121a3
mov ecx, eax
jmp 0x4121a5
mov ecx, esi
mov dword [ebp - 0x18], ecx
or edi, 0xffffffff
mov dword [ebp - 0x18], 0xfffffff5
jmp 0x4121cc
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x4121c9
push eax
push eax
push eax
push eax
call dword [sym.imp.KERNEL32.dll_EnumCalendarInfoW]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], edi
jg 0x4121b4
lea ecx, [ebp - 0xb8]
call fcn.00411478
mov dword [ebp - 0x10], 0xb90d
xor eax, eax
mov dword [ebp - 0x1c], 0x2cb13638
mov dword [ebp - 0x20], 0xaed23b61
mov dword [ebp - 0x1c], edi
push 3
mov dword [ebp - 0x18], edi
pop edx
mov dword [ebp - 0x24], edx
mov dword [ebx + 8], 4
mov dword [ebp - 0xc], eax
jmp 0x41221c
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x1bc], 8
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], edx
jl 0x41220b
dec dword [ebp - 0x24]
cmp dword [ebp - 0x1c], eax
je 0x41226b
mov edx, dword [ebp - 0x24]
xor ebx, ebx
mov ecx, dword [ebp - 0x20]
cmp ecx, edx
setge bl
mov dword [ebp - 0x1b8], ebx
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
neg ecx
sbb ecx, ecx
xor ebx, ebx
inc ecx
test ecx, ecx
mov ecx, dword [ebp - 0x10]
setg bl
xor edx, edx
cmp ecx, ebx
mov ebx, dword [ebp + 8]
mov ecx, esi
setne dl
mov dword [ebp - 0x1c], edx
cmp dword [ebp - 0x1c], eax
jne 0x41226d
mov ecx, eax
mov edi, dword [sym.imp.USER32.dll_GetDesktopWindow]
mov esi, dword [ebp - 0x34]
mov dword [ebp - 0x18], ecx
mov dword [ebx + 0xc], 0x46d27c
jmp 0x412284
xor eax, eax
push dword [ebp + 8]
lea ecx, [ebp - 0x1a0]
mov dword [ebp - 0x18], 0x9fe387fb
push ecx
lea ecx, [ebp - 0x1b0]
mov dword [ebp - 0x88], eax
push ecx
xorps xmm0, xmm0
mov dword [ebp - 0x84], eax
push eax
lea ecx, [ebp - 0x88]
mov dword [ebp - 0x80], eax
movdqu xmmword [ebp - 0x1b0], xmm0
call fcn.004114da
xor eax, eax
mov dword [ebp - 0x24], 0xb3e713e1
cmp dword [ebp - 0x18], eax
je 0x412339
xor ebx, ebx
mov dword [ebp - 0xc], 0xe21afa9b
inc ebx
mov dword [ebp - 0x1c], 0x5b3847d2
xor ecx, ecx
mov dword [ebp - 0x1c], ebx
mov eax, dword [ebp - 0xc]
cmp ecx, eax
sbb edx, edx
neg edx
sub edx, dword [ebp - 0xc]
neg edx
sbb edx, edx
inc edx
sub edx, dword [ebp - 0xc]
add edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0xc]
neg eax
sbb eax, eax
inc eax
imul edx, eax
mov eax, dword [ebp - 0x88]
cmp edx, dword [eax + 0xc]
mov eax, 0x9ed080c1
setge cl
cmp eax, ecx
mov eax, dword [ebp - 0xc]
sbb edx, edx
xor ecx, ecx
neg edx
cmp edx, eax
setne cl
mov dword [ebp - 0x1c], ecx
mov eax, dword [ebp - 0x1c]
sub eax, 0x150790db
mov dword [ebp - 0x1c], eax
jmp 0x4123a3
mov dword [ebp - 0x18], eax
jmp 0x412384
cmp byte [ebp - 5], 0
je 0x412352
push 1
push eax
call edi
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
xor eax, eax
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x412381
push 0xd65
push 0xa4e
push 0x5e5
push 0x2253
call edi
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_ExcludeClipRect]
xor eax, eax
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 3
mov byte [ebp - 5], al
jle 0x41233e
cmp byte [ebp - 5], 0
je 0x4123a0
push 0x23ff
push eax
push eax
call dword [sym.imp.KERNEL32.dll_QueryDosDeviceW]
xor ebx, ebx
inc ebx
lea ecx, [ebp - 0x88]
call fcn.00411478
cmp dword [ebp - 0x3c], esi
jge 0x412cbc
xor eax, eax
mov dword [ebp - 0xc], 0xfffffffa
mov dword [ebp - 0xc], eax
jmp 0x4123cf
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x48], eax
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 3
jl 0x4123c5
mov dword [ebp - 0x40], 0xfffffff3
jmp 0x412430
mov dword [ebp - 0xc], 0x37d45db3
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], ebx
jge 0x412402
or edx, 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x120], edx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], ebx
jl 0x4123f0
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], eax
jl 0x41242d
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x412428
push 0x928
push 0xeea
call edi
push eax
call dword [sym.imp.USER32.dll_CheckDlgButton]
xor eax, eax
dec dword [ebp - 0xc]
jns 0x41240a
inc dword [ebp - 0x40]
cmp dword [ebp - 0x40], 0xfffffff9
jle 0x4123de
mov ecx, dword [ebp - 0x40]
xor edx, edx
cmp ecx, 0x3ccd
mov ecx, dword [ebp - 0x40]
setl dl
xor ebx, ebx
cmp edx, 0x66e9
setg bl
xor edx, edx
cmp ebx, ecx
mov ecx, dword [ebp - 0x40]
setg dl
sub edx, ecx
mov dword [ebp - 0xc], edx
xor edx, edx
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x48]
test ecx, ecx
setle dl
xor ecx, ecx
cmp edx, 3
setle cl
cmp ecx, dword [ebp - 0x40]
je 0x412484
mov ecx, dword [ebp - 0xc]
cmp dword [ebp - 0x3c], 0
mov esi, 0x46d280
mov ecx, dword [ebp - 0x48]
mov edi, 0xa5d6c05b
mov ecx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x14], esi
jle 0x41284a
mov dword [ebp - 0x18], 0x4e2
mov dword [ebp - 0x28], 0x9bf39019
mov dword [ebp - 0xc], eax
inc dword [ebp - 0x18]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xe
jne 0x41252e
or edi, 0xffffffff
mov dword [ebp - 0x1c], 0x1220
xor ebx, ebx
mov dword [ebp - 0x24], 0xb0815898
mov dword [ebp - 0x20], 0xfffffffc
mov dword [ebp - 0x20], edi
dec dword [ebp - 0x1c]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x1c]
cmp ecx, edx
mov ecx, dword [ebp - 0xc]
setne bl
sub ecx, ebx
neg ecx
sbb ecx, ecx
inc ecx
mov dword [ebp - 0x20], ecx
je 0x41251b
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x18]
sub edx, 0x52f3
neg edx
sbb edx, edx
inc edx
sub ecx, edx
cmp ecx, dword [ebp - 0xc]
jg 0x41251b
xor ecx, ecx
inc ecx
jmp 0x41251d
mov ecx, eax
mov dword [ebp - 0x20], ecx
inc dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xe
je 0x4124c7
mov edi, 0xa5d6c05b
mov ecx, dword [esi]
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x78], edi
mov dword [ebp - 0x74], edi
mov dword [ebp - 0x70], edi
mov dword [ebp - 0x20], 0x8da8e97e
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x20], 3
mov dword [ebp - 0x28], ecx
cmp dword [ebp - 0x20], eax
jl 0x4125a8
mov dword [ebp - 0x1c], 9
xor ebx, ebx
mov dword [ebp - 0xc], 0xc3203bd6
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp + ecx*4 - 0x7c]
test ecx, ecx
setne bl
cmp dword [ebp - 0x18], eax
jne 0x412590
mov edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x70]
add edx, ecx
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp + ecx*4 - 0x7c]
imul ecx, edx
test ecx, ecx
jne 0x412590
mov edi, eax
jmp 0x412593
xor edi, edi
inc edi
mov ecx, dword [ebp - 0x20]
xor edx, edx
cmp edi, ecx
setne dl
imul edx, ebx
mov dword [ebp - 0xc], edx
dec dword [ebp - 0x20]
jns 0x412555
mov dword [ebp - 0x18], eax
jmp 0x4125fc
mov dword [ebp - 0x10], 0xfffffffd
mov dword [ebp - 0x1c], 0x674fa72d
cmp dword [ebp - 0x10], eax
jne 0x4125e9
cmp dword [ebp - 0x18], eax
je 0x4125cd
cmp dword [ebp - 0x10], eax
je 0x4125cd
mov ecx, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x70]
mov ecx, dword [ebp - 0x10]
neg ecx
je 0x4125e5
cmp dword [ebp - 0x10], eax
jne 0x4125e9
mov edi, eax
jmp 0x4125ec
xor edi, edi
inc edi
mov ecx, dword [ebp - 0x10]
xor edx, edx
cmp ecx, edi
setle dl
mov dword [ebp - 0x1c], edx
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffffa
jne 0x4125ad
mov dword [ebp - 0x1c], 0xbd10caad
lea ecx, [ebp - 0x138]
xor edi, edi
inc edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0xc], eax
mov dword [ebp - 0x1c], 0xa4087b33
mov dword [ebp - 0x1c], 0x80563ade
mov dword [ebp - 0x1c], 0x72c2e8b5
push 2
call fcn.004113a6
or eax, 0xffffffff
mov dword [ebp - 0x1c], eax
xor eax, eax
mov dword [ebp - 0x24], 0xae3c
mov dword [ebp - 0x10], eax
jmp 0x412652
mov ecx, dword [ebp - 0x10]
mov dword [ebp + ecx*4 - 0x2c], eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], edi
jl 0x412648
mov dword [ebp - 0x10], eax
jmp 0x41266f
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x138]
mov dword [ecx + edx*4], 8
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 2
jl 0x41265c
mov ecx, dword [ebp - 0x2c]
xor edx, edx
cmp ecx, 0x635290ce
setge dl
cmp edx, dword [ebp - 0x2c]
jle 0x41268f
mov ecx, eax
cmp dword [ebp - 0x2c], eax
je 0x412691
mov ecx, edi
imul edx, ecx, 0xea
xor ebx, ebx
mov ecx, dword [ebp - 0x2c]
cmp edx, ecx
setl bl
mov dword [ebp - 0x1c], ebx
cmp dword [ebp - 0x1c], 0x5206
jg 0x4126b0
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x2c]
or edx, 0xffffffff
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x2c]
cmp edx, ecx
sbb ecx, ecx
xor ebx, ebx
inc ecx
test ecx, ecx
mov ecx, dword [ebp - 0x2c]
setg bl
xor edx, edx
cmp ebx, ecx
setle dl
xor ecx, ecx
or ebx, 0xffffffff
cmp edx, ebx
setne cl
mov dword [ebp - 0xc], ecx
cmp dword [ebp - 0xc], 0xbd6cd538
je 0x4126fb
mov ecx, eax
cmp dword [ebp - 0x1c], eax
je 0x4126fd
mov ecx, edi
mov eax, dword [ebp - 0x2c]
add eax, ecx
xor ecx, ecx
cmp eax, 0xb96bc712
setne cl
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0x138]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
dec dword [ebp - 0x24]
call fcn.00411478
mov ebx, dword [esi + 4]
add esi, 8
mov dword [ebp - 0x10], 0xfffffffa
xor eax, eax
mov dword [ebp - 0xc], 0xc42206dd
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x14], esi
mov dword [ebp - 0xc], eax
jmp 0x41275b
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x1c4], 0xfffffff7
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x41274a
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0xffffffe6
jne 0x4127d9
xor ebx, ebx
inc ebx
mov dword [ebp - 0x18], 0xfffffffc
mov edi, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x18]
neg edi
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x10]
sbb edi, edi
xor edx, edx
neg edi
cmp ecx, 0x74952f34
setle dl
imul ecx, edx, 0xffff
mov edx, dword [ebp - 0x18]
sub edx, ecx
mov ecx, dword [ebp - 0x18]
cmp ebx, edx
sbb esi, esi
xor edx, edx
neg esi
sub esi, 2
cmp esi, ecx
mov ecx, 0xdebf889e
setg dl
cmp ecx, edx
sbb edx, edx
xor ecx, ecx
neg edx
add edx, dword [ebp - 0x18]
cmp edi, edx
setg cl
mov dword [ebp - 0xc], ecx
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffe6
je 0x41276d
mov esi, dword [ebp - 0x14]
xor edi, edi
mov ebx, dword [ebp - 0x1c]
inc edi
mov dword [ebp - 0x10], eax
jmp 0x412829
mov dword [ebp - 0x1c], 0x886a6c65
mov dword [ebp - 0xc], edi
cmp dword [ebp - 0xc], eax
jl 0x412826
mov dword [ebp - 0x24], 4
mov dword [ebp - 0x24], edi
cmp dword [ebp - 0x24], eax
jl 0x41281e
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x412819
push 0x1709
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
xor eax, eax
dec dword [ebp - 0x24]
jns 0x4127fc
dec dword [ebp - 0x1c]
dec dword [ebp - 0xc]
jns 0x4127ed
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0xffffffeb
jle 0x4127de
test ebx, ebx
jne 0x412836
add esi, 8
add esi, dword [ebp - 0x28]
mov edi, 0xa5d6c05b
dec dword [ebp - 0x3c]
mov dword [ebp - 0x14], esi
jne 0x4124a7
mov dword [ebp - 0x6c], edi
mov dword [ebp - 0x68], edi
mov dword [ebp - 0x64], edi
mov dword [ebp - 0x60], edi
mov dword [ebp - 0x20], 0x8da8e97e
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], eax
jl 0x4128c0
xor esi, esi
mov dword [ebp - 0x28], 9
xor ebx, ebx
mov dword [ebp - 0x1c], 0xc3203bd6
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp + ecx*4 - 0x6c]
test ecx, ecx
setne bl
cmp dword [ebp - 0x18], eax
jne 0x4128a5
mov ecx, dword [ebp - 0x20]
mov edi, eax
mov edx, dword [ebp + ecx*4 - 0x6c]
mov ecx, dword [ebp - 0x28]
add ecx, dword [ebp - 0x60]
imul edx, ecx
test edx, edx
je 0x4128a8
lea edi, [esi + 1]
mov ecx, dword [ebp - 0x20]
xor edx, edx
cmp edi, ecx
setne dl
imul edx, ebx
mov dword [ebp - 0x1c], edx
dec dword [ebp - 0x20]
jns 0x41286e
mov esi, dword [ebp - 0x14]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xfffffffa
je 0x412923
xor esi, esi
mov dword [ebp - 0x10], 0xfffffffd
mov dword [ebp - 0x28], 0x674fa72d
cmp dword [ebp - 0x10], eax
jne 0x412907
cmp dword [ebp - 0x18], eax
je 0x4128eb
cmp dword [ebp - 0x10], eax
je 0x4128eb
mov ecx, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x10]
neg ecx
je 0x412903
cmp dword [ebp - 0x10], eax
jne 0x412907
mov edi, eax
jmp 0x41290a
lea edi, [esi + 1]
mov ecx, dword [ebp - 0x10]
xor edx, edx
cmp ecx, edi
setle dl
mov dword [ebp - 0x28], edx
dec dword [ebp - 0x18]
cmp dword [ebp - 0x18], 0xfffffffa
jne 0x4128cb
mov esi, dword [ebp - 0x14]
mov ebx, dword [esi]
lea ecx, [ebp - 0x104]
xor edi, edi
inc edi
mov dword [ebp - 0xa0], edi
mov dword [ebp - 0x9c], edi
mov dword [ebp - 0x98], edi
mov dword [ebp - 0x94], edi
mov dword [ebp - 0x20], 0x5052061f
push 2
call fcn.004113a6
xor eax, eax
mov dword [ebp - 0xc], eax
jmp 0x41296e
mov edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x104]
mov dword [ecx + edx*4], 0x5fc1
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x41295b
mov dword [ebp - 0x20], 3
cmp dword [ebp - 0x20], eax
jl 0x412a52
mov dword [ebp - 0x10], 2
cmp dword [ebp - 0x10], eax
jne 0x4129eb
mov ecx, dword [ebp - 0x20]
xor edx, edx
mov dword [ebp + ecx*4 - 0xa0], edi
mov ecx, dword [ebp - 0x20]
inc ecx
cmp ecx, 0x8551b32e
setne dl
xor ecx, ecx
cmp edx, 0x95ad
setge cl
add ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x20]
jge 0x4129bf
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 0xa0]
mov ecx, dword [ebp - 0x10]
sub edx, 6
neg edx
sbb edx, edx
inc edx
imul ecx, edx
test ecx, ecx
jne 0x4129da
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x104]
cmp dword [ecx + 4], eax
je 0x4129eb
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x20]
cmp dword [ebp + ecx*4 - 0xa0], eax
je 0x412a10
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x412a46
push eax
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_BeginPaint]
jmp 0x412a46
mov dword [ebp - 0x10], 9
or ecx, 0xffffffff
jmp 0x412a41
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x412a3e
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_CreateHalftonePalette]
xor eax, eax
or ecx, 0xffffffff
dec dword [ebp - 0x10]
cmp dword [ebp - 0x10], ecx
jge 0x412a1c
dec dword [ebp - 0x20]
push 0
pop eax
jns 0x412984
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x412a68
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_DestroyWindow]
lea ecx, [ebp - 0x104]
call fcn.00411478
push 2
lea ecx, [ebp - 0x110]
call fcn.004113a6
mov dword [ebp - 0x28], 5
or edx, 0xffffffff
mov dword [ebp - 0x28], edx
mov dword [ebp - 0xc], 0
jmp 0x412aa5
mov ecx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x110]
mov dword [eax + ecx*4], edx
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 2
jl 0x412a96
mov eax, dword [ebp - 0x110]
lea ecx, [ebp - 0x110]
and dword [eax + 4], 0
call fcn.00411478
mov edi, dword [esi + 4]
xor eax, eax
mov dword [ebp - 0x10], 0xddc85f70
mov dword [ebp - 0x10], eax
jmp 0x412ae5
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x412ae2
call dword [sym.imp.KERNEL32.dll_GetThreadLocale]
xor eax, eax
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x13
jl 0x412ad1
mov dword [ebp - 0x10], 9
jmp 0x412b70
mov dword [ebp - 0x14], 0x214a9bac
mov dword [ebp - 0xc], eax
jmp 0x412b11
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0x180], 0xfffffff6
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 4
jl 0x412b00
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
neg ecx
sbb ecx, ecx
neg ecx
cmp ecx, 0xfffffffd
jg 0x412b30
cmp dword [ebp - 0x10], eax
jne 0x412b33
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x174], 0x6d05
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x14], eax
jmp 0x412b4d
cmp dword [ebp - 0x10], eax
jne 0x412b53
dec dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xfffffffc
jg 0x412b45
mov dword [ebp - 0x14], eax
jmp 0x412b67
mov ecx, dword [ebp - 0x14]
cmp dword [ebp + ecx*4 - 0x180], eax
jne 0x412b6d
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 3
jle 0x412b58
inc dword [ebp - 0x10]
cmp dword [ebp - 0x10], 0x1b
jl 0x412af4
mov dword [ebp - 0xc], eax
jmp 0x412b90
mov ecx, dword [ebp - 0xc]
mov dword [ebp + ecx*4 - 0xec], 0x40d7f825
inc dword [ebp - 0xc]
cmp dword [ebp - 0xc], 4
jl 0x412b7f
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x412ba9
push eax
push eax
call dword [sym.imp.USER32.dll_GetMonitorInfoW]
xor eax, eax
mov dword [ebp - 0xe4], 0x1c
jmp 0x412be5
mov byte [ebp - 5], al
cmp byte [ebp - 5], 0
je 0x412bdf
push eax
push 0x1651
push 0xc2b
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetDIBColorTable]
xor eax, eax
dec dword [ebp - 0xe4]
cmp dword [ebp - 0xe4], 0xfffffff1
jle 0x412bb5
test edi, edi
jne 0x412cbc
cmp byte [ebp - 0x2d], 0
je 0x412c0d
xor eax, eax
inc eax
cmp dword [ebp - 0x34], eax
jne 0x412c0d
mov ecx, dword [ebp + 8]
lea eax, [ebx + 0x10]
add dword [ecx + 8], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x28], eax
mov eax, dword [esi + 0xc]
add esi, 0x10
push ebx
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x14], esi
call fcn.0045f2e9
mov dword [ebp - 0x34], eax
xor eax, eax
pop ecx
mov dword [ebp - 0x8c], eax
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], eax
lea eax, [ebp - 0x8c]
push eax
push ebx
call fcn.00420987
mov edi, dword [ebp - 0x54]
xor ecx, ecx
mov esi, ecx
test ebx, ebx
jle 0x412c99
mov eax, esi
and eax, 0x80000001
jns 0x412c63
dec eax
or eax, 0xfffffffe
inc eax
neg eax
sbb eax, eax
and eax, dword [ebp - 0x28]
add eax, esi
add eax, dword [ebp - 0x28]
imul eax, dword [ebp - 0x1c]
jmp 0x412c78
lea eax, [edx + 1]
cdq
idiv ebx
cmp word [edi + edx*2], cx
jne 0x412c75
xor eax, eax
inc eax
mov word [edi + edx*2], ax
mov eax, dword [ebp - 0x14]
mov al, byte [edx + eax]
mov edx, dword [ebp - 0x34]
mov byte [esi + edx], al
inc esi
cmp esi, ebx
jl 0x412c55
mov esi, dword [ebp + 8]
mov eax, dword [ebp - 0x34]
mov dword [esi], ebx
mov dword [esi + 4], eax
test edi, edi
je 0x412cc1
push edi
call fcn.0045faa6
pop ecx
xor ecx, ecx
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x4c], ecx
jmp 0x412cc1
mov esi, dword [ebp + 8]
xor ecx, ecx
mov dword [ebp + 8], 0x1928c176
mov byte [ebp + 0xb], cl
cmp byte [ebp + 0xb], 0
je 0x412cee
push ecx
push 0x1c84
push ecx
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_GetDC]
push eax
call dword [sym.imp.GDI32.dll_GetTextExtentPointA]
xor ecx, ecx
mov byte [ebp + 0xb], cl
cmp byte [ebp + 0xb], 0
je 0x412d04
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
call dword [sym.imp.USER32.dll_IsZoomed]
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret