Function at 0x40298f
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x19c
push esi
push edi
and dword [ebp - 8], 0
push 0x37
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0x9e
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0x52
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xae
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0x42
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xd7
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xc3
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0x50
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xa0
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xe9
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0x8c
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xf5
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0x4e
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0x5c
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xcf
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xd8
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0x34
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0x9e
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xb0
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0x3d
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0x38
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 5
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xad
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xef
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xfb
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0xf5
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
push 0x46
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
push eax
call dword [sym.imp.msvcrt.dll_free]
pop ecx
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x1c], eax
fld qword [0x4149f8]
call sub.msvcrt.dll__CIcos
fstp dword [ebp - 0x198]
fld dword [ebp - 0x198]
fcomp qword [0x4149f0]
fnstsw ax
test ah, 0x41
jne 0x402bcb
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
and dword [ebp - 0x10], 0
push 0xb
call dword [sym.imp.KERNEL32.dll_AddAtomW]
movzx eax, ax
cmp eax, 0xb
je 0x402be4
jmp fcn.00402f9f
push 0
call dword [sym.imp.msvcrt.dll___set_app_type]
pop ecx
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
push 0
call dword [sym.imp.USER32.dll_GetKeyboardLayout]
and dword [ebp - 8], 0
push 0xc
call dword [sym.imp.KERNEL32.dll_GlobalAddAtomA]
movzx eax, ax
cmp eax, 0xc
jne 0x402c38
push 0x61
call dword [sym.imp.USER32.dll_CharUpperW]
cmp eax, 0x41
jne 0x402c38
push 0
call dword [sym.imp.oledlg.dll_OleUIBusyW]
cmp eax, 0x65
jne 0x402c38
call fcn.00402f51
test eax, eax
jne 0x402d47
push 1
push 0
call dword [sym.imp.USER32.dll_EnableWindow]
mov ecx, eax
and ecx, 0x4a59
or ecx, 0x4a896f7e
push 0xc
pop eax
xor edx, edx
div ecx
mov dword [ebp - 0x148], eax
mov eax, dword [ebp - 0x148]
xor eax, 0x77
mov dword [ebp - 0x158], eax
mov eax, 0xd0
imul eax, dword [ebp - 0x158]
mov dword [ebp - 0x160], eax
push 0x4d
pop eax
sub eax, dword [ebp - 0x160]
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x16c]
add eax, 0x23259ca4
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x144]
add eax, 0x5d
mov dword [ebp - 0x154], eax
mov eax, 0x82
and eax, dword [ebp - 0x154]
mov dword [ebp - 0x15c], eax
push 0x38
pop eax
imul eax, dword [ebp - 0x15c]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x168]
add eax, 0x67
mov dword [ebp - 0x140], eax
push 0
push 0xf6f6bee6
push 0xf6f6bee6
push 0
call dword [sym.imp.GDI32.dll_AnimatePalette]
mov ecx, eax
and ecx, 5
or ecx, 0x7a7b3d17
mov eax, dword [ebp - 0x140]
xor edx, edx
div ecx
mov dword [ebp - 0x150], edx
push 0x21
pop ecx
or ecx, 0xc23c63ec
mov eax, dword [ebp - 0x150]
xor edx, edx
div ecx
mov dword [ebp - 0x164], edx
mov eax, dword [ebp - 0x164]
add eax, 0x2fe5c140
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x14], eax
push 0
call dword [sym.imp.msvcrt.dll_exit]
and dword [ebp - 0x130], 0
lea eax, [ebp - 0x1c]
push eax
push 0x4149e4
push OleUIBusyA
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
mov dword [ebp - 0x130], eax
cmp dword [ebp - 0x130], 6
jne 0x402d99
fld qword [0x4149f8]
call sub.msvcrt.dll__CIsin
fstp dword [ebp - 0x19c]
fld dword [ebp - 0x19c]
fcomp qword [0x4149e8]
fnstsw ax
test ah, 0x41
jne 0x402e35
push 0x37
pop ecx
or ecx, 0xbeb024b0
mov eax, 0x87
xor edx, edx
div ecx
mov dword [ebp - 0x174], eax
mov eax, dword [ebp - 0x174]
imul eax, eax, 0x9848901
mov dword [ebp - 0x17c], eax
mov eax, dword [ebp - 0x17c]
or eax, 0x45722eed
mov dword [ebp - 0x184], eax
mov eax, dword [ebp - 0x184]
or eax, 0x61
mov dword [ebp - 0x188], eax
push 0x18
pop eax
sub eax, dword [ebp - 0x188]
mov dword [ebp - 0x170], eax
mov ecx, dword [ebp - 0x170]
or ecx, 0x6fe2ce10
mov eax, dword [ebp - 0x130]
xor edx, edx
div ecx
mov dword [ebp - 0x178], eax
push 0
call dword [sym.imp.USER32.dll_IsWindowEnabled]
and eax, 0x2955
or eax, dword [ebp - 0x178]
mov dword [ebp - 0x180], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x14], eax
jmp fcn.00402f9f
push 0
call dword [sym.imp.oledlg.dll_OleUIBusyA]
cmp eax, 0x65
jne 0x402f01
jmp section..htext
mov eax, dword [ebp - 0x14]
pop edi
pop esi
leave
ret 0x10