Function at 0x401ba0
Capabilities:
Accept command line arguments

Disassembly:
mov eax, 0x1710
call fcn.00402a70
mov eax, dword [0x4040e4]
xor eax, esp
mov dword [esp + 0x170c], eax
push ebx
push ebp
push esi
push 0x80000001
call fcn.00402830
xor ebx, ebx
push 0xc7
lea eax, [esp + 0x3d]
push ebx
push eax
mov byte [esp + 0x44], bl
call sub.MSVCR90.dll_memset
push 0xc7
lea ecx, [esp + 0x111]
push ebx
push ecx
mov byte [esp + 0x118], bl
call sub.MSVCR90.dll_memset
push 0xc7
lea edx, [esp + 0x1e5]
push ebx
push edx
mov byte [esp + 0x1ec], bl
call sub.MSVCR90.dll_memset
push 0x1387
lea eax, [esp + 0x3bd]
push ebx
push eax
mov byte [esp + 0x3c4], bl
call sub.MSVCR90.dll_memset
lea ecx, [esp + 0x40]
push ecx
lea edx, [esp + 0x6c]
push edx
mov ebp, 1
mov esi, 0xc8
push ebp
mov dword [esp + 0x4c], esi
call fcn.004027b0
add esp, 0x40
lea eax, [esp + 0xc]
push eax
lea ecx, [esp + 0x100]
push ecx
push 2
mov dword [esp + 0x18], esi
call fcn.004027b0
lea edx, [esp + 0x18]
push edx
lea eax, [esp + 0x1d4]
push eax
push 3
mov dword [esp + 0x24], esi
call fcn.004027b0
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x3ac]
push edx
push 4
mov dword [esp + 0x30], 0x1388
call fcn.004027b0
add esp, 0x24
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
cmp eax, ebx
je 0x401ccf
lea ecx, [esp + 0x10]
push ecx
push eax
mov dword [esp + 0x18], ebx
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov esi, eax
cmp esi, ebx
jne 0x401cea
push 0x10
lea edx, [esp + 0x38]
push edx
lea eax, [esp + 0x104]
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
pop esi
pop ebp
or eax, 0xffffffff
pop ebx
mov ecx, dword [esp + 0x170c]
xor ecx, esp
call fcn.00402a5e
add esp, 0x1710
ret
cmp dword [esp + 0x10], ebp
push edi
jle 0x401de9
mov ecx, dword [esi + 4]
mov edi, dword [sym.imp.KERNEL32.dll_lstrcmpW]
push 0x40323c
push ecx
call edi
test eax, eax
je 0x401d1b
mov edx, dword [esi + 4]
push 0x403234
push edx
call edi
test eax, eax
je 0x401d1b
xor ebp, ebp
mov eax, dword [esi + 4]
push 0x40322c
push eax
call edi
test eax, eax
je 0x401d3d
mov ecx, dword [esi + 4]
push 0x403224
push ecx
call edi
test eax, eax
je 0x401d3d
xor eax, eax
jmp 0x401d42
mov eax, 1
cmp dword [esp + 0x14], 2
jg 0x401dc2
cmp ebp, ebx
jne 0x401d92
cmp eax, ebx
je 0x401dc2
push 1
call fcn.00401a10
add esp, 4
test eax, eax
je 0x401dbe
mov eax, dword [0x40410c]
push eax
call dword [sym.imp.KERNEL32.dll_ResetEvent]
mov ecx, dword [0x40410c]
push 0xbb8
push ecx
call fcn.00401ae0
add esp, 8
test eax, eax
je 0x401dbe
push esi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
or eax, 0xffffffff
jmp 0x401f65
push 1
call fcn.00401a10
add esp, 4
test eax, eax
je 0x401dad
mov edx, dword [0x40410c]
push edx
call dword [sym.imp.KERNEL32.dll_ResetEvent]
call fcn.00401a50
push esi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
jmp 0x401f63
xor edi, edi
jmp 0x401df4
push 0x40
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x39c]
push eax
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
push esi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov eax, 1
jmp 0x401f65
push ebp
call fcn.00401a10
add esp, 4
mov edi, eax
push esi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
cmp edi, ebx
jne 0x401f63
cmp dword [0x40410c], ebx
je 0x401e30
call fcn.00401f80
mov dword [0x404108], eax
cmp eax, 4
jae 0x401e38
push 0x10
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x108]
push edx
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
or eax, 0xffffffff
jmp 0x401f65
mov eax, dword [str.TabSiPlus.dll]
push 0x104
push 0x404110
push eax
call fcn.00401a70
add esp, 0xc
test eax, eax
jne 0x401e74
push 0x10
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x1d0]
push edx
push ebx
call dword [sym.imp.USER32.dll_MessageBoxA]
mov eax, 0xfffffffe
jmp 0x401f65
mov ecx, dword [str.ShowSplash]
mov edx, dword [str.SoftwareOrbit_StudioTabSiPlus]
push 1
lea eax, [esp + 0x1c]
push eax
push ecx
push edx
mov dword [esp + 0x28], 1
call fcn.00402840
add esp, 0x10
cmp dword [esp + 0x18], ebx
je 0x401ee6
mov ecx, dword [str.TabSiHk.dll]
push 0x104
lea eax, [esp + 0x294]
push eax
push ecx
call fcn.00401a70
add esp, 0xc
push 0x2010
push ebx
push ebx
push ebx
lea edx, [esp + 0x2a0]
push edx
push ebx
call dword [sym.imp.USER32.dll_LoadImageA]
cmp eax, ebx
je 0x401ee6
push 0xbb8
push 1
push eax
call fcn.00401960
add esp, 0xc
push 0x401b00
push 0x7d0
push ebx
push ebx
call dword [sym.imp.USER32.dll_SetTimer]
push 0xffffffffffffffff
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_SetProcessWorkingSetSize]
mov esi, dword [sym.imp.USER32.dll_GetMessageA]
push ebx
push ebx
push ebx
lea eax, [esp + 0x28]
push eax
call esi
cmp eax, ebx
je 0x401f51
mov edi, dword [sym.imp.USER32.dll_TranslateMessage]
mov ebp, dword [sym.imp.USER32.dll_DispatchMessageA]
lea esp, [esp]
cmp eax, 0xffffffff
je 0x401f51
lea ecx, [esp + 0x1c]
push ecx
call edi
lea edx, [esp + 0x1c]
push edx
call ebp
push ebx
push ebx
push ebx
lea eax, [esp + 0x28]
push eax
call esi
cmp eax, ebx
jne 0x401f30
mov ecx, dword [0x40410c]
push ecx
call dword [sym.imp.KERNEL32.dll_SetEvent]
call fcn.00401a50
xor eax, eax
mov ecx, dword [esp + 0x171c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00402a5e
add esp, 0x1710
ret