Function at 0x447d10
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c8046
mov eax, dword fs:[0]
push eax
sub esp, 0x44c
mov eax, dword [0x500770]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [edi + 0x1d0c]
lea esi, [ebp - 0x428]
mov dword [ebp - 0x424], edi
call fcn.004449e0
xor esi, esi
mov dword [ebp - 4], esi
call dword [0x501c04]
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x42c], esi
mov eax, dword [ebp - 0x42c]
push eax
lea ecx, [ebp - 0x420]
push str.ACCOUNT_.2d
push ecx
call fcn.004a7803
mov ebx, dword [ebp - 0x428]
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
add esp, 0xc
push ebx
push 0x208
lea edx, [ebp - 0x218]
push edx
push 0x4d96f4
push str.bValid
lea eax, [ebp - 0x420]
push eax
call esi
lea ecx, [ebp - 0x218]
push ecx
call fcn.004a7a1f
add esp, 4
test eax, eax
je 0x448072
push ebx
push 0x208
lea edx, [ebp - 0x218]
push edx
push 0x4d97fc
push str.szUID
lea eax, [ebp - 0x420]
push eax
call esi
mov esi, dword [edi + 0x1d00]
cmp esi, dword [edi + 0x1d04]
jbe 0x447dff
call fcn.004a79fe
mov dword [ebp - 0x430], esi
jmp 0x447e10
mov esi, dword [edi + 0x1d04]
cmp dword [edi + 0x1d00], esi
lea ebx, [edi + 0x1cfc]
jbe 0x447e29
call fcn.004a79fe
cmp ebx, ebx
je 0x447e32
call fcn.004a79fe
cmp dword [ebp - 0x430], esi
je 0x448054
lea ecx, [ebp - 0x218]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
cmp eax, 0x3fffffff
jg 0x447e90
lea edi, [eax + eax]
mov eax, edi
call fcn.004aedf0
mov esi, esp
test esi, esi
je 0x447e90
mov eax, dword [ebp - 0x438]
push 0
push 0
push edi
push esi
push 0xffffffffffffffff
lea edx, [ebp - 0x218]
push edx
push 0
push eax
mov byte [esi], 0
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
neg eax
sbb eax, eax
and eax, esi
mov edi, eax
jmp 0x447e92
xor edi, edi
mov esi, dword [ebp - 0x430]
cmp esi, dword [ebx + 8]
jb 0x447ea2
call fcn.004a79fe
lea ecx, [esi + 0x151]
mov eax, ecx
mov dword [ebp - 0x43c], 0xf
mov dword [ebp - 0x440], 0
mov byte [ebp - 0x450], 0
lea esi, [eax + 1]
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x447ec8
sub eax, esi
push eax
push ecx
lea ecx, [ebp - 0x454]
call fcn.00406990
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x447ee5
mov ebx, dword [ebp - 0x440]
sub eax, edx
mov esi, eax
cmp ebx, esi
mov eax, ebx
jb 0x447f00
mov eax, esi
cmp dword [ebp - 0x43c], 0x10
mov edx, dword [ebp - 0x450]
jae 0x447f15
lea edx, [ebp - 0x450]
mov ecx, edi
call fcn.0040c5c0
test eax, eax
jne 0x447f32
cmp ebx, esi
jae 0x447f29
or eax, 0xffffffff
jmp 0x447f30
xor eax, eax
cmp ebx, esi
setne al
test eax, eax
sete bl
mov byte [ebp - 4], 0
cmp dword [ebp - 0x43c], 0x10
jb 0x447f51
mov ecx, dword [ebp - 0x450]
push ecx
call fcn.00488fd0
add esp, 4
test bl, bl
mov dword [ebp - 0x43c], 0xf
mov dword [ebp - 0x440], 0
mov byte [ebp - 0x450], 0
jne 0x447fa0
mov eax, dword [ebp - 0x424]
mov edx, dword [ebp - 0x430]
add eax, 0x1cfc
cmp edx, dword [eax + 8]
jb 0x447f8b
call fcn.004a79fe
add dword [ebp - 0x430], 0x211
mov edi, dword [ebp - 0x424]
jmp 0x447e10
mov eax, dword [ebp - 0x428]
push eax
push 0x208
lea ecx, [ebp - 0x218]
push ecx
push str.phddns60.oray.net
push str.szHost
lea edx, [ebp - 0x420]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
add eax, 1
cmp eax, 0x3fffffff
jg 0x44801a
lea edi, [eax + eax]
mov eax, edi
call fcn.004aedf0
mov esi, esp
test esi, esi
je 0x44801a
mov edx, dword [ebp - 0x438]
push 0
push 0
push edi
push esi
push 0xffffffffffffffff
lea ecx, [ebp - 0x218]
push ecx
push 0
push edx
mov byte [esi], 0
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
neg eax
sbb eax, eax
and eax, esi
jmp 0x44801c
xor eax, eax
mov edi, dword [ebp - 0x430]
mov esi, eax
mov eax, dword [ebp - 0x424]
add eax, 0x1cfc
cmp edi, dword [eax + 8]
jb 0x448039
call fcn.004a79fe
lea ecx, [edi + 0xb1]
nop
mov al, byte [esi]
mov byte [ecx], al
add esi, 1
add ecx, 1
test al, al
jne 0x448040
mov edi, dword [ebp - 0x424]
mov eax, dword [ebp - 0x42c]
add eax, 1
cmp eax, 5
mov dword [ebp - 0x42c], eax
jl 0x447d6e
mov ebx, dword [ebp - 0x428]
add edi, 0x21c
push edi
call fcn.0043dd00
lea eax, [ebx - 0x10]
mov dword [ebp - 4], 0xffffffff
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x4480a1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
lea esp, [ebp - 0x468]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004a74b2
mov esp, ebp
pop ebp
ret