Function at 0x477070
Capabilities:
Read .ini file

Disassembly:
push 0xffffffffffffffff
push 0x5e9bff
mov eax, dword fs:[0]
push eax
sub esp, 0x5fc
mov eax, dword [0x704dd8]
xor eax, esp
mov dword [esp + 0x5f8], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x704dd8]
xor eax, esp
push eax
lea eax, [esp + 0x610]
mov dword fs:[0], eax
push 0x50
mov edi, ecx
call fcn.004ca5aa
add esp, 4
mov dword [esp + 0x18], eax
xor ebx, ebx
mov dword [esp + 0x618], ebx
cmp eax, ebx
je 0x4770d7
mov ecx, eax
call fcn.004aef40
mov ebp, eax
mov dword [esp + 0x18], ebp
jmp 0x4770dd
mov dword [esp + 0x18], ebx
mov ebp, ebx
mov dword [esp + 0x618], 0xffffffff
call fcn.00409730
mov ecx, eax
call fcn.004a3a20
push 0x103
mov esi, eax
lea eax, [esp + 0x409]
push ebx
push eax
mov byte [esp + 0x410], bl
call fcn.004e9ba0
lea ecx, [esp + 0x410]
push ecx
push esi
call fcn.004a60f0
push 0x103
lea edx, [esp + 0x521]
push ebx
push edx
mov byte [esp + 0x528], bl
call fcn.004e9ba0
lea eax, [esp + 0x424]
add esp, 0x20
dec eax
mov cl, byte [eax + 1]
inc eax
cmp cl, bl
jne 0x477143
mov ecx, dword [str.TestData.ini]
mov edx, dword [0x601d44]
mov dword [eax], ecx
mov ecx, dword [0x601d48]
mov dword [eax + 4], edx
mov dl, byte [0x601d4c]
mov dword [eax + 8], ecx
mov byte [eax + 0xc], dl
lea eax, [esp + 0x404]
push eax
push 0x104
lea ecx, [esp + 0x510]
push ecx
push str.www.rmrili.com
push str.UserDomainUrl
push str.DomainURL
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 7
push 0x601d0c
lea ecx, [esp + 0x12c]
mov dword [esp + 0x144], 0xf
mov dword [esp + 0x140], ebx
mov byte [esp + 0x130], bl
call fcn.00401a20
lea eax, [esp + 0x508]
mov dword [esp + 0x618], 1
lea ecx, [eax + 1]
lea esp, [esp]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x4771e0
sub eax, ecx
push eax
lea edx, [esp + 0x50c]
push edx
lea ecx, [esp + 0x12c]
call fcn.0041ca40
push 1
push 0x601d08
lea ecx, [esp + 0x12c]
call fcn.0041ca40
push 0x10
push str.checkaccount_has
lea ecx, [esp + 0x12c]
call fcn.0041ca40
call fcn.00409730
mov ecx, eax
call fcn.004a3a70
push 0x63
mov esi, eax
lea eax, [esp + 0x2dd]
push ebx
push eax
mov byte [esp + 0x2e4], bl
call fcn.004e9ba0
add esp, 0xc
lea ecx, [esp + 0xec]
call fcn.0041e5c0
push 0xc6
lea edx, [esp + 0x342]
xor ecx, ecx
push ebx
push edx
mov byte [esp + 0x624], 2
mov word [esp + 0x348], cx
call fcn.004e9ba0
add esp, 0xc
push esi
push 0x64
lea eax, [esp + 0x344]
push eax
push 0x5ff1a4
push str.Account
push str.UserLogin
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
push 7
push str.account
lea ecx, [esp + 0xf4]
call fcn.00401a20
push 0xffffffffffffffff
push 0x5fd0cc
lea ecx, [esp + 0x1cc]
call dword [sym.imp.DuiLib32.dll_public:_void___thiscall_DuiLib::CDuiString::constructor_wchar_t_const___int_]
mov ecx, dword [edi + 0x454]
mov eax, dword [ecx + 0x8266c]
mov byte [esp + 0x618], 3
cmp eax, ebx
je 0x477329
cmp dword [eax + 0x6c4], ebx
je 0x477329
mov edx, ecx
mov eax, dword [edx + 0x8266c]
mov ecx, dword [eax + 0x6c4]
mov edx, dword [ecx]
mov edx, dword [edx + 0x28]
lea eax, [esp + 0x4c]
push eax
call edx
push eax
lea ecx, [esp + 0x1c8]
mov byte [esp + 0x61c], 4
call dword [sym.imp.DuiLib32.dll_public:_class_DuiLib::CDuiString_const____thiscall_DuiLib::CDuiString::operator_class_DuiLib::CDuiString_const__]
lea ecx, [esp + 0x4c]
mov byte [esp + 0x618], 3
call dword [sym.imp.DuiLib32.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_]
lea eax, [esp + 0x2d8]
push eax
lea ecx, [esp + 0x340]
push ecx
call fcn.004a6170
lea eax, [esp + 0x2e0]
add esp, 8
lea edx, [eax + 1]
jmp 0x477350
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x477350
sub eax, edx
push eax
lea edx, [esp + 0x2dc]
push edx
lea ecx, [esp + 0x110]
call fcn.00401a20
lea eax, [esp + 0xec]
push eax
mov ecx, ebp
call fcn.004af730
mov ecx, dword [edi + 0x31c]
mov edx, dword [ecx]
mov edx, dword [edx + 0x28]
lea eax, [esp + 0x140]
push eax
call edx
push 3
push 0x60bd90
lea ecx, [esp + 0xf4]
mov byte [esp + 0x620], 5
call fcn.00401a20
lea eax, [esp + 0x2d8]
push eax
lea ecx, [esp + 0x144]
call dword [sym.imp.DuiLib32.dll_public:_wchar_t_const____thiscall_DuiLib::CDuiString::GetData_void_const]
push eax
call fcn.004a6170
lea eax, [esp + 0x2e0]
add esp, 8
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4773d5
sub eax, edx
push eax
lea ecx, [esp + 0x2dc]
push ecx
lea ecx, [esp + 0x110]
call fcn.00401a20
lea edx, [esp + 0xec]
push edx
mov ecx, ebp
call fcn.004af730
cmp dword [esp + 0x13c], 0x10
mov eax, dword [esp + 0x128]
jae 0x47741a
lea eax, [esp + 0x128]
push eax
mov ecx, ebp
call fcn.004af020
mov ecx, ebp
call fcn.004adfb0
mov esi, eax
mov edi, dword [esi + 0x1c]
sub edi, dword [esi + 0x18]
jne 0x477438
mov edi, 1
push edi
call fcn.004ca5e4
push edi
mov ebp, eax
push ebx
push ebp
call fcn.004e9ba0
mov eax, dword [esi + 0x1c]
add esp, 0x10
xor edi, edi
sub eax, dword [esi + 0x18]
je 0x477472
cmp edi, eax
jb 0x47745e
call fcn.004ea132
mov eax, dword [esi + 0x18]
mov cl, byte [edi + eax]
mov byte [edi + ebp], cl
mov eax, dword [esi + 0x1c]
sub eax, dword [esi + 0x18]
inc edi
cmp edi, eax
jb 0x47745e
mov ecx, dword [esp + 0x18]
cmp ecx, ebx
je 0x477482
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
push ebp
call fcn.004a6b80
add esp, 4
lea ecx, [esp + 0x1c]
mov esi, eax
call fcn.004af740
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x24c]
call fcn.004b13e0
push ebx
lea ecx, [esp + 0x24]
mov byte [esp + 0x61c], 6
call fcn.004b3d20
mov eax, esi
mov byte [esp + 0x618], 7
mov dword [esp + 0x48], 0xf
mov dword [esp + 0x44], ebx
mov byte [esp + 0x34], bl
lea edi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4774d6
sub eax, edi
push eax
push esi
lea ecx, [esp + 0x38]
call fcn.00401a20
push 1
lea edx, [esp + 0x24]
push edx
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x254]
mov byte [esp + 0x624], 8
call fcn.004b2c30
mov edi, 0x10
mov byte [esp + 0x17], al
mov byte [esp + 0x618], 7
cmp dword [esp + 0x48], edi
jb 0x47752e
mov ecx, dword [esp + 0x34]
push ecx
call fcn.004ca5d9
add esp, 4
cmp byte [esp + 0x17], bl
jne 0x477605
cmp ebp, ebx
je 0x477545
push ebp
call fcn.004ca5d9
add esp, 4
lea ecx, [esp + 0x20]
mov byte [esp + 0x618], 6
call fcn.004b3e50
lea ecx, [esp + 0x248]
call fcn.00421bc0
mov esi, dword [sym.imp.DuiLib32.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_]
lea ecx, [esp + 0x140]
mov byte [esp + 0x618], 3
call esi
lea ecx, [esp + 0x1c4]
mov byte [esp + 0x618], 2
call esi
cmp dword [esp + 0x120], edi
jb 0x4775a3
mov edx, dword [esp + 0x10c]
push edx
call fcn.004ca5d9
add esp, 4
mov esi, 0xf
mov dword [esp + 0x120], esi
mov dword [esp + 0x11c], ebx
mov byte [esp + 0x10c], bl
cmp dword [esp + 0x104], edi
jb 0x4775d6
mov eax, dword [esp + 0xf0]
push eax
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x104], esi
mov dword [esp + 0x100], ebx
mov byte [esp + 0xf0], bl
cmp dword [esp + 0x13c], edi
jb 0x477904
mov ecx, dword [esp + 0x128]
push ecx
jmp 0x4778fc
push ebx
push 0x6015b5
lea ecx, [esp + 0xd8]
mov dword [esp + 0xf0], 0xf
mov dword [esp + 0xec], ebx
mov byte [esp + 0xdc], bl
call fcn.00401a20
push str.status
lea ecx, [esp + 0x24]
mov byte [esp + 0x61c], 9
call fcn.004b4da0
mov ecx, eax
call fcn.004b2df0
test al, al
jne 0x4776af
push str.status
lea ecx, [esp + 0x24]
call fcn.004b4da0
mov ecx, eax
call fcn.004b2e10
test al, al
je 0x4776af
lea edx, [esp + 0x30]
push edx
push str.status
lea ecx, [esp + 0x28]
call fcn.004b4da0
mov ecx, eax
call fcn.004b33f0
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0xdc]
mov byte [esp + 0x624], 0xa
call fcn.004017a0
cmp dword [esp + 0x48], edi
jb 0x4776af
mov eax, dword [esp + 0x34]
push eax
call fcn.004ca5d9
add esp, 4
mov esi, dword [esp + 0xe4]
mov ecx, esi
cmp esi, 4
jb 0x4776c2
mov ecx, 4
mov eax, dword [esp + 0xd4]
cmp dword [esp + 0xe8], edi
jae 0x4776d9
lea eax, [esp + 0xd4]
push ecx
push 0x601cd8
push eax
call fcn.0041aba0
add esp, 0xc
cmp eax, ebx
jne 0x47780a
cmp esi, 4
jb 0x47780a
xor eax, eax
cmp esi, 4
setne al
cmp eax, ebx
jne 0x47780a
cmp ebp, ebx
je 0x477716
push ebp
call fcn.004ca5d9
add esp, 4
cmp dword [esp + 0xe8], edi
jb 0x47772f
mov ecx, dword [esp + 0xd4]
push ecx
call fcn.004ca5d9
add esp, 4
mov ebp, 0xf
lea ecx, [esp + 0x20]
mov dword [esp + 0xe8], ebp
mov dword [esp + 0xe4], ebx
mov byte [esp + 0xd4], bl
mov byte [esp + 0x618], 6
call fcn.004b3e50
lea ecx, [esp + 0x248]
call fcn.00421bc0
mov esi, dword [sym.imp.DuiLib32.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_]
lea ecx, [esp + 0x140]
mov byte [esp + 0x618], 3
call esi
lea ecx, [esp + 0x1c4]
mov byte [esp + 0x618], 2
call esi
cmp dword [esp + 0x120], edi
jb 0x4777a7
mov edx, dword [esp + 0x10c]
push edx
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x120], ebp
mov dword [esp + 0x11c], ebx
mov byte [esp + 0x10c], bl
cmp dword [esp + 0x104], edi
jb 0x4777d5
mov eax, dword [esp + 0xf0]
push eax
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x104], ebp
mov dword [esp + 0x100], ebx
mov byte [esp + 0xf0], bl
cmp dword [esp + 0x13c], edi
jb 0x477803
mov ecx, dword [esp + 0x128]
push ecx
call fcn.004ca5d9
add esp, 4
mov al, 1
jmp 0x477906
cmp ebp, ebx
je 0x477817
push ebp
call fcn.004ca5d9
add esp, 4
cmp dword [esp + 0xe8], edi
jb 0x477830
mov edx, dword [esp + 0xd4]
push edx
call fcn.004ca5d9
add esp, 4
mov ebp, 0xf
lea ecx, [esp + 0x20]
mov dword [esp + 0xe8], ebp
mov dword [esp + 0xe4], ebx
mov byte [esp + 0xd4], bl
mov byte [esp + 0x618], 6
call fcn.004b3e50
lea ecx, [esp + 0x248]
call fcn.00421bc0
mov esi, dword [sym.imp.DuiLib32.dll_public:_void___thiscall_DuiLib::CDuiString::destructor_void_]
lea ecx, [esp + 0x140]
mov byte [esp + 0x618], 3
call esi
lea ecx, [esp + 0x1c4]
mov byte [esp + 0x618], 2
call esi
cmp dword [esp + 0x120], edi
jb 0x4778a8
mov eax, dword [esp + 0x10c]
push eax
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x120], ebp
mov dword [esp + 0x11c], ebx
mov byte [esp + 0x10c], bl
cmp dword [esp + 0x104], edi
jb 0x4778d6
mov ecx, dword [esp + 0xf0]
push ecx
call fcn.004ca5d9
add esp, 4
mov dword [esp + 0x104], ebp
mov dword [esp + 0x100], ebx
mov byte [esp + 0xf0], bl
cmp dword [esp + 0x13c], edi
jb 0x477904
mov edx, dword [esp + 0x128]
push edx
call fcn.004ca5d9
add esp, 4
xor al, al
mov ecx, dword [esp + 0x610]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x5f8]
xor ecx, esp
call fcn.004e8c89
add esp, 0x608
ret