Function at 0x407480
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x44aa80
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xfe4
mov eax, dword [0x45e540]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov dword [ebp - 0x820], eax
mov dword [ebp - 0x818], ecx
mov ecx, dword [0x45cbd4]
mov eax, 0x331da7cd
imul ecx
sar edx, 0x11
mov ebx, dword [0x45cbcc]
mov esi, edx
shr esi, 0x1f
add esi, edx
mov eax, 0x98eb62a3
imul ebx
add edx, ebx
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, ebx
imul edx, edx, 0x898dd
sub edx, eax
mov dword [ebp - 0x81c], edx
mov eax, 0x220de0d
imul ecx
mov eax, dword [ebp - 0x81c]
sar edx, 0xd
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub eax, ecx
mov dword [ebp - 0x81c], eax
mov ecx, dword [0x45cbdc]
mov eax, 0x220de0d
imul ecx, ecx, 0xa0576
imul ebx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x81c]
add eax, esi
add eax, edx
add ecx, eax
mov eax, 0x63b1cbb5
imul ebx
mov eax, dword [0x45cbe0]
sar edx, 0x12
imul eax, eax, 0x898dd
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov edx, dword [0x45cbe4]
imul edx, edx, 0x69fe2
add ebx, edx
add ebx, eax
mov eax, 0x662e995b
imul dword [0x45cbd4]
mov edi, dword [0x45cbe8]
imul edi, edi, 0x857ee
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add ebx, edx
add eax, ebx
add ecx, edi
sub eax, edi
sub eax, ecx
mov dword [str._r_____r____], ecx
lea ecx, [eax + esi + 0x6a03b]
mov eax, dword [ebp - 0x820]
test eax, eax
mov dword [0x45cbcc], ecx
je 0x407b02
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4075c1
sub eax, edx
mov dword [ebp - 0x81c], eax
je 0x407b02
mov eax, dword [ebp - 0x818]
push str.C:_WINDoWS_system32driversetc_serViCe5.ini
push 0x800
lea edx, [ebp - 0x814]
push edx
push 0x44ce89
push eax
push 0x44d160
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [0x45cbdc]
mov esi, dword [str._r_____r____]
mov ebx, dword [0x45cbd8]
mov eax, 0x63b1cbb5
imul ecx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edi, [ebx + esi]
imul esi, esi, 0xa0437
imul edi, edi, 0xa0576
mov edx, ecx
imul edx, edx, 0x898dd
sub edi, eax
add edi, edx
mov eax, 0x331da7cd
imul ecx
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, eax
mov eax, dword [0x45cbe0]
add edx, eax
add edx, edi
lea edi, [esi + edx - 0x69fe2]
lea esi, [ebp - 0x814]
lea edx, [esi + 1]
mov dword [0x45cbd4], edi
mov dword [ebp - 0x818], edx
mov dl, byte [esi]
inc esi
test dl, dl
jne 0x407674
sub esi, dword [ebp - 0x818]
mov dword [ebp - 0x818], esi
je 0x407a90
mov esi, dword [0x45cbcc]
imul eax, eax, 0xd5e3b
imul ecx, ecx, 0x69fe2
mov edx, dword [0x45cbd0]
lea edi, [edx + esi]
imul edi, edi, 0xd6486
add edi, eax
add edi, ecx
mov ecx, dword [0x45cbe4]
mov eax, 0x220de0d
imul ecx
sar edx, 0xd
mov ebx, edx
add edi, edx
mov eax, 0x662e995b
imul esi
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
shr ebx, 0x1f
add ebx, edi
sub ebx, eax
mov eax, 0x331da7cd
imul ecx
sar edx, 0x11
mov ecx, edx
add ebx, edx
lea edx, [ebp - 0x814]
push edx
shr ecx, 0x1f
lea eax, [ebp - 0xff0]
add ecx, ebx
push 0x1f4
push eax
mov dword [0x45cbdc], ecx
call fcn.0040fc00
add esp, 0xc
mov dword [ebp - 0x818], eax
xor edi, edi
lea ebx, [ebx]
cmp edi, dword [ebp - 0x818]
jge 0x407a7e
mov ecx, dword [0x45cbd4]
mov edx, dword [0x45cbc8]
mov esi, dword [0x45cbd8]
lea ebx, [edx + ecx]
mov ecx, dword [str._r_____r____]
imul ebx, ebx, 0xa4579
mov eax, 0x98eb62a3
imul esi
add edx, esi
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x9a8b8787
imul ecx
add edx, ecx
imul ecx, ecx, 0xa0437
sar edx, 0x12
add ebx, edx
mov eax, edx
mov edx, dword [0x45cbe4]
shr eax, 0x1f
add eax, ebx
mov ebx, eax
mov eax, 0x220de0d
imul edx
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x331da7cd
imul esi
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x820]
sub ebx, eax
add ebx, ecx
mov ecx, dword [ebp + edi*4 - 0xff0]
push ecx
push edx
mov dword [0x45cbe4], ebx
call fcn.00430ad0
add esp, 8
test eax, eax
je 0x407a78
mov edi, dword [0x45cbd0]
mov eax, 0x99335f19
imul edi
add edx, edi
sar edx, 0x13
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [0x45cbc8]
imul edx, edx, 0x69fe2
add ecx, edx
mov eax, 0x4d49d1e9
imul edi
sar edx, 0x11
add ecx, edx
mov esi, edx
mov eax, 0x3b8e0831
imul edi
mov eax, dword [0x45cbe0]
imul eax, eax, 0x50c98
sar edx, 0x11
shr esi, 0x1f
add esi, ecx
add esi, edx
mov ecx, edx
shr ecx, 0x1f
add ecx, esi
sub ecx, eax
mov eax, 0x662e995b
imul dword [0x45cbe4]
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ecx, eax
mov eax, dword [0x45cbe8]
mov ebx, dword [0x45cbd4]
imul eax, eax, 0x857ee
mov dword [ebp - 0x820], eax
mov eax, 0x331da7cd
imul ebx
sar edx, 0x11
mov esi, edx
shr esi, 0x1f
add esi, edx
mov edx, dword [0x45cbcc]
mov eax, 0x63b1cbb5
imul edx
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [0x45cbe4]
imul edx, edx, 0x69fe2
add eax, edx
mov edx, dword [0x45cbe0]
imul edx, edx, 0x898dd
add eax, edx
mov dword [ebp - 0x818], eax
mov eax, 0x662e995b
imul ebx
mov ebx, dword [ebp - 0x818]
sar edx, 0x12
add ebx, edx
mov eax, edx
mov edx, dword [str._r_____r____]
shr eax, 0x1f
add eax, ebx
sub eax, dword [ebp - 0x820]
sub eax, edx
lea edx, [eax + esi + 0x6a03b]
mov eax, dword [0x5605ec]
inc eax
cmp eax, 5
mov dword [0x45cbc8], ecx
mov dword [0x45cbcc], edx
mov dword [0x5605ec], eax
jg 0x4079ec
cmp dword [ebp + 0x10], 1
jne 0x4079ec
mov eax, 0x9a8b8787
imul ecx, ecx, 0xa0576
imul edi
add edx, edi
mov edi, dword [0x45cbd8]
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ebx, eax
mov eax, 0x4d49d1e9
imul edi
imul edi, edi, 0xf08ec
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
sub eax, ebx
add eax, edi
mov edi, dword [0x45cbdc]
mov ebx, eax
mov eax, 0x220de0d
imul edi
imul edi, edi, 0xa0576
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, dword [0x45cbe4]
add ebx, ecx
mov ecx, dword [ebp - 0x820]
sub ebx, eax
lea edx, [ebx + ecx - 0x69fe2]
mov ecx, dword [0x45cbcc]
mov dword [0x45cbd0], edx
mov eax, 0x98eb62a3
imul ecx
add edx, ecx
mov ebx, ecx
sar edx, 0x13
imul ebx, ebx, 0x898dd
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x220de0d
imul dword [0x45cbd4]
sar edx, 0xd
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x220de0d
imul ecx
mov eax, dword [0x5709c8]
sar edx, 0xd
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov edx, dword [ebp - 0x820]
add ecx, esi
add ecx, ebx
add edi, ecx
add edi, edx
mov dword [str._r_____r____], edi
mov edx, dword [eax]
push eax
mov dword [ebp - 4], 0
call dword [edx + 0x30]
mov ecx, dword [0x45cbc8]
mov edi, dword [0x45cbe8]
imul ecx, ecx, 0xa0437
mov esi, dword [0x45cbe0]
mov eax, 0x7abb0ab
imul edi
sar edx, 0xe
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov eax, 0x63b1cbb5
imul esi
imul esi, esi, 0xa4579
sar edx, 0x12
add ebx, edx
mov eax, edx
shr eax, 0x1f
add eax, ebx
mov edx, edi
imul edx, edx, 0x69fe2
add eax, esi
sub eax, edx
mov ebx, eax
mov eax, 0x3b8e0831
imul edi
sar edx, 0x11
mov eax, edx
shr eax, 0x1f
add eax, edx
sub ebx, eax
mov eax, 0x331da7cd
imul dword [0x45cbd4]
add ebx, ecx
sar edx, 0x11
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
sub ebx, ecx
mov dword [0x45cbd8], ebx
mov eax, 1
jmp 0x407b04
inc edi
jmp 0x407720
mov edi, dword [0x45cbd4]
mov ecx, dword [0x45cbdc]
mov ebx, dword [0x45cbd8]
mov edx, dword [0x45cbe8]
imul ebx, ebx, 0xd5e3b
imul edi, edi, 0x857ee
mov eax, dword [0x45cbd0]
imul ecx, ecx, 0x69fe2
lea esi, [eax + edx]
mov eax, 0x98eb62a3
imul esi, esi, 0x6a03b
imul edx
add edx, dword [0x45cbe8]
sar edx, 0x13
mov eax, edx
shr eax, 0x1f
add esi, edx
add eax, esi
mov esi, dword [0x45cbcc]
add eax, ebx
sub eax, edi
mov dword [ebp - 0x818], eax
mov eax, 0x9a8b8787
imul esi
add edx, esi
sar edx, 0x12
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x818]
sub edx, eax
sub edx, ecx
mov dword [0x45cbe0], edx
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x14]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0042fe7d
mov esp, ebp
pop ebp
ret