Function at 0x4020f5
Capabilities:
Create thread
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x60
lea edx, [ebp - 0x58]
mov ecx, 0x10
mov eax, 0
push edi
mov edi, edx
rep stosb byte es:[edi], al
pop edi
mov eax, edx
mov byte [ebp - 0x5e], 0
mov byte [ebp - 0x5d], 0
mov byte [ebp - 0x5c], 0
mov byte [ebp - 0x5b], 0
mov byte [ebp - 0x5a], 0
mov byte [ebp - 0x59], 0
call fcn.00402d40
cmp eax, 0
je 0x402154
push 0x10
push str.factory_card_issue
push 0x40a079
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, 0
jmp 0x402358
mov dword [ebp - 0x44], 3
mov dword [ebp - 0x40], 0x401bcc
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
mov eax, dword [ebp + 8]
mov dword [ebp - 0x34], eax
push 0x7f00
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.USER32.dll_LoadIconA]
mov dword [ebp - 0x30], eax
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorA]
mov dword [ebp - 0x2c], eax
push 0xced3d6
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], 0
mov dword [ebp - 0x20], str.factory_card_issue
lea eax, [ebp - 0x44]
push eax
call dword [sym.imp.USER32.dll_RegisterClassA]
cmp ax, 0
jne 0x4021e6
push 0x10
push str.factory_card_issue
push 0x40a054
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, 0
jmp 0x402358
push 0
mov eax, dword [ebp + 8]
push eax
push 0
push 0
push closesocket
push closesocket
push closesocket
push closesocket
push 0xcf0000
push 0x40a03d
push str.factory_card_issue
push 0
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp + 0x14]
push eax
mov eax, dword [ebp - 0x48]
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebp - 0x48]
push eax
call dword [sym.imp.USER32.dll_UpdateWindow]
push 0
push 1
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov dword [0x42e5dc], eax
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov dword [0x42e5d8], eax
push 0
push 1
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov dword [0x42e5c4], eax
mov dword [0x42e5d4], 1
push 0x42e5cc
push 0
push 0
push 0x401a48
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [0x42e5c8], eax
call fcn.0040173c
cmp eax, 0
je 0x4022b3
push 0x40a015
call fcn.00401abb
jmp 0x4022bd
push 0x40a003
call fcn.00401abb
movzx eax, byte [0x42e5b3]
push eax
movzx eax, byte [0x42e5b2]
push eax
movzx eax, byte [0x42e5b1]
push eax
movzx eax, byte [0x42e5b0]
push eax
push str._d._d._d._d
lea eax, [ebp - 0x58]
push eax
call fcn.00402f30
add esp, 0x18
movzx eax, word [0x42e5b4]
push eax
push section..rdata
lea eax, [ebp - 0x5e]
push eax
call fcn.00402f30
add esp, 0xc
lea eax, [ebp - 0x58]
push eax
mov eax, dword [0x42e5ac]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
lea eax, [ebp - 0x5e]
push eax
mov eax, dword [0x42e5b8]
push eax
call dword [sym.imp.USER32.dll_SetWindowTextA]
jmp 0x402340
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
push 0
push 0
push 0
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.USER32.dll_GetMessageA]
cmp eax, 0
jne 0x40232c
mov eax, dword [ebp - 0x14]
mov esp, ebp
pop ebp
ret 0x10