Function at 0x42aaf7
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x61d0
call fcn.00612c90
mov eax, dword [0x6ffe74]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
mov ebx, dword [ebp + 8]
xor eax, eax
push esi
push edi
mov esi, 0x3e7
mov dword [ebp - 0x61c8], eax
push esi
push eax
mov byte [ebp - 0x7ec], al
lea eax, [ebp - 0x7eb]
push eax
mov dword [ebp - 0x61cc], ecx
call fcn.006390b0
add esp, 0xc
mov byte [ebp - 0x404], 0
lea eax, [ebp - 0x403]
push esi
push 0
push eax
call fcn.006390b0
mov esi, str.XfireUser.ini
lea edi, [ebp - 0x18]
add esp, 0xc
movsd dword es:[edi], dword [esi]
push ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
call fcn.00643470
pop ecx
cmp eax, 1
jae 0x42abae
lea eax, [ebp - 0x404]
push eax
xor eax, eax
push eax
push eax
push 0x1a
push eax
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
test eax, eax
jns 0x42aba1
call dword [sym.imp.KERNEL32.dll_GetLastError]
xor eax, eax
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.006122f0
leave
ret 4
mov eax, str._sXfire_s
lea ebx, [ebp - 0x404]
jmp 0x42abb3
mov eax, 0x6c643c
lea ecx, [ebp - 0x18]
push ecx
push ebx
push eax
lea eax, [ebp - 0x7ec]
push 0x3e8
push eax
call fcn.00402e0a
add esp, 0x14
lea eax, [ebp - 0x7ec]
push 0x6c63d0
push eax
lea eax, [ebp - 0x61c8]
push eax
call fcn.00649a00
add esp, 0xc
test eax, eax
jne 0x42ab8e
cmp dword [ebp - 0x61c8], eax
je 0x42ab8e
push dword [ebp - 0x61c8]
mov edi, 0x2710
lea eax, [ebp - 0x3ab4]
push edi
push eax
call fcn.006494dd
add esp, 0xc
test eax, eax
je 0x42ad5e
mov esi, dword [ebp - 0x61cc]
mov ebx, 0x6c5bb9
lea eax, [ebp - 0x3ab4]
push eax
call fcn.00643470
pop ecx
test eax, eax
je 0x42ac51
lea eax, [ebp - 0x3ab4]
push eax
call fcn.00643470
dec eax
pop ecx
cmp eax, edi
jae 0x42ad72
mov byte [ebp + eax - 0x3ab4], 0
lea eax, [ebp - 0x3ab4]
push eax
lea eax, [ebp - 0x61c4]
push edi
push eax
call fcn.006494f3
add esp, 0xc
lea eax, [ebp - 0x61c4]
push edi
push eax
call fcn.0064ffd4
lea eax, [ebp - 0x61c4]
push str.encrypteduser
push eax
call fcn.00639500
add esp, 0x10
test eax, eax
je 0x42acb6
lea eax, [ebp - 0x3ab4]
push 0x3d
push eax
call fcn.006393d0
pop ecx
pop ecx
test eax, eax
je 0x42acb6
push ecx
lea ecx, [eax + 1]
lea edx, [ebp - 0x13a4]
call fcn.0042a8f2
pop ecx
jmp 0x42ad40
lea eax, [ebp - 0x61c4]
push 0x6cb3fc
push eax
call fcn.00639500
pop ecx
pop ecx
test eax, eax
je 0x42ad40
lea eax, [ebp - 0x3ab4]
push 0x3d
push eax
call fcn.006393d0
pop ecx
pop ecx
test eax, eax
je 0x42ad40
push ecx
lea ecx, [eax + 1]
lea edx, [ebp - 0xbd4]
call fcn.0042a8f2
pop ecx
lea eax, [ebp - 0xbd4]
push eax
call fcn.00643470
pop ecx
test eax, eax
je 0x42ad40
lea eax, [ebp - 0xbd4]
push eax
push str._SHA1_Hash___s
lea eax, [ebp - 0xfbc]
push 0x3e8
push eax
call fcn.00402e0a
add esp, 0x10
lea eax, [ebp - 0xfbc]
mov ecx, esi
push 0xffffffffffffffff
push ebx
push eax
lea eax, [ebp - 0x13a4]
push eax
push ebx
push ebx
push 0x79
push 3
call fcn.0043ee6b
push dword [ebp - 0x61c8]
lea eax, [ebp - 0x3ab4]
push edi
push eax
call fcn.006494dd
add esp, 0xc
test eax, eax
jne 0x42ac22
push dword [ebp - 0x61c8]
call fcn.00649273
xor eax, eax
pop ecx
inc eax
jmp 0x42ab90
call fcn.00612782
int3