Function at 0x427670
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x435cf3
mov eax, dword fs:[0]
push eax
sub esp, 0x34c
mov eax, dword [0x4420a0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [ebp + 8]
mov dword [ebp - 0x354], 0
mov dword [ebp - 0x358], esi
mov dword [ebp - 0x33c], 0xf
mov dword [ebp - 0x340], 0
mov byte [ebp - 0x350], 0
push 0x1f3
lea eax, [ebp - 0x307]
mov dword [ebp - 4], 1
push 0
push eax
mov byte [ebp - 0x308], 0
call sub.MSVCR120.dll_memset
add esp, 0xc
lea eax, [ebp - 0x308]
push 0x1f4
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
cmp eax, 0x1f4
jae 0x42781c
mov byte [ebp + eax - 0x308], 0
cmp eax, 4
jbe 0x42774c
cmp byte [ebp + eax - 0x30c], 0x2e
jne 0x42774c
add eax, 0xffffffee
cmp eax, 0x1f4
jae 0x42781c
mov byte [ebp + eax - 0x308], 0
lea ecx, [ebp - 0x350]
lea eax, [ebp - 0x308]
push eax
call fcn.004044c0
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x350]
mov dword [ebp - 0x30c], 0xf
push eax
lea ecx, [ebp - 0x320]
mov dword [ebp - 0x310], 0
mov byte [ebp - 0x320], 0
call fcn.004064f0
push 9
push str.local.ini
lea ecx, [ebp - 0x320]
mov byte [ebp - 4], 2
call fcn.004063e0
push 0x103
lea eax, [ebp - 0x113]
mov byte [ebp - 0x114], 0
push 0
push eax
call sub.MSVCR120.dll_memset
add esp, 0xc
lea eax, [ebp - 0x320]
cmp dword [ebp - 0x30c], 0x10
cmovae eax, dword [ebp - 0x320]
push eax
push 0x104
lea eax, [ebp - 0x114]
push eax
push 0x4398a4
push 0x4398a8
push 0x4398ac
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 5
mov dword [esi + 0x14], 0xf
mov ecx, esi
mov dword [esi + 0x10], 0
push str.did
mov byte [esi], 0
call fcn.00406720
cmp byte [ebp - 0x114], 0
mov dword [ebp - 0x354], 1
jne 0x427821
xor ecx, ecx
jmp 0x427839
call fcn.00430fbe
lea ecx, [ebp - 0x114]
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x427830
sub ecx, edx
push ecx
lea eax, [ebp - 0x114]
mov ecx, esi
push eax
call fcn.004063e0
push 0xa
push str.username
mov ecx, esi
call fcn.004063e0
push 7
push str.from2
mov ecx, esi
call fcn.004063e0
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x350]
mov dword [ebp - 0x324], 0xf
push eax
lea ecx, [ebp - 0x338]
mov dword [ebp - 0x328], 0
mov byte [ebp - 0x338], 0
call fcn.004064f0
push 0xb
push str.channel.ini
lea ecx, [ebp - 0x338]
mov byte [ebp - 4], 3
call fcn.004063e0
push 0x104
lea eax, [ebp - 0x114]
push 0
push eax
call sub.MSVCR120.dll_memset
add esp, 0xc
lea eax, [ebp - 0x338]
cmp dword [ebp - 0x324], 0x10
cmovae eax, dword [ebp - 0x338]
push eax
push 0x104
lea eax, [ebp - 0x114]
push eax
push 0x43778c
push str.number
push 0x4398e0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 9
push str.channel
mov ecx, esi
call fcn.004063e0
cmp byte [ebp - 0x114], 0
jne 0x427912
xor ecx, ecx
jmp 0x427929
lea ecx, [ebp - 0x114]
lea edx, [ecx + 1]
jmp 0x427920
mov al, byte [ecx]
inc ecx
test al, al
jne 0x427920
sub ecx, edx
push ecx
lea eax, [ebp - 0x114]
mov ecx, esi
push eax
call fcn.004063e0
cmp dword [ebp - 0x324], 0x10
jb 0x42794f
push dword [ebp - 0x338]
call sub.MSVCR120.dll_void___cdecl_operator_delete_void__
add esp, 4
cmp dword [ebp - 0x30c], 0x10
mov dword [ebp - 0x324], 0xf
mov dword [ebp - 0x328], 0
mov byte [ebp - 0x338], 0
jb 0x427981
push dword [ebp - 0x320]
call sub.MSVCR120.dll_void___cdecl_operator_delete_void__
add esp, 4
cmp dword [ebp - 0x33c], 0x10
mov dword [ebp - 0x30c], 0xf
mov dword [ebp - 0x310], 0
mov byte [ebp - 0x320], 0
jb 0x4279b3
push dword [ebp - 0x350]
call sub.MSVCR120.dll_void___cdecl_operator_delete_void__
add esp, 4
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004308d0
mov esp, ebp
pop ebp
ret