Function at 0x401ec0
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x910
push esi
push edi
push 0xfffffffffffffff6
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
mov esi, dword [ebp + 8]
push esi
lea ecx, [esp + 0x18]
call fcn.00401d00
mov edi, dword [ebp + 0x10]
lea eax, [esp + 0x14]
push eax
push edi
push esi
lea ecx, [esp + 0x4c]
call fcn.00402ed0
push esi
push 0
push 0
call fcn.00404360
add esp, 0xc
cmp eax, 2
je 0x401f29
push str.Interactive_SQL
push eax
call fcn.004040c0
mov edi, eax
mov eax, dword [esp + 0x34]
add esp, 4
call fcn.00401200
add esp, 4
jmp 0x402170
push 1
lea ecx, [esp + 0x44]
call fcn.00402da0
lea ecx, [esp + 0x40]
call fcn.004038f0
test eax, eax
je 0x402170
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x40216b
mov eax, dword [esp + 0x34]
test eax, eax
je 0x40203f
mov eax, dword [esp + 0x2c]
test eax, eax
jne 0x402027
lea ecx, [esp + 0x38]
call fcn.00408080
push eax
lea ecx, [esp + 0x10]
call fcn.00408c90
push str.dbisqlg.exe
lea ecx, [esp + 0x10]
call fcn.00408e20
lea ecx, [esp + 0xc]
call fcn.00408d90
push 0x4153d0
lea ecx, [esp + 0x10]
call fcn.004080b0
push edi
lea ecx, [esp + 0x10]
call fcn.004080b0
lea ecx, [esp + 0xc]
call fcn.00407f80
inc eax
push eax
call fcn.00408c60
add esp, 4
lea ecx, [esp + 0xc]
mov esi, eax
call fcn.00408080
push eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
xor eax, eax
mov ecx, 0x11
lea edi, [esp + 0xc0]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0xb0]
push ecx
lea edx, [esp + 0xc4]
push edx
push eax
push eax
push 8
push eax
push eax
push eax
push esi
push eax
mov dword [esp + 0xe8], 0x44
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
push esi
mov edi, eax
call fcn.004079e0
add esp, 4
lea ecx, [esp + 0xc]
call fcn.00407bb0
test edi, edi
jne 0x40216b
mov eax, dword [esp + 0x34]
test eax, eax
je 0x40203f
call dword [sym.imp.KERNEL32.dll_GetConsoleCP]
push eax
lea ecx, [esp + 0x44]
call fcn.00402d90
push 0x400
lea eax, [esp + 0x514]
push eax
push 0x238f
call fcn.004046e0
add esp, 0xc
lea ecx, [esp + 0x40]
call fcn.004031f0
cmp ax, 1
je 0x4020ed
cmp ax, 0xffff
jne 0x4020b5
mov eax, dword [esp + 0x30]
test eax, eax
je 0x40216b
push 0x400
lea ecx, [esp + 0x10c]
push ecx
push 0x238d
call fcn.004046e0
mov eax, dword [esp + 0x38]
lea edx, [esp + 0x51c]
push edx
lea edi, [esp + 0x118]
call fcn.00401200
add esp, 0x10
jmp 0x40216b
cmp ax, 0xfffa
jne 0x4020ed
push 0x400
lea eax, [esp + 0x10c]
push eax
push 0x2390
call fcn.004046e0
mov eax, dword [esp + 0x38]
lea ecx, [esp + 0x51c]
push ecx
lea edi, [esp + 0x118]
call fcn.00401200
add esp, 0x10
lea ecx, [esp + 0x40]
call fcn.00403dd0
cmp ax, 1
je 0x40216b
movsx eax, ax
add eax, 5
cmp eax, 3
ja case.default.0x402107
jmp dword [eax*4 + 0x4021a0]
push 0x400
lea edx, [esp + 0x10c]
push edx
push 0x2391
jmp 0x402148
push 0x400
lea eax, [esp + 0x10c]
push eax
push 0x2392
jmp 0x402148
push 0x400
lea ecx, [esp + 0x10c]
push ecx
push 0x2393
call fcn.004046e0
add esp, 0xc
mov eax, dword [esp + 0x2c]
lea edx, [esp + 0x510]
push edx
lea edi, [esp + 0x10c]
call fcn.00401200
add esp, 4
call fcn.00404300
lea ecx, [esp + 0x40]
call fcn.00402c00
lea ecx, [esp + 0x38]
call fcn.00407bb0
lea ecx, [esp + 0x24]
call fcn.00407bb0
lea ecx, [esp + 0x1c]
call fcn.00407bb0
pop edi
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret 0x10