Function at 0x65123dd0
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6514ec22
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
push ebx
push esi
push edi
mov eax, dword [0x6516c6d0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [edi]
mov edx, dword [eax + 0x1c]
lea ecx, [ebp - 0x24]
push ecx
xor esi, esi
push edi
mov dword [ebp - 0x24], esi
call edx
mov eax, dword [sym.imp.MSVCR80.dll___argc]
cmp dword [eax], esi
mov dword [ebp - 0x18], esi
jle 0x65123e70
mov ebx, dword [sym.imp.Common.dll_public:_void___thiscall_CTXStringW::constructor_wchar_t__]
lea ecx, [ecx]
mov ecx, dword [sym.imp.MSVCR80.dll___wargv]
mov edx, dword [ecx]
mov eax, dword [edx + esi*4]
push eax
lea ecx, [ebp - 0x14]
call ebx
push 0
push str._MLogin:
lea ecx, [ebp - 0x14]
call dword [sym.imp.Common.dll_public:_int___thiscall_CTXStringW::Find_wchar_t_const___int_const]
or ecx, 0xffffffff
mov dword [ebp - 4], ecx
cmp eax, ecx
lea ecx, [ebp - 0x14]
jne 0x65123e63
call dword [sym.imp.Common.dll_public:_void___thiscall_CTXStringW::destructor_void_]
mov ecx, dword [sym.imp.MSVCR80.dll___argc]
add esi, 1
cmp esi, dword [ecx]
jl 0x65123e20
jmp 0x65123e70
mov dword [ebp - 0x18], 1
call dword [sym.imp.Common.dll_public:_void___thiscall_CTXStringW::destructor_void_]
cmp dword [ebp - 0x24], 0
je 0x65123eaf
cmp dword [ebp - 0x18], 0
jne 0x65123eaf
mov eax, dword [edi + 0x780]
test eax, eax
je 0x65123e93
mov edx, dword [eax]
push 0
push eax
mov eax, dword [edx + 0x8c]
call eax
mov ecx, dword [edi]
mov edx, dword [ecx + 0x18]
push edi
call edx
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [edi + 0x77c]
lea ebx, [edi + 0x77c]
call dword [sym.imp.Common.dll_unsigned_long_int___cdecl_NLS::GetLCID_void_]
cmp eax, 0x804
jne 0x65123ed0
push ebx
mov ecx, edi
call fcn.65120c60
cmp esi, dword [ebx]
je 0x65124248
mov eax, dword [edi + 0x780]
xor esi, esi
cmp eax, esi
je 0x65123ef0
mov ecx, dword [eax]
mov edx, dword [ecx + 0x8c]
push esi
push eax
call edx
push 0x65154128
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x28], esi
call dword [sym.imp.Common.dll_public:_void___thiscall_CTXBSTR::constructor_wchar_t_const__]
mov dword [ebp - 4], 1
mov dword [ebp - 0x10], esi
mov eax, dword [ebx]
cmp eax, esi
mov byte [ebp - 4], 2
jne 0x65124047
push 0
lea ecx, [ebp - 0x20]
lea esi, [edi + 0x2c]
call dword [sym.imp.Common.dll_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const]
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x10]
push ecx
mov ecx, esi
call fcn.65115500
mov ecx, dword [ebp - 0x10]
xor eax, eax
test ecx, ecx
mov dword [ebp - 0x1c], eax
je 0x65123f56
mov edx, dword [ecx]
lea eax, [ebp - 0x1c]
push eax
push 0x65156638
push ecx
mov ecx, dword [edx]
call ecx
mov eax, dword [ebp - 0x1c]
cmp dword [edi + 0x780], eax
lea ecx, [edi + 0x780]
je 0x65123f6c
push eax
push ecx
call dword [sym.imp.ATL80.DLL_Ordinal_30]
mov dword [ebp - 0x18], 0
lea edx, [ebp - 0x18]
mov bl, 4
push edx
lea ecx, [edi + 0x3d4]
mov byte [ebp - 4], bl
call fcn.65111630
mov eax, dword [ebp - 0x18]
push eax
mov ecx, esi
call fcn.65111660
mov ecx, dword [edi + 0x780]
xor eax, eax
test ecx, ecx
mov dword [ebp - 0x14], eax
je 0x65123fb4
mov edx, dword [ecx]
lea eax, [ebp - 0x14]
push eax
push 0x65154c4c
push ecx
mov ecx, dword [edx]
call ecx
mov eax, dword [ebp - 0x14]
test eax, eax
mov byte [ebp - 4], 5
je 0x65123fd0
mov ecx, dword [edi + 0xae8]
mov edx, dword [eax]
push ecx
push 6
push eax
mov eax, dword [edx + 0x1c]
call eax
mov eax, dword [ebp - 0x14]
test eax, eax
mov byte [ebp - 4], bl
je 0x65123fdf
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov ecx, dword [edi + 0x780]
xor eax, eax
test ecx, ecx
mov dword [ebp - 0x14], eax
je 0x65124001
mov eax, dword [ecx]
mov eax, dword [eax]
lea edx, [ebp - 0x14]
push edx
push 0x65154c4c
push ecx
call eax
mov eax, dword [ebp - 0x14]
test eax, eax
mov byte [ebp - 4], 6
je 0x6512401d
mov ecx, dword [edi + 0xae8]
mov edx, dword [eax]
push ecx
push 7
push eax
mov eax, dword [edx + 0x1c]
call eax
mov eax, dword [ebp - 0x14]
test eax, eax
mov byte [ebp - 4], bl
je 0x6512402c
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x18]
test eax, eax
mov byte [ebp - 4], 3
je 0x6512403f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x1c]
jmp 0x651241bb
cmp eax, 1
jne 0x651241cb
push eax
lea ecx, [ebp - 0x20]
lea esi, [edi + 0x3d4]
call dword [sym.imp.Common.dll_public:_wchar_t____thiscall_CTXBSTR::operator_wchar_t__void_const]
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x10]
push ecx
mov ecx, esi
call fcn.65115500
mov ecx, dword [ebp - 0x10]
xor eax, eax
test ecx, ecx
mov dword [ebp - 0x14], eax
je 0x6512408f
mov edx, dword [ecx]
lea eax, [ebp - 0x14]
push eax
push 0x65156638
push ecx
mov ecx, dword [edx]
call ecx
mov eax, dword [ebp - 0x14]
cmp dword [edi + 0x780], eax
lea ebx, [edi + 0x780]
je 0x651240a5
push eax
push ebx
call dword [sym.imp.ATL80.DLL_Ordinal_30]
mov dword [ebp - 0x18], 0
lea edx, [ebp - 0x18]
push edx
lea ecx, [edi + 0x2c]
mov byte [ebp - 4], 8
call fcn.65111630
mov eax, dword [ebp - 0x18]
push eax
mov ecx, esi
call fcn.65111660
mov ecx, dword [ebx]
xor eax, eax
test ecx, ecx
mov dword [ebp - 0x1c], eax
je 0x651240e5
mov edx, dword [ecx]
lea eax, [ebp - 0x1c]
push eax
push 0x65154c4c
push ecx
mov ecx, dword [edx]
call ecx
mov eax, dword [ebp - 0x1c]
test eax, eax
mov byte [ebp - 4], 9
je 0x65124101
mov ecx, dword [edi + 0xae8]
mov edx, dword [eax]
push ecx
push 6
push eax
mov eax, dword [edx + 0x1c]
call eax
mov eax, dword [ebp - 0x1c]
test eax, eax
mov byte [ebp - 4], 8
je 0x65124111
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov ecx, dword [ebx]
xor eax, eax
test ecx, ecx
mov dword [ebp - 0x1c], eax
je 0x6512412f
mov eax, dword [ecx]
mov eax, dword [eax]
lea edx, [ebp - 0x1c]
push edx
push 0x65154c4c
push ecx
call eax
mov eax, dword [ebp - 0x1c]
test eax, eax
mov byte [ebp - 4], 0xa
je 0x6512414b
mov ecx, dword [edi + 0xae8]
mov edx, dword [eax]
push ecx
push 7
push eax
mov eax, dword [edx + 0x1c]
call eax
mov eax, dword [ebp - 0x1c]
test eax, eax
mov byte [ebp - 4], 8
je 0x6512415b
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov ecx, dword [ebx]
xor eax, eax
test ecx, ecx
mov dword [ebp - 0x1c], eax
je 0x65124179
mov eax, dword [ecx]
mov eax, dword [eax]
lea edx, [ebp - 0x1c]
push edx
push 0x65154c4c
push ecx
call eax
mov eax, dword [ebp - 0x1c]
test eax, eax
mov byte [ebp - 4], 0xb
je 0x65124195
mov ecx, dword [edi + 0xae8]
mov edx, dword [eax]
push ecx
push 9
push eax
mov eax, dword [edx + 0x1c]
call eax
mov eax, dword [ebp - 0x1c]
test eax, eax
mov byte [ebp - 4], 8
je 0x651241a5
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x18]
test eax, eax
mov byte [ebp - 4], 7
je 0x651241b8
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x14]
test eax, eax
mov byte [ebp - 4], 2
je 0x651241cb
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [edi + 0x780]
test eax, eax
je 0x6512420e
lea edx, [ebp - 0x1c]
mov dword [ebp - 0x1c], 0
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x438]
call eax
cmp dword [edi + 0x77c], 1
jne 0x65124201
mov ecx, dword [ebp - 0x1c]
push ecx
mov ecx, edi
call fcn.65120e50
jmp 0x6512420e
mov edx, dword [ebp - 0x1c]
push 0
push edx
mov ecx, edi
call fcn.65122e20
mov eax, dword [edi + 0x780]
test eax, eax
je 0x65124225
mov ecx, dword [eax]
mov edx, dword [ecx + 0x8c]
push 9
push eax
call edx
mov eax, dword [ebp - 0x10]
test eax, eax
mov byte [ebp - 4], 1
je 0x65124238
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea ecx, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
call dword [sym.imp.Common.dll_public:_void___thiscall_CTXBSTR::destructor_void_]
lea ecx, [edi + 0xad0]
call fcn.65136850
mov edi, dword [edi + 0x780]
test edi, edi
mov esi, eax
je 0x6512426c
mov eax, dword [edi]
mov ecx, dword [eax + 0x8c]
push 5
push edi
call ecx
push 0
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret