Function at 0x433a30
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5204c6
mov eax, dword fs:[0]
push eax
sub esp, 0xc8
push esi
mov eax, dword [0x570374]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
mov dword [ebp - 0x5c], eax
push 0
push 0
push 0
push 0
call dword [sym.imp.USER32.dll_DefWindowProcW]
push 4
call fcn.00436af0
add esp, 4
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x575d20], eax
call fcn.0044bbd0
push 0x5300f0
push 0
call fcn.004ca90e
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
push 0x5300f4
call fcn.0043c160
add esp, 8
push 0
mov eax, dword [0x575cb8]
push eax
push 0
mov ecx, 0x575d24
call fcn.00437910
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], 0
lea ecx, [ebp - 0x60]
call fcn.0040a880
mov dword [ebp - 4], 0
call fcn.0042f860
mov ecx, eax
call fcn.00474940
call fcn.00437600
mov ecx, eax
call fcn.00444e00
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.004374a0
mov ecx, eax
call fcn.00424910
mov edx, dword [ebp + 0x10]
push edx
push str.lpstrCmdLine_s
call fcn.0043c160
add esp, 8
call fcn.004345d0
call fcn.004374a0
mov ecx, eax
call fcn.00424e00
push eax
call fcn.00444160
call fcn.004347a0
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x68], esp
push 0
call fcn.00435020
mov dword [ebp - 0x6c], eax
mov byte [ebp - 4], 1
push 0
push 0
push str.enter
call fcn.00437550
mov byte [ebp - 4], 0
mov ecx, eax
call fcn.004180d0
call fcn.00437dd0
test eax, eax
jne 0x433bb8
push str.xp_sp2
call fcn.0043c160
add esp, 4
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x70], esp
push 0
call fcn.00435020
mov dword [ebp - 0x74], eax
mov byte [ebp - 4], 2
push 0
push 0
push 0x530158
call fcn.00437550
mov byte [ebp - 4], 0
mov ecx, eax
call fcn.004180d0
push 0
push 0x530160
push 0
call fcn.00444170
jmp 0x434171
mov ecx, 0x575d60
call fcn.0040a9c0
test eax, eax
jne 0x433c15
push str.CheckSingleInstance_failed__exit
call fcn.0043c160
add esp, 4
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x78], esp
push 0
call fcn.00435020
mov dword [ebp - 0x7c], eax
mov byte [ebp - 4], 3
push 0
push 0
push str.single
call fcn.00437550
mov byte [ebp - 4], 0
mov ecx, eax
call fcn.004180d0
push 0
push 0x53017c
push 0
call fcn.00444170
jmp 0x434171
lea ecx, [ebp - 0x10]
call fcn.00405310
mov byte [ebp - 4], 4
lea eax, [ebp - 0x10]
push eax
call fcn.00434830
add esp, 4
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0
jg 0x433db0
cmp dword [ebp - 0x20], 0
jge 0x433c4e
push 0
push 0x5301ec
push 0
call fcn.00444170
call fcn.004374a0
mov ecx, eax
call fcn.00424f00
mov dword [ebp - 0x1c], eax
lea ecx, [ebp - 0x18]
push ecx
call fcn.004374a0
mov ecx, eax
call fcn.00424cb0
mov byte [ebp - 4], 5
cmp dword [ebp - 0x1c], 0
je 0x433d52
call fcn.0044bbd0
mov dword [ebp - 0x24], eax
lea edx, [ebp - 0x10]
push edx
mov eax, dword [ebp - 0x24]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x24]
mov eax, dword [edx + 0x50]
call eax
call fcn.0044bbd0
mov dword [ebp - 0x28], eax
push ecx
mov ecx, esp
mov dword [ebp - 0x80], esp
push 0x530210
lea edx, [ebp - 0x10]
push edx
push ecx
call fcn.004221b0
add esp, 0xc
mov eax, dword [ebp - 0x28]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x28]
mov eax, dword [edx + 0x54]
call eax
lea ecx, [ebp - 0x14]
call fcn.00405310
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x18]
call fcn.004067b0
movzx ecx, al
test ecx, ecx
je 0x433cf3
mov edx, dword [ebp - 0x1c]
push edx
push 0x530238
lea eax, [ebp - 0x14]
push eax
call fcn.00415d50
add esp, 0xc
jmp 0x433d0c
mov ecx, dword [ebp - 0x1c]
push ecx
mov edx, dword [ebp - 0x18]
push edx
push 0x530250
lea eax, [ebp - 0x14]
push eax
call fcn.00415d50
add esp, 0x10
lea ecx, [ebp - 0x14]
call fcn.00406590
push eax
push 0x53026c
call fcn.0043c160
add esp, 8
call fcn.0044bbd0
mov dword [ebp - 0x2c], eax
lea ecx, [ebp - 0x14]
call fcn.004373e0
push eax
push 0x530294
mov ecx, dword [ebp - 0x2c]
push ecx
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx]
mov ecx, dword [eax + 0x3c]
call ecx
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x14]
call fcn.00405480
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x84], esp
push 0
call fcn.00435020
mov dword [ebp - 0x88], eax
mov byte [ebp - 4], 7
push 0
push 0
push str.exist
call fcn.00437550
mov byte [ebp - 4], 5
mov ecx, eax
call fcn.004180d0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x18]
call fcn.00405480
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call fcn.00405480
jmp 0x434171
cmp dword [ebp - 0x20], 2
jne 0x43407d
push 0x575e14
push ecx
mov esi, esp
mov dword [ebp - 0x8c], esp
call fcn.00447420
push eax
mov ecx, esi
call fcn.00405290
mov dword [ebp - 0x90], eax
mov byte [ebp - 4], 8
push ecx
mov esi, esp
mov dword [ebp - 0x94], esp
call fcn.00447420
push eax
mov ecx, esi
call fcn.00405290
mov byte [ebp - 4], 4
call fcn.00448920
add esp, 0xc
cmp dword [0x575e14], 0
je 0x433e7c
push str.inst_limit_bird
lea ecx, [ebp - 0x34]
call fcn.00405290
mov byte [ebp - 4], 9
push 0x5302e4
lea ecx, [ebp - 0x30]
call fcn.00405290
mov byte [ebp - 4], 0xa
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0x98], esp
push 0
call fcn.00435020
mov dword [ebp - 0x9c], eax
mov byte [ebp - 4], 0xb
push 0
push 0
lea edx, [ebp - 0x34]
push edx
lea eax, [ebp - 0x30]
push eax
call fcn.00437550
mov byte [ebp - 4], 0xa
mov ecx, eax
call fcn.004184f0
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x30]
call fcn.00405480
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x34]
call fcn.00405480
cmp dword [0x575e1c], 0
je 0x433ef7
push str.inst_limit_lu
lea ecx, [ebp - 0x3c]
call fcn.00405290
mov byte [ebp - 4], 0xc
push 0x530318
lea ecx, [ebp - 0x38]
call fcn.00405290
mov byte [ebp - 4], 0xd
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0xa0], esp
push 0
call fcn.00435020
mov dword [ebp - 0xa4], eax
mov byte [ebp - 4], 0xe
push 0
push 0
lea ecx, [ebp - 0x3c]
push ecx
lea edx, [ebp - 0x38]
push edx
call fcn.00437550
mov byte [ebp - 4], 0xd
mov ecx, eax
call fcn.004184f0
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x38]
call fcn.00405480
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x3c]
call fcn.00405480
cmp dword [0x575e18], 0
je 0x433f72
push str.inst_limit_mgame
lea ecx, [ebp - 0x44]
call fcn.00405290
mov byte [ebp - 4], 0xf
push 0x530354
lea ecx, [ebp - 0x40]
call fcn.00405290
mov byte [ebp - 4], 0x10
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0xa8], esp
push 0
call fcn.00435020
mov dword [ebp - 0xac], eax
mov byte [ebp - 4], 0x11
push 0
push 0
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x40]
push ecx
call fcn.00437550
mov byte [ebp - 4], 0x10
mov ecx, eax
call fcn.004184f0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x40]
call fcn.00405480
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x44]
call fcn.00405480
cmp dword [0x575e20], 0
je 0x433fed
push str.inst_limit_halo
lea ecx, [ebp - 0x4c]
call fcn.00405290
mov byte [ebp - 4], 0x12
push 0x53038c
lea ecx, [ebp - 0x48]
call fcn.00405290
mov byte [ebp - 4], 0x13
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0xb0], esp
push 0
call fcn.00435020
mov dword [ebp - 0xb4], eax
mov byte [ebp - 4], 0x14
push 0
push 0
lea edx, [ebp - 0x4c]
push edx
lea eax, [ebp - 0x48]
push eax
call fcn.00437550
mov byte [ebp - 4], 0x13
mov ecx, eax
call fcn.004184f0
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x48]
call fcn.00405480
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x4c]
call fcn.00405480
cmp dword [0x575e24], 0
je 0x43407d
push str.inst_limit_kantu
lea ecx, [ebp - 0x54]
call fcn.00405290
mov byte [ebp - 4], 0x15
push str.loader_dll2
lea ecx, [ebp - 0x50]
call fcn.00405290
mov byte [ebp - 4], 0x16
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0xb8], esp
push 0
call fcn.00435020
mov dword [ebp - 0xbc], eax
mov byte [ebp - 4], 0x17
push 1
push 0
lea ecx, [ebp - 0x54]
push ecx
lea edx, [ebp - 0x50]
push edx
call fcn.00437550
mov byte [ebp - 4], 0x16
mov ecx, eax
call fcn.004184f0
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x50]
call fcn.00405480
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x54]
call fcn.00405480
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call fcn.00405480
jmp 0x434171
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0xc0], esp
push 0
call fcn.00435020
mov dword [ebp - 0xc4], eax
mov byte [ebp - 4], 0x18
push 0
push 0
push 0x5303e0
call fcn.00437550
mov byte [ebp - 4], 4
mov ecx, eax
call fcn.004180d0
call fcn.004344d0
test eax, eax
jne 0x4340fe
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0xc8], esp
push 0
call fcn.00435020
mov dword [ebp - 0xcc], eax
mov byte [ebp - 4], 0x19
push 0
push 0
push str.init_task_fail
call fcn.00437550
mov byte [ebp - 4], 4
mov ecx, eax
call fcn.004180d0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call fcn.00405480
jmp 0x434171
call fcn.004346e0
test eax, eax
jne 0x43414a
sub esp, 0x28
mov ecx, esp
mov dword [ebp - 0xd0], esp
push 0
call fcn.00435020
mov dword [ebp - 0xd4], eax
mov byte [ebp - 4], 0x1a
push 0
push 0
push str.install_file_fail
call fcn.00437550
mov byte [ebp - 4], 4
mov ecx, eax
call fcn.004180d0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call fcn.00405480
jmp 0x434171
mov eax, dword [ebp + 0x14]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.004341e0
add esp, 8
mov dword [ebp - 0x58], eax
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x10]
call fcn.00405480
xor edx, edx
jne 0x433b60
call fcn.00437600
mov ecx, eax
call fcn.004452a0
call fcn.0042f860
mov ecx, eax
call fcn.00474ab0
call fcn.0044c500
push 0xbb8
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 0x575d60
call fcn.0040aab0
mov ecx, 0x575d24
call fcn.0043a320
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x64], eax
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x60]
call fcn.0040a8a0
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret