Function at 0x407470
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x44a320
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xfe0
mov eax, dword [0x45e640]
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov ecx, dword [0x45ccd4]
mov eax, 0x38e38e39
imul ecx
sar edx, 7
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, 0x4f576647
imul ecx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x81c], eax
mov edi, dword [0x45cccc]
mov eax, 0x4f576647
imul edi
mov eax, dword [ebp - 0x81c]
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45ccdc]
sub ecx, eax
imul edx, edx, 0x242
add ecx, edx
mov eax, edi
imul eax, eax, 0x203
add ecx, eax
mov ebx, dword [0x45cce8]
mov eax, 0x93459be7
imul ebx, ebx, 0x21e
imul edi
add edx, edi
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, 0x71625345
imul dword [0x45ccd4]
mov eax, dword [0x45cce4]
add ecx, ebx
imul eax, eax, 0xe1
sar edx, 8
mov dword [ebp - 0x818], ebx
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov edx, dword [0x45cce0]
imul edx, edx, 0x203
add ebx, edx
add ebx, eax
mov eax, 0xd20d20d3
imul edi
add edx, edi
mov edi, dword [ebp - 0x818]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add ebx, edx
add eax, ebx
add ecx, esi
sub eax, edi
sub eax, ecx
mov dword [str._r_____r____], ecx
lea ecx, [eax + esi + 0x16f]
mov eax, dword [ebp + 8]
test eax, eax
mov dword [0x45cccc], ecx
je 0x407aaf
lea edx, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4075a0
sub eax, edx
mov dword [ebp - 0x818], eax
je 0x407aaf
mov eax, dword [ebp + 0xc]
push str.C:_WINDoWS_system32driversetc_serViCe5.ini
push 0x800
lea edx, [ebp - 0x814]
push edx
push 0x44ce59
push eax
push 0x44d0f8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [0x45ccdc]
mov esi, dword [str._r_____r____]
mov ebx, dword [0x45ccd8]
mov eax, 0x38e38e39
imul ecx
lea edi, [ebx + esi]
imul edi, edi, 0x242
sar edx, 7
add edi, edx
mov eax, edx
shr eax, 0x1f
mov edx, ecx
imul edx, edx, 0x203
add eax, edi
add eax, edx
lea edx, [esi + esi*8]
shl edx, 6
add eax, edx
mov edi, eax
mov esi, dword [0x45cce0]
mov eax, 0xd20d20d3
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, eax
lea eax, [ebp - 0x814]
lea edi, [edi + esi - 0xe1]
lea edx, [eax + 1]
mov dword [0x45ccd4], edi
mov dword [ebp - 0x818], edx
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x407653
sub eax, dword [ebp - 0x818]
mov dword [ebp - 0x818], eax
je 0x407a48
mov edi, dword [0x45cccc]
imul esi, esi, 0x25d
imul ecx, ecx, 0xe1
mov eax, dword [0x45ccd0]
lea ebx, [eax + edi]
mov eax, 0x4f576647
imul ebx, ebx, 0x1bd
imul dword [0x45cce4]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add ebx, edx
add eax, ebx
add eax, esi
mov ebx, eax
mov eax, 0x38e38e39
imul dword [0x45cce4]
sar edx, 7
mov esi, edx
add ebx, edx
mov eax, 0x71625345
imul edi
sar edx, 8
mov eax, edx
shr esi, 0x1f
shr eax, 0x1f
add eax, edx
add esi, ebx
sub esi, eax
add esi, ecx
lea ecx, [ebp - 0x814]
push ecx
lea edx, [ebp - 0xfec]
push 0x1f4
push edx
mov dword [0x45ccdc], esi
call fcn.0040fc90
add esp, 0xc
mov edi, eax
xor esi, esi
cmp esi, edi
jge 0x407a36
mov eax, dword [0x45ccd4]
mov ecx, dword [0x45ccc8]
lea ebx, [ecx + eax]
mov ecx, dword [0x45cce4]
imul ebx, ebx, 0x9c
mov eax, 0x4f576647
imul ecx
mov ecx, dword [0x45ccd8]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x38e38e39
imul ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x93459be7
imul ecx
add edx, ecx
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ebx, ecx
mov ecx, dword [str._r_____r____]
lea edx, [ecx + ecx*8]
shl edx, 6
add ebx, edx
mov eax, 0x59493e15
imul ecx
mov ecx, dword [ebp + esi*4 - 0xfec]
sar edx, 7
mov eax, edx
add ebx, edx
mov edx, dword [ebp + 8]
shr eax, 0x1f
push ecx
add eax, ebx
push edx
mov dword [0x45cce4], eax
call fcn.00430750
add esp, 8
test eax, eax
je 0x407a30
mov ecx, dword [0x45ccd0]
mov eax, 0xd8a5df
imul ecx
sar edx, 1
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, 0x7f411e53
imul ecx
sar edx, 8
add esi, edx
mov edi, edx
mov eax, 0x71625345
imul dword [0x45cce4]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45ccc8]
imul edx, edx, 0xe1
shr edi, 0x1f
add edi, esi
sub edi, eax
add edi, edx
mov ebx, dword [0x45ccd4]
mov eax, 0x91a2b3c5
imul ecx
mov eax, dword [0x45cce0]
add edx, ecx
imul eax, eax, 0x61
sar edx, 7
add edi, edx
mov ecx, edx
shr ecx, 0x1f
add ecx, edi
add ecx, eax
mov eax, 0x38e38e39
imul ebx
sar edx, 7
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, 0x71625345
imul ebx
mov eax, dword [0x45cce4]
sar edx, 8
imul eax, eax, 0xe1
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov edx, dword [0x45cce0]
mov edi, dword [0x45cce8]
imul edx, edx, 0x203
add ebx, edx
imul edi, edi, 0x21e
mov edx, dword [0x45cccc]
add ebx, eax
mov eax, 0xd20d20d3
imul edx
add edx, dword [0x45cccc]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add ebx, edx
mov edx, dword [str._r_____r____]
add eax, ebx
sub eax, edi
sub eax, edx
lea edx, [eax + esi + 0x16f]
mov eax, dword [0x5606ec]
inc eax
cmp eax, 5
mov dword [0x45ccc8], ecx
mov dword [0x45cccc], edx
mov dword [0x5606ec], eax
jg 0x4079a5
cmp dword [ebp + 0x10], 1
jne 0x4079a5
mov ebx, dword [0x45ccd8]
imul ecx, ecx, 0x242
imul ebx, ebx, 0x33a
mov eax, 0x4f576647
imul dword [0x45ccdc]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
add ebx, ecx
mov eax, 0x59493e15
imul dword [0x45ccd0]
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ebx, ecx
mov ecx, dword [0x45ccd8]
mov eax, 0x91a2b3c5
imul ecx
add edx, ecx
mov ecx, dword [0x45cce4]
sar edx, 7
add ebx, edx
mov eax, edx
shr eax, 0x1f
add eax, ebx
sub eax, ecx
lea ecx, [eax + edi - 0xe1]
mov eax, 0x4f576647
imul dword [0x45ccd4]
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebx, eax
mov dword [0x45ccd0], ecx
mov ecx, dword [0x45cccc]
mov eax, 0x4f576647
imul ecx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ebx
mov ebx, eax
mov eax, dword [0x45ccdc]
imul eax, eax, 0x242
mov edx, ecx
imul edx, edx, 0x203
add ebx, eax
add ebx, edx
mov eax, 0x93459be7
imul ecx
add edx, ecx
sar edx, 8
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, dword [0x570ac8]
add ebx, edi
add ebx, esi
mov dword [str._r_____r____], ebx
mov ecx, dword [eax]
push eax
mov dword [ebp - 4], 0
call dword [ecx + 0x30]
mov ecx, dword [0x45ccc8]
mov esi, dword [0x45cce8]
lea edx, [ecx + ecx*8]
shl edx, 6
mov ecx, edx
mov eax, 0x38e38e39
imul dword [0x45ccd4]
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov edi, dword [0x45cce0]
mov eax, 0xf1d48bd
imul esi
sar edx, 5
add ecx, edx
mov ebx, edx
mov eax, 0x7f411e53
imul esi
imul esi, esi, 0xe1
shr ebx, 0x1f
add ebx, ecx
sar edx, 8
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, 0xd20d20d3
imul edi
add edx, edi
imul edi, edi, 0x9c
sub ebx, ecx
sar edx, 7
sub ebx, esi
mov eax, edx
shr eax, 0x1f
add ebx, edx
add eax, ebx
add eax, edi
mov dword [0x45ccd8], eax
mov eax, 1
jmp 0x407ab1
inc esi
jmp 0x4076f8
mov edi, dword [0x45ccd4]
mov ecx, dword [0x45ccdc]
mov ebx, dword [0x45ccd8]
mov esi, dword [0x45cce8]
imul ebx, ebx, 0x25d
imul edi, edi, 0x21e
mov edx, dword [0x45ccd0]
imul ecx, ecx, 0xe1
lea eax, [edx + esi]
imul eax, eax, 0x16f
add eax, ebx
sub eax, edi
mov dword [ebp + 8], eax
mov eax, 0x93459be7
imul esi
mov eax, dword [ebp + 8]
add edx, esi
sar edx, 8
add eax, edx
mov esi, edx
mov edx, dword [0x45cccc]
shr esi, 0x1f
add esi, eax
mov eax, 0x59493e15
imul edx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
sub esi, eax
sub esi, ecx
mov dword [0x45cce0], esi
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x14]
call fcn.0042fb01
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret