Function at 0x423440
Capabilities:
Create process on windows

Disassembly:
push 0xffffffffffffffff
push 0x4a14f0
mov eax, dword fs:[0]
push eax
sub esp, 0x44
push ebx
push esi
push edi
mov eax, dword [0x5564a4]
xor eax, esp
push eax
lea eax, [esp + 0x54]
mov dword fs:[0], eax
mov esi, ecx
call fcn.00427e50
mov ecx, eax
call fcn.00427970
call fcn.00420900
call fcn.00405c10
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x42348a
call fcn.00408df0
mov edi, dword [esp + 0x68]
mov eax, dword [edi + 1]
push eax
mov ecx, esi
call fcn.00421ef0
mov ecx, dword [edi + 5]
push ecx
call fcn.0041d7a0
mov ecx, eax
call fcn.0041d760
mov edx, dword [edi + 5]
movzx eax, byte [edi]
mov ecx, dword [esi + 0x435f4]
push edx
push eax
push str._6__Ret__d__RecvLoginAccept_:_Billing_Type___d_
push ecx
call fcn.00427200
push eax
call fcn.00426f60
mov ecx, dword [0x55865c]
add esp, 0x14
push 0
call fcn.0043f4a0
movzx ecx, byte [edi + 9]
mov edx, dword [eax]
mov edx, dword [edx + 8]
push ecx
mov ecx, eax
call edx
movzx ebx, byte [edi + 0xc]
call fcn.00421b80
mov dword [eax + 0x128], ebx
movzx eax, byte [edi + 0xc]
mov ecx, dword [esi + 0x435f4]
push eax
push str._6__SetUserType_Adult_d
push ecx
call fcn.00427200
push eax
call fcn.00426f60
mov dl, byte [edi]
mov byte [esi + 0x435f8], dl
movzx eax, byte [edi]
add esp, 0x10
cmp eax, 0x64
ja case.0x42352f.1
movzx ecx, byte [eax + 0x423ec4]
jmp dword [ecx*4 + 0x423e68]
mov ecx, dword [0x55865c]
push 0
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x7c]
call eax
test eax, eax
je 0x423581
mov cx, word [edi + 0xa]
mov word [0x53f020], cx
movsx edx, byte [edi + 0xb]
movsx eax, byte [edi + 0xa]
mov ecx, dword [esi + 0x435f4]
push edx
push eax
push str._6__RecvLoginAccept_Provision__c__c
push ecx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0x14
jmp 0x42358b
mov dword [0x55c0e0], 1
mov edx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_SUCCESS_
push edx
call fcn.00427200
push eax
call fcn.00426f60
mov ecx, dword [0x55865c]
add esp, 0xc
push 0
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x3c]
call eax
test eax, eax
je 0x423acf
cmp byte [edi + 0x11], 0
je 0x423acf
call fcn.00405c10
mov ecx, eax
call fcn.00405bb0
jmp 0x423e51
mov ecx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_ALREADY_LOGIN_
push ecx
call fcn.00427200
push eax
call fcn.00426f60
mov ecx, dword [0x55865c]
add esp, 0xc
push 0
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x3c]
call eax
test eax, eax
je 0x423618
cmp byte [edi + 0x11], 0
jne 0x4235cd
mov ecx, esi
call fcn.00422520
test eax, eax
setne al
mov ecx, dword [esp + 0x54]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x50
ret 8
mov ecx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_NOT_PAYED_
push ecx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea edx, [esp + 0x10]
push 0x60
push edx
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 4
push 0
push eax
mov dword [esp + 0x68], 0
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x10]
mov edi, eax
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
cmp edi, 6
jne 0x423e2a
lea eax, [esp + 0x14]
push eax
call fcn.00413a10
mov ecx, eax
call fcn.00415950
mov ecx, dword [eax]
push 1
push 0
push ecx
push str.iexplore.exe
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
lea ecx, [esp + 0x14]
call fcn.00401640
jmp 0x423e2a
mov edx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_TODAY_EXPIRE_
push edx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea eax, [esp + 0x18]
push 0xf
push eax
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 1
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x18]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov ecx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_DOUBLED_PCBANG_IP_
push ecx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea edx, [esp + 0x1c]
push 0x10
push edx
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 2
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x1c]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov eax, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_WRONG_USERID_
push eax
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea ecx, [esp + 0x20]
push 0x12
push ecx
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 3
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x20]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov edx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_WRONG_PASSWD_
push edx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea eax, [esp + 0x24]
push 0x13
push eax
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 4
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x24]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov ecx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_ACCOUNT_NOT_SUIT_
push ecx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea edx, [esp + 0x28]
push 0x14
push edx
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 5
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x28]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov eax, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_NOT_AUTHORIZED_
push eax
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea ecx, [esp + 0x2c]
push 0x15
push ecx
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 6
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x2c]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov edx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_DB_QUERY_ERR_
push edx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea eax, [esp + 0x30]
push 0x16
push eax
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 7
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x30]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov ecx, dword [0x55865c]
push 0
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x34]
call eax
test eax, eax
je 0x423982
mov ecx, dword [esi + 0x435f4]
add edi, 0x12
push edi
push str._6__RecvLoginAccept_RET_CODE_BLOCK_AVATOR___s
push ecx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0x10
push edi
jmp 0x4239a3
mov edx, dword [esi + 0x435f4]
push 0x5011a0
push str._6__RecvLoginAccept_RET_CODE_BLOCK_AVATOR___s
push edx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0x10
push 0
push 0
push 0x17
call fcn.00420900
mov ecx, eax
call fcn.00420c40
jmp 0x423e2a
mov eax, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_NO_SERVICE_
push eax
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea ecx, [esp + 0x34]
push 0x18
push ecx
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 8
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x34]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov edx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_WAITCOMMIT_ACCOUNT_
push edx
call fcn.00427200
push eax
call fcn.00426f60
mov ecx, dword [0x55865c]
add esp, 0xc
xor edi, edi
push edi
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x9c]
call eax
test eax, eax
je 0x423a4f
mov edi, 4
lea ecx, [esp + 0x38]
push 0x19
push ecx
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push edi
push 0
push eax
mov dword [esp + 0x68], 9
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x38]
mov edi, eax
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
mov ecx, dword [0x55865c]
push 0
call fcn.0043f4a0
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x9c]
call eax
test eax, eax
je 0x423e2a
cmp edi, 6
jne 0x423e2a
mov ecx, dword [esi + 0x435f4]
push str._6__Msg_Yes_Select_SendWorldListRequest
push ecx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
mov ecx, esi
call fcn.00422630
cmp eax, 1
sete al
mov ecx, dword [esp + 0x54]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x50
ret 8
mov edx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_WITHDRAW_ACCOUNT_
push edx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea eax, [esp + 0x3c]
push 0x1a
push eax
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 0xa
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x3c]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov ecx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_CHODING_ACCOUNT_
push ecx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea edx, [esp + 0x40]
push 0x1b
push edx
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 0xb
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x40]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov eax, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_AUTH_TIMEOUT_
push eax
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea ecx, [esp + 0x44]
push 0xb
push ecx
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 0xc
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x44]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov edx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_DONOT_PERMIT_IP_
push edx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
lea eax, [esp + 0x48]
push 0x11
push eax
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 0xd
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x48]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov ecx, dword [esi + 0x435f4]
push 0x3b
push str._6__AgreeMent_Err__d
push ecx
call fcn.00427200
push eax
call fcn.00426f60
push 0
push 0
push str.2005
call fcn.00406520
lea edx, [esp + 0x68]
add esp, 0x1c
push edx
call fcn.00413a10
mov ecx, eax
call fcn.00413a40
mov eax, dword [eax]
push 1
push 0
push eax
push str.iexplore.exe
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
lea ecx, [esp + 0x4c]
call fcn.00401640
jmp 0x423e2a
mov ecx, dword [esi + 0x435f4]
push 0x64
push str._6__RET_CODE_INTERNAL_ERROR__d
push ecx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0x10
lea edx, [esp + 0x50]
push 0x16
push edx
call fcn.00427880
mov ecx, eax
call fcn.004276a0
mov eax, dword [eax]
push 0
push 0
push eax
mov dword [esp + 0x68], 0xe
call fcn.00406520
add esp, 0xc
lea ecx, [esp + 0x50]
mov dword [esp + 0x5c], 0xffffffff
call fcn.00401640
jmp 0x423e2a
mov eax, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_WEB_LOGIN_FAILURE_
push eax
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
push 0
push str.http:__membership.x2game.com_login_login.asp
push 0x82
call fcn.00420900
mov ecx, eax
call fcn.00420c40
jmp 0x423e2a
mov ecx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_LAUNCHER_LOGIN_5_FAILURE_
push ecx
jmp 0x423d23
mov edx, dword [esi + 0x435f4]
push str._6__RecvLoginAccept_RET_CODE_BLOCK_AVATOR_BY_UILOCK_
push edx
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0xc
add edi, 0x12
push edi
push str.http:__rfonline.x2game.com_security_ui_lock_info.asp
push 0x83
call fcn.00420900
mov ecx, eax
call fcn.00420c40
jmp 0x423e2a
push eax
mov eax, dword [esi + 0x435f4]
push str._6__Unknown_Err__d
push eax
call fcn.00427200
push eax
call fcn.00426f60
add esp, 0x10
call fcn.0045f338
xor ecx, ecx
test eax, eax
setne cl
test ecx, ecx
jne 0x423dca
push 0x80004005
call fcn.00401090
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0xc]
call eax
add eax, 0x10
mov dword [esp + 0x68], eax
movzx ecx, byte [edi]
push ecx
lea edx, [esp + 0x6c]
push str._6__Unknown_Err_:__d
push edx
mov dword [esp + 0x68], 0xf
call fcn.00401990
mov edi, dword [esp + 0x74]
push 0
push 0
push edi
call fcn.00406520
lea eax, [edi - 0x10]
add esp, 0x18
mov dword [esp + 0x5c], 0xffffffff
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x423e2a
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
push 0
push 0
push 0
mov ecx, esi
call fcn.00456da0
call fcn.00420900
mov ecx, eax
call fcn.00420890
push 2
call fcn.00421b80
mov ecx, eax
call fcn.00421290
mov al, 1
mov ecx, dword [esp + 0x54]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
add esp, 0x50
ret 8