Function at 0x40876a
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x604
push edi
mov dword [ebp - 0x604], ecx
mov byte [ebp - 0x300], 0
mov ecx, 0x3f
xor eax, eax
lea edi, [ebp - 0x2ff]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov byte [ebp - 0x500], 0
mov ecx, 0x3f
xor eax, eax
lea edi, [ebp - 0x4ff]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov byte [ebp - 0x400], 0
mov ecx, 0x3f
xor eax, eax
lea edi, [ebp - 0x3ff]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov byte [ebp - 0x200], 0
mov ecx, 0x3f
xor eax, eax
lea edi, [ebp - 0x1ff]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x100], 0
mov ecx, 0x3f
xor eax, eax
lea edi, [ebp - 0xff]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov byte [ebp - 0x600], 0
mov ecx, 0x3f
xor eax, eax
lea edi, [ebp - 0x5ff]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
mov ecx, dword [ebp - 0x604]
add ecx, 0x100
call fcn.00404560
push eax
push 0xff
lea eax, [ebp - 0x500]
push eax
push 0x46c8e8
push 0x45d484
push 0x45d488
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jne 0x40884b
xor eax, eax
jmp 0x408ef2
lea ecx, [ebp - 0x500]
push ecx
mov ecx, dword [ebp - 0x604]
add ecx, 0xfc
call fcn.0043d92c
mov ecx, dword [ebp - 0x604]
add ecx, 0x100
call fcn.00404560
push eax
push 0xff
lea edx, [ebp - 0x300]
push edx
push 0x46c8ec
push str.Path
push 0x45d498
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jne 0x4088a1
xor eax, eax
jmp 0x408ef2
lea eax, [ebp - 0x500]
push eax
mov ecx, dword [ebp - 0x604]
add ecx, 0xf0
call fcn.0043d92c
push str.Dell
mov ecx, dword [ebp - 0x604]
add ecx, 0xf0
call fcn.00404620
test eax, eax
jne 0x4088e3
mov ecx, dword [ebp - 0x604]
mov dword [ecx + 0x10c], 1
lea edx, [ebp - 0x500]
push edx
lea eax, [ebp - 0x300]
push eax
push 0x45d4a8
mov ecx, dword [ebp - 0x604]
add ecx, 0xec
push ecx
call fcn.0043c7c7
add esp, 0x10
mov edx, dword [ebp - 0x604]
mov eax, dword [edx + 0xec]
push eax
push str.Registry_Path_:__s
call fcn.00413e70
add esp, 8
mov ecx, dword [ebp - 0x604]
add ecx, 0x100
call fcn.00404560
push eax
push 0xff
lea ecx, [ebp - 0x400]
push ecx
push 0x46c8f0
push str.ClassName
push 0x45d4d0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jne 0x408963
xor eax, eax
jmp 0x408ef2
lea edx, [ebp - 0x400]
push edx
mov ecx, dword [ebp - 0x604]
add ecx, 0xe8
call fcn.0043d92c
mov ecx, dword [ebp - 0x604]
add ecx, 0x100
call fcn.00404560
push eax
push 0xffffffffffffffff
push str.SmMode
push str.Vendor
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x604]
mov dword [ecx + 0x108], eax
mov edx, dword [ebp - 0x604]
cmp dword [edx + 0x108], 0xffffffff
jne 0x4089ca
mov eax, dword [ebp - 0x604]
mov dword [eax + 0x108], 0
mov ecx, dword [ebp - 0x604]
add ecx, 0xc0
call fcn.00404540
mov ecx, dword [ebp - 0x604]
add ecx, 0x100
call fcn.00404560
push eax
push 0xff
lea ecx, [ebp - 0x200]
push ecx
push 0x46c8f4
push str.Network1
push 0x45d4f4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x408a3d
lea edx, [ebp - 0x200]
push edx
call fcn.0042a0a0
add esp, 4
test eax, eax
jbe 0x408a3d
lea eax, [ebp - 0x200]
push eax
mov ecx, dword [ebp - 0x604]
add ecx, 0xc0
call fcn.00406170
mov ecx, dword [ebp - 0x604]
add ecx, 0x100
call fcn.00404560
push eax
push 0xff
lea ecx, [ebp - 0x200]
push ecx
push 0x46c8f8
push str.Network2
push 0x45d508
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x408a9f
lea edx, [ebp - 0x200]
push edx
call fcn.0042a0a0
add esp, 4
test eax, eax
jbe 0x408a9f
lea eax, [ebp - 0x200]
push eax
mov ecx, dword [ebp - 0x604]
add ecx, 0xc0
call fcn.00406170
mov ecx, dword [ebp - 0x604]
add ecx, 0x100
call fcn.00404560
push eax
push 0xff
lea ecx, [ebp - 0x200]
push ecx
push 0x46c8fc
push str.Network3
push 0x45d51c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x408b01
lea edx, [ebp - 0x200]
push edx
call fcn.0042a0a0
add esp, 4
test eax, eax
jbe 0x408b01
lea eax, [ebp - 0x200]
push eax
mov ecx, dword [ebp - 0x604]
add ecx, 0xc0
call fcn.00406170
mov ecx, dword [ebp - 0x604]
add ecx, 0x100
call fcn.00404560
push eax
push 0xff
lea ecx, [ebp - 0x200]
push ecx
push 0x46c900
push str.Network4
push 0x45d530
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x408b63
lea edx, [ebp - 0x200]
push edx
call fcn.0042a0a0
add esp, 4
test eax, eax
jbe 0x408b63
lea eax, [ebp - 0x200]
push eax
mov ecx, dword [ebp - 0x604]
add ecx, 0xc0
call fcn.00406170
mov ecx, dword [ebp - 0x604]
add ecx, 0x100
call fcn.00404560
push eax
push 0xff
lea ecx, [ebp - 0x200]
push ecx
push 0x46c904
push str.Network5
push 0x45d544
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x408bc5
lea edx, [ebp - 0x200]
push edx
call fcn.0042a0a0
add esp, 4
test eax, eax
jbe 0x408bc5
lea eax, [ebp - 0x200]
push eax
mov ecx, dword [ebp - 0x604]
add ecx, 0xc0
call fcn.00406170
mov ecx, dword [ebp - 0x604]
add ecx, 0x100
call fcn.00404560
push eax
push 0xff
lea ecx, [ebp - 0x200]
push ecx
push 0x46c908
push str.Network6
push str.Network
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x408c27
lea edx, [ebp - 0x200]
push edx
call fcn.0042a0a0
add esp, 4
test eax, eax
jbe 0x408c27
lea eax, [ebp - 0x200]
push eax
mov ecx, dword [ebp - 0x604]
add ecx, 0xc0
call fcn.00406170
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00404540
push str.Series
lea ecx, [ebp - 0x100]
push ecx
call fcn.00429bd0
add esp, 8
lea edx, [ebp - 0x100]
push edx
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
push str.Series_PCL_6
lea eax, [ebp - 0x100]
push eax
call fcn.00429bd0
add esp, 8
lea ecx, [ebp - 0x100]
push ecx
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
push str.Series_PS
lea edx, [ebp - 0x100]
push edx
call fcn.00429bd0
add esp, 8
lea eax, [ebp - 0x100]
push eax
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
push 0x45d584
lea ecx, [ebp - 0x100]
push ecx
call fcn.00429bd0
add esp, 8
lea edx, [ebp - 0x100]
push edx
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
push str.PCL_6
lea eax, [ebp - 0x100]
push eax
call fcn.00429bd0
add esp, 8
lea ecx, [ebp - 0x100]
push ecx
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
push 0x45d590
lea edx, [ebp - 0x100]
push edx
call fcn.00429bd0
add esp, 8
lea eax, [ebp - 0x100]
push eax
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
push str.PCL__Mono_
lea ecx, [ebp - 0x100]
push ecx
call fcn.00429bd0
add esp, 8
lea edx, [ebp - 0x100]
push edx
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
push str.PCL_6__Mono_
lea eax, [ebp - 0x100]
push eax
call fcn.00429bd0
add esp, 8
lea ecx, [ebp - 0x100]
push ecx
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
push str.PS__Mono_
lea edx, [ebp - 0x100]
push edx
call fcn.00429bd0
add esp, 8
lea eax, [ebp - 0x100]
push eax
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
push str._Mono_
lea ecx, [ebp - 0x100]
push ecx
call fcn.00429bd0
add esp, 8
lea edx, [ebp - 0x100]
push edx
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
push str.Series__Mono_
lea eax, [ebp - 0x100]
push eax
call fcn.00429bd0
add esp, 8
lea ecx, [ebp - 0x100]
push ecx
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
push str.Series_PCL_6__Mono_
lea edx, [ebp - 0x100]
push edx
call fcn.00429bd0
add esp, 8
lea eax, [ebp - 0x100]
push eax
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
push str.Series_PS__Mono_
lea ecx, [ebp - 0x100]
push ecx
call fcn.00429bd0
add esp, 8
lea edx, [ebp - 0x100]
push edx
mov ecx, dword [ebp - 0x604]
add ecx, 0xd4
call fcn.00406170
mov ecx, dword [ebp - 0x604]
add ecx, 0x100
call fcn.00404560
push eax
push pe_nt_image_headers32
lea eax, [ebp - 0x600]
push eax
push 0x46c90c
push str.DriverName
push 0x45d608
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jne 0x408ec7
push str.Samsung_Universal_Print_Driver
mov ecx, dword [ebp - 0x604]
add ecx, 0x258
push ecx
call fcn.00429bd0
add esp, 8
jmp 0x408ee2
lea edx, [ebp - 0x600]
push edx
mov eax, dword [ebp - 0x604]
add eax, 0x258
push eax
call fcn.00429bd0
add esp, 8
mov ecx, dword [ebp - 0x604]
call fcn.00409048
mov eax, 1
pop edi
mov esp, ebp
pop ebp
ret