Function at 0x403a60
Capabilities:
Accept command line arguments
Create process on windows
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x43248e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x374
mov eax, dword [0x448924]
push ebx
push ebp
mov ebp, dword [esp + 0x38c]
push esi
push edi
push ebp
mov dword [esp + 0x384], eax
mov edi, ecx
call fcn.00412740
push eax
call fcn.00412790
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
push eax
lea eax, [esp + 0x60]
push eax
call fcn.0041c180
add esp, 8
lea esi, [edi + 0xa4]
xor ebx, ebx
push eax
mov ecx, esi
mov dword [esp + 0x390], ebx
call fcn.004039a0
lea ecx, [esp + 0x5c]
mov dword [esp + 0x38c], 0xffffffff
call fcn.00403000
mov edi, dword [edi + 0xb4]
cmp edi, 2
jae 0x403b4a
push 0x104
lea ecx, [esp + 0x280]
push ecx
push ebp
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea edx, [esp + 0x27c]
push edx
push str.BIANFENG
call fcn.00401a70
add esp, 8
test eax, eax
je 0x403b32
push 0x4347ec
push ebx
call fcn.004133e0
add esp, 8
mov eax, 1
jmp 0x404321
push 0x4347d8
push ebx
call fcn.004133e0
add esp, 8
mov eax, 2
jmp 0x404321
mov edi, dword [esi + 0xc]
mov eax, dword [esi + 0xc]
add eax, dword [esi + 0x10]
cmp esi, esi
mov ebp, 0x10
jne 0x403b60
cmp edi, eax
je 0x403b90
mov ecx, dword [esi + 8]
cmp ecx, edi
mov eax, edi
ja 0x403b6b
sub eax, ecx
mov ecx, dword [esi + 4]
mov eax, dword [ecx + eax*4]
cmp dword [eax + 0x18], ebp
jb 0x403b7b
mov eax, dword [eax + 4]
jmp 0x403b7e
add eax, 4
push eax
push str.PARAM__s_.
push ebx
call fcn.004133e0
add esp, 0xc
inc edi
jmp 0x403b4d
mov eax, dword [esi + 0xc]
mov ecx, esi
mov edx, dword [ecx + 8]
inc eax
cmp edx, eax
ja 0x403b9f
sub eax, edx
mov edx, dword [ecx + 4]
mov eax, dword [edx + eax*4]
push 0xffffffffffffffff
push ebx
mov edi, 0xf
push eax
lea ecx, [esp + 0xdc]
mov dword [esp + 0xf4], edi
mov dword [esp + 0xf0], ebx
mov byte [esp + 0xe0], bl
call fcn.00401400
mov eax, dword [esp + 0xe4]
push ebx
push 0x4384a4
push eax
push ebx
lea ecx, [esp + 0xe0]
mov dword [esp + 0x39c], 1
call fcn.004027b0
test eax, eax
jne 0x403c2c
push 0x4347b8
push ebx
call fcn.004133e0
mov eax, dword [esp + 0xf0]
add esp, 8
cmp eax, ebp
jb 0x403c22
mov ecx, dword [esp + 0xd4]
push ecx
call fcn.0042a4eb
add esp, 4
mov eax, 3
jmp 0x404321
cmp dword [esp + 0xe8], ebp
mov esi, dword [esp + 0xd4]
jae 0x403c43
lea esi, [esp + 0xd4]
push 0xb
push str.BIANFENG:_
push esi
call fcn.0041096e
add esp, 0xc
test eax, eax
je 0x403c9c
push 9
push str.BIANFENG:
push esi
call fcn.0041096e
add esp, 0xc
test eax, eax
je 0x403c8f
push 0x43478c
push ebx
call fcn.004133e0
add esp, 8
lea ecx, [esp + 0xd0]
call fcn.00401300
mov eax, 3
jmp 0x404321
push 9
push ebx
lea edx, [esp + 0xd8]
push edx
jmp 0x403ca7
push 0xb
push ebx
lea eax, [esp + 0xd8]
push eax
call fcn.00402d40
add esp, 0xc
nop
push 2
push 0x434788
lea ecx, [esp + 0x48]
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], ebx
mov byte [esp + 0x4c], bl
call fcn.004014f0
push 1
push 0x434784
lea ecx, [esp + 0x1c]
mov byte [esp + 0x394], 2
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], ebx
mov byte [esp + 0x20], bl
call fcn.004014f0
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
cmp ecx, ebp
mov ecx, dword [esp + 0x18]
mov byte [esp + 0x38c], 3
mov esi, eax
jae 0x403d0e
lea ecx, [esp + 0x18]
push eax
push ebx
push ecx
lea ecx, [esp + 0xdc]
call fcn.00401650
cmp eax, 0xffffffff
jne 0x403d26
or eax, eax
jmp 0x403d3e
push 0xffffffffffffffff
push ebx
lea ecx, [esp + 0x48]
push ecx
push esi
push eax
lea ecx, [esp + 0xe4]
call fcn.00401720
xor eax, eax
cmp eax, ebx
mov eax, dword [esp + 0x2c]
sete byte [esp + 0x13]
cmp eax, ebp
jb 0x403d5a
mov edx, dword [esp + 0x18]
push edx
call fcn.0042a4eb
add esp, 4
cmp dword [esp + 0x58], ebp
mov dword [esp + 0x2c], edi
mov dword [esp + 0x28], ebx
mov byte [esp + 0x18], bl
mov byte [esp + 0x38c], 1
jb 0x403d81
mov eax, dword [esp + 0x44]
push eax
call fcn.0042a4eb
add esp, 4
cmp byte [esp + 0x13], bl
mov dword [esp + 0x58], edi
mov dword [esp + 0x54], ebx
mov byte [esp + 0x44], bl
jne 0x403cb0
mov dword [esp + 0x120], edi
mov dword [esp + 0x11c], ebx
mov byte [esp + 0x10c], bl
mov dword [esp + 0x158], edi
mov dword [esp + 0x154], ebx
mov byte [esp + 0x144], bl
mov dword [esp + 0x174], edi
mov dword [esp + 0x170], ebx
mov byte [esp + 0x160], bl
mov dword [esp + 0x13c], edi
mov dword [esp + 0x138], ebx
mov byte [esp + 0x128], bl
mov dword [esp + 0x104], edi
mov dword [esp + 0x100], ebx
mov byte [esp + 0xf0], bl
mov byte [esp + 0x38c], 8
call fcn.0041af30
mov esi, eax
cmp esi, ebx
je 0x403efd
cmp dword [esp + 0xe8], ebp
mov eax, dword [esp + 0xd4]
jae 0x403e2e
lea eax, [esp + 0xd4]
mov ecx, dword [esp + 0xe4]
mov edx, dword [esi]
push ebx
push ecx
push eax
mov ecx, esi
call dword [edx + 0x10]
test eax, eax
je 0x403ef6
mov edx, dword [esi]
push 0x4384a4
push str.AreaTypeID
push 0x4384a4
mov ecx, esi
call dword [edx + 0x24]
push eax
lea ecx, [esp + 0x10c]
call fcn.00401620
mov eax, dword [esi]
push 0x4384a4
push str.USERNAME
push 0x4384a4
mov ecx, esi
call dword [eax + 0x24]
push eax
lea ecx, [esp + 0x144]
call fcn.00401620
mov edx, dword [esi]
push 0x4384a4
push str.PASSWORD
push 0x4384a4
mov ecx, esi
call dword [edx + 0x24]
push eax
lea ecx, [esp + 0x160]
call fcn.00401620
mov eax, dword [esi]
push 0x4384a4
push str.SESSIONID
push 0x4384a4
mov ecx, esi
call dword [eax + 0x24]
push eax
lea ecx, [esp + 0x128]
call fcn.00401620
mov edx, dword [esi]
push 0x4384a4
push str.NUMBERID
push 0x4384a4
mov ecx, esi
call dword [edx + 0x24]
push eax
lea ecx, [esp + 0xf0]
call fcn.00401620
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
push 0x4384a4
lea ecx, [esp + 0xb8]
call fcn.004015e0
mov ecx, dword [esp + 0x11c]
push ebx
push 0x4384a4
push ecx
push ebx
lea ecx, [esp + 0x118]
mov byte [esp + 0x39c], 9
call fcn.004027b0
test eax, eax
je 0x403f85
push 1
push 0x434744
lea ecx, [esp + 0xbc]
call fcn.00402940
push 2
push 0x434740
lea ecx, [esp + 0xbc]
call fcn.00402940
push 1
push 0x434744
lea ecx, [esp + 0xbc]
call fcn.00402940
push 0xffffffffffffffff
push ebx
lea edx, [esp + 0x110]
push edx
lea ecx, [esp + 0xc0]
call fcn.00402850
mov eax, dword [esp + 0x154]
push ebx
push 0x4384a4
push eax
push ebx
lea ecx, [esp + 0x150]
call fcn.004027b0
test eax, eax
je 0x403ff4
push 1
push 0x434744
lea ecx, [esp + 0xbc]
call fcn.00402940
push 2
push 0x43473c
lea ecx, [esp + 0xbc]
call fcn.00402940
push 1
push 0x434744
lea ecx, [esp + 0xbc]
call fcn.00402940
push 0xffffffffffffffff
push ebx
lea ecx, [esp + 0x148]
push ecx
lea ecx, [esp + 0xc0]
call fcn.00402850
mov edx, dword [esp + 0x170]
push ebx
push 0x4384a4
push edx
push ebx
lea ecx, [esp + 0x16c]
call fcn.004027b0
test eax, eax
je 0x404063
push 1
push 0x434744
lea ecx, [esp + 0xbc]
call fcn.00402940
push 2
push 0x434738
lea ecx, [esp + 0xbc]
call fcn.00402940
push 1
push 0x434744
lea ecx, [esp + 0xbc]
call fcn.00402940
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0x164]
push eax
lea ecx, [esp + 0xc0]
call fcn.00402850
mov ecx, dword [esp + 0x138]
push ebx
push 0x4384a4
push ecx
push ebx
lea ecx, [esp + 0x134]
call fcn.004027b0
test eax, eax
je 0x4040d2
push 1
push 0x434744
lea ecx, [esp + 0xbc]
call fcn.00402940
push 2
push 0x434734
lea ecx, [esp + 0xbc]
call fcn.00402940
push 1
push 0x434744
lea ecx, [esp + 0xbc]
call fcn.00402940
push 0xffffffffffffffff
push ebx
lea edx, [esp + 0x12c]
push edx
lea ecx, [esp + 0xc0]
call fcn.00402850
mov eax, dword [esp + 0x100]
push ebx
push 0x4384a4
push eax
push ebx
lea ecx, [esp + 0xfc]
call fcn.004027b0
test eax, eax
je 0x404141
push 1
push 0x434744
lea ecx, [esp + 0xbc]
call fcn.00402940
push 2
push 0x434730
lea ecx, [esp + 0xbc]
call fcn.00402940
push 1
push 0x434744
lea ecx, [esp + 0xbc]
call fcn.00402940
push 0xffffffffffffffff
push ebx
lea ecx, [esp + 0xf4]
push ecx
lea ecx, [esp + 0xc0]
call fcn.00402850
mov edx, dword [esp + 0xc8]
push ebx
push 0x4384a4
push edx
push ebx
lea ecx, [esp + 0xc4]
call fcn.004027b0
test eax, eax
jne 0x4041ca
push 0x43471c
push ebx
call fcn.004133e0
add esp, 8
lea ecx, [esp + 0xb4]
call fcn.00401300
lea ecx, [esp + 0xec]
call fcn.00401300
lea ecx, [esp + 0x124]
call fcn.00401300
lea ecx, [esp + 0x15c]
call fcn.00401300
lea ecx, [esp + 0x140]
call fcn.00401300
lea ecx, [esp + 0x108]
call fcn.00401300
lea ecx, [esp + 0xd0]
call fcn.00401300
or eax, 0xffffffff
jmp 0x404321
cmp dword [esp + 0xcc], ebp
mov eax, dword [esp + 0xb8]
jae 0x4041e1
lea eax, [esp + 0xb8]
push eax
push str.CMD:__s
push ebx
call fcn.004133e0
mov eax, dword [esp + 0xd8]
add esp, 0xc
cmp eax, ebp
mov eax, dword [esp + 0xb8]
jae 0x404209
lea eax, [esp + 0xb8]
push eax
push str.Lobby.exe
call fcn.00412780
push eax
lea eax, [esp + 0x184]
push str._s_s__s
push eax
call fcn.0040693d
lea ecx, [esp + 0x18c]
push ecx
push str.RUN:__s
push ebx
call fcn.004133e0
xor edx, edx
xor eax, eax
mov ecx, 0x11
lea edi, [esp + 0x90]
rep stosd dword es:[edi], eax
mov dword [esp + 0x50], edx
add esp, 0x20
lea eax, [esp + 0x30]
mov dword [esp + 0x34], edx
push eax
lea ecx, [esp + 0x74]
mov dword [esp + 0x3c], edx
push ecx
mov dword [esp + 0x78], 0x44
mov dword [esp + 0x44], edx
call fcn.00412780
push eax
push ebx
push ebx
push ebx
push ebx
push ebx
lea edx, [esp + 0x198]
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
mov edi, eax
cmp edi, ebx
jne 0x4042a6
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x4346e0
push ebx
call fcn.004133e0
add esp, 0xc
mov eax, dword [esp + 0x30]
cmp eax, ebx
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
je 0x4042b7
push eax
call esi
mov eax, dword [esp + 0x34]
cmp eax, ebx
je 0x4042c2
push eax
call esi
lea ecx, [esp + 0xb4]
call fcn.00401300
lea ecx, [esp + 0xec]
call fcn.00401300
lea ecx, [esp + 0x124]
call fcn.00401300
lea ecx, [esp + 0x15c]
call fcn.00401300
lea ecx, [esp + 0x140]
call fcn.00401300
lea ecx, [esp + 0x108]
call fcn.00401300
lea ecx, [esp + 0xd0]
call fcn.00401300
xor eax, eax
cmp edi, ebx
setne al
dec eax
and eax, 4
mov ecx, dword [esp + 0x384]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
mov ecx, dword [esp + 0x374]
pop ebx
call fcn.0040660b
add esp, 0x380
ret 4