Function at 0x10114db2
Capabilities:
Read .ini file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x7ec
mov eax, dword [0x101a4c2c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, edx
mov dword [ebp - 0x7e0], ecx
push eax
mov dword [ebp - 0x7e8], eax
lea eax, [ebp - 0x7d4]
push 0x3e8
push eax
push 0x1002a48c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionW]
test eax, eax
jne 0x10114df7
inc eax
jmp 0x10115055
cmp eax, 0x3e6
jne 0x10114e08
mov eax, 0x800700df
jmp 0x10115055
push ebx
xor eax, eax
lea edx, [ebp - 0x7d4]
push esi
push edi
mov edi, eax
mov dword [ebp - 0x7ec], eax
cmp word [ebp - 0x7d4], ax
je 0x1011504d
xor ebx, ebx
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x10114e2f
sub ecx, esi
sar ecx, 1
lea edx, [edx + ecx*2]
add edx, 2
inc edi
cmp word [edx], bx
jne 0x10114e2a
mov dword [ebp - 0x7e4], edi
test edi, edi
je 0x1011504d
xor ecx, ecx
mov eax, edi
mov edx, 0x20c
mul edx
push 0x1003b6db
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.1016721c
mov edx, eax
mov dword [ebp - 0x7d8], edx
pop ecx
pop ecx
test edx, edx
jne 0x10114e8d
mov eax, 0x8007000e
jmp 0x10115052
mov eax, ebx
lea ecx, [ebp - 0x7d4]
mov esi, ebx
mov dword [ebp - 0x7dc], eax
cmp word [ebp - 0x7d4], ax
je 0x10114f68
mov ebx, edx
cmp eax, edi
jae 0x10114f5d
movzx eax, word [ecx]
mov edi, ecx
mov edx, eax
test ax, ax
je 0x10114ed9
mov esi, eax
push 0x3d
pop eax
cmp si, ax
je 0x10114ee1
add edi, 2
movzx eax, word [edi]
mov esi, eax
mov edx, eax
test ax, ax
jne 0x10114ec2
push 0x3d
pop eax
cmp dx, ax
jne 0x10114f5d
xor eax, eax
mov edx, 0x104
push ecx
mov ecx, ebx
mov word [edi], ax
call fcn.1003f1d4
mov esi, eax
test esi, esi
js 0x10114f62
push dword [ebp - 0x7e8]
push 0xffffffffffffffff
push ebx
push 0x1002a48c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [ebx + 0x208], eax
cmp eax, 0xffffffff
je 0x10114f5d
lea ecx, [edi + 2]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, word [ebp - 0x7ec]
jne 0x10114f1e
mov eax, dword [ebp - 0x7dc]
sub ecx, edx
add edi, 4
sar ecx, 1
inc eax
xor edx, edx
add ebx, 0x20c
mov dword [ebp - 0x7dc], eax
lea ecx, [edi + ecx*2]
mov edi, dword [ebp - 0x7e4]
cmp word [ecx], dx
jne 0x10114eac
jmp 0x10114f62
mov esi, 0x80070057
mov edx, dword [ebp - 0x7d8]
xor eax, eax
mov dword [ebp - 0x7dc], eax
mov bl, al
test esi, esi
js 0x10115041
mov edi, edx
cmp eax, dword [ebp - 0x7e4]
jae 0x1011502e
push 0x1002a474
push edi
lea esi, [edi + 0x208]
call sub.msvcrt.dll__wcsicmp
pop ecx
pop ecx
push 4
push esi
push 4
test eax, eax
jne 0x10114fab
push 0x1002a474
jmp 0x10114ff8
push edi
push 0x1002a4d8
push dword [ebp - 0x7e0]
call dword [sym.imp.WINSPOOL.DRV_SetPrinterDataExW]
mov esi, eax
test esi, esi
jle 0x10114fcc
movzx esi, si
or esi, 0x80070000
test bl, bl
jne 0x10115013
mov ecx, edi
inc bl
xor esi, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x10114fd9
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
push edi
push 1
push 0x10018a50
push dword [ebp - 0x7e0]
call dword [sym.imp.WINSPOOL.DRV_SetPrinterDataW]
mov esi, eax
test esi, esi
jle 0x10115013
movzx esi, si
or esi, 0x80070000
mov eax, dword [ebp - 0x7dc]
add edi, 0x20c
inc eax
mov dword [ebp - 0x7dc], eax
test esi, esi
jns 0x10114f7c
mov edx, dword [ebp - 0x7d8]
test esi, esi
js 0x10115041
test bl, bl
jne 0x10115041
mov esi, 0x8000ffff
push edx
call dword [sym.imp.msvcrt.dll_void___cdecl_operator_delete_void__]
pop ecx
mov eax, esi
jmp 0x10115052
mov eax, 0x80070057
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10166ce0
mov esp, ebp
pop ebp
ret