Function at 0x404f37
Capabilities:
Delete file
Query environment variable

Disassembly:
push ebp
lea ebp, [esp - 0x100]
sub esp, 0x180
mov eax, dword [0x4095d0]
xor eax, ebp
mov dword [ebp + 0xfc], eax
push ebx
push esi
push edi
mov edi, dword [ebp + 0x108]
xor ebx, ebx
push 0xf
mov byte [0x40a8c4], bl
mov dword [0x409e48], edi
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov dword [0x40a704], eax
call dword [sym.imp.USER32.dll_GetDialogBaseUnits]
push 0x104
movzx ecx, ax
mov esi, 0x40a908
push esi
push dword [0x409e48]
shr eax, 0x10
mov dword [0x40a8f8], ecx
mov dword [0x409e34], eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push esi
push 0x40aa10
call sub.MSVCR90.dll_strcpy
push ebx
push ebx
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp + 0xf0]
push eax
push esi
mov byte [ebp - 0x28], bl
call dword [sym.imp.MSVCR90.dll__splitpath]
lea eax, [ebp - 0x28]
push eax
lea eax, [ebp + 0xf0]
push eax
push str._s_s
push esi
call dword [sym.imp.MSVCR90.dll_sprintf]
lea eax, [ebp - 0x28]
push eax
call sub.MSVCR90.dll_strlen
add esp, 0x30
test eax, eax
jbe 0x404fff
push esi
call sub.MSVCR90.dll_strlen
dec esi
pop ecx
mov byte [eax + esi], bl
push 0x64
push edi
mov dword [ebp - 0x64], ebx
mov dword [ebp - 0x60], 0x404a38
mov dword [ebp - 0x5c], ebx
mov dword [ebp - 0x58], 4
mov dword [ebp - 0x54], edi
call dword [sym.imp.USER32.dll_LoadIconA]
push 0x7f00
push ebx
mov dword [ebp - 0x50], eax
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [ebp - 0x4c], eax
mov eax, dword [0x40a704]
mov dword [ebp - 0x48], eax
mov eax, dword [0x4091a8]
mov dword [ebp - 0x40], eax
lea eax, [ebp - 0x64]
push eax
mov dword [ebp - 0x44], ebx
call dword [sym.imp.USER32.dll_RegisterClassA]
test ax, ax
jne 0x40505a
xor eax, eax
jmp 0x405258
call fcn.004034f4
test eax, eax
je 0x405053
mov esi, 0x40a4c8
push esi
call sub.MSVCR90.dll_strlen
pop ecx
test eax, eax
jne 0x40509c
cmp byte [0x409e3e], bl
je 0x405082
push 0x4078a8
jmp 0x40509d
push str.TEMP
call dword [sym.imp.MSVCR90.dll_getenv]
pop ecx
cmp eax, ebx
jne 0x405099
push 0x40789c
jmp 0x40509d
push eax
jmp 0x40509d
push esi
push 0x409e58
call sub.MSVCR90.dll_strcpy
pop ecx
pop ecx
push ebx
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov edi, dword [sym.imp.GDI32.dll_GetDeviceCaps]
push 0x5a
push eax
mov dword [ebp - 0x2c], eax
call edi
imul eax, eax, 0xfffffff0
push 0x48
pop ecx
cdq
idiv ecx
push str.Arial
push ebx
push ebx
mov esi, dword [sym.imp.GDI32.dll_CreateFontA]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push 0x2bc
push ebx
push ebx
push ebx
push eax
call esi
push eax
push dword [ebp - 0x2c]
mov dword [0x40ab14], eax
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x3c]
push eax
push 2
push 0x407890
push dword [ebp - 0x2c]
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32A]
mov eax, dword [ebp - 0x38]
push 0x5a
push dword [ebp - 0x2c]
mov dword [0x409e28], eax
call edi
imul eax, eax, 0xfffffff8
push 0x48
pop ecx
cdq
idiv ecx
push str.MS_Sans_Serif
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
mov edi, 0x190
push edi
push ebx
push ebx
push ebx
push eax
mov dword [ebp - 0x34], eax
call esi
mov dword [0x40a70c], eax
cmp eax, ebx
jne 0x405163
push str.Arial
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push edi
push ebx
push ebx
push ebx
push dword [ebp - 0x34]
call esi
mov dword [0x40a70c], eax
mov edi, dword [ebp - 0x2c]
mov esi, dword [sym.imp.GDI32.dll_SelectObject]
push eax
push edi
call esi
lea eax, [ebp - 0x3c]
push eax
push 2
push 0x407890
push edi
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32A]
push dword [ebp - 0x30]
mov eax, dword [ebp - 0x38]
push edi
mov dword [0x40a8bc], eax
call esi
push edi
call dword [sym.imp.GDI32.dll_DeleteDC]
cmp byte [0x409e3e], bl
je 0x4051a9
call fcn.004048b6
jmp 0x405255
mov eax, dword [0x4091a8]
push ebx
push dword [0x409e48]
push ebx
push ebx
push 0xa
push 0xa
push ebx
push ebx
push 0x80cc0000
push eax
push eax
push 8
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [0x40ab18], eax
call fcn.00403701
mov esi, dword [sym.imp.USER32.dll_GetMessageA]
jmp 0x4051f2
lea eax, [ebp - 0x80]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x80]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
push ebx
push ebx
push ebx
lea eax, [ebp - 0x80]
push eax
call esi
test eax, eax
jne 0x4051de
push dword [0x40ab14]
mov esi, dword [sym.imp.GDI32.dll_DeleteObject]
call esi
push dword [0x40a70c]
call esi
push dword [0x40a704]
call esi
mov eax, dword [0x4091c0]
cmp eax, ebx
jl 0x40522d
push eax
call dword [sym.imp.KERNEL32.dll__lclose]
push dword [0x4091bc]
lea eax, [ebp + 0xdc]
push str.temp_d.zme
push eax
call dword [sym.imp.MSVCR90.dll_sprintf]
add esp, 0xc
lea eax, [ebp + 0xdc]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
xor eax, eax
inc eax
mov ecx, dword [ebp + 0xfc]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00405284
add ebp, 0x100
leave
ret 0x10