Function at 0x450faa
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4d25c2
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x334
mov dword [ebp - 0x340], ecx
cmp dword [ebp + 8], 0
jne 0x450fd9
jmp 0x451296
push 0x104
push 0
lea eax, [ebp - 0x11c]
push eax
call fcn.00490070
add esp, 0xc
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [ebp - 0x18]
call fcn.004a6fb9
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x120]
call fcn.00402dc0
mov byte [ebp - 4], 1
lea edx, [ebp - 0x120]
push edx
lea eax, [ebp - 0x18]
push eax
call fcn.00445b71
add esp, 8
lea ecx, [ebp - 0x120]
call fcn.00406b20
test eax, eax
je 0x451046
mov ecx, dword [ebp + 8]
push ecx
lea edx, [ebp - 0x11c]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
jmp 0x45105f
lea ecx, [ebp - 0x120]
call fcn.00430bb0
push eax
lea eax, [ebp - 0x11c]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
call sub.CRCommon.dll_GetReaderFilter
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jne 0x451090
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x120]
call fcn.004a6f4b
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.004a6f4b
jmp 0x451296
lea ecx, [ebp - 0x10]
push ecx
lea edx, [ebp - 0x11c]
push edx
mov eax, dword [ebp - 0x14]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x14]
call dword [edx + 0x10]
cmp dword [ebp - 0x10], 1
jne 0x451252
call sub.CRCommon.dll_GetReaderCommand
mov dword [ebp - 0x124], eax
push 0
lea eax, [ebp - 0x11c]
push eax
sub esp, 0xc
mov ecx, esp
mov edx, dword [0x4de5d0]
mov dword [ecx], edx
mov eax, dword [0x4de5d4]
mov dword [ecx + 4], eax
mov dx, word [0x4de5d8]
mov word [ecx + 8], dx
mov eax, dword [ebp - 0x124]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x124]
call dword [edx]
test eax, eax
jne 0x451250
mov dword [ebp - 0x128], 1
push 0
lea eax, [ebp - 0x128]
push eax
sub esp, 0xc
mov ecx, esp
mov edx, dword [0x4de5f0]
mov dword [ecx], edx
mov eax, dword [0x4de5f4]
mov dword [ecx + 4], eax
mov dx, word [0x4de5f8]
mov word [ecx + 8], dx
mov eax, dword [ebp - 0x124]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x124]
call dword [edx]
push 1
push 0
mov eax, dword [ebp - 0x340]
mov ecx, dword [eax + 0x5c]
call fcn.0040bfa0
lea ecx, [ebp - 0x12c]
push ecx
call fcn.00412350
mov ecx, eax
call fcn.00411c30
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x12c]
call fcn.00430bb0
push eax
push 1
push str.AddBookToCategory
push str.Option
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
je 0x451241
lea ecx, [ebp - 0x338]
call fcn.00417720
lea edx, [ebp - 0x11c]
push edx
lea eax, [ebp - 0x338]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea ecx, [ebp - 0x130]
call fcn.00402dc0
mov byte [ebp - 4], 3
push 0x8025
lea ecx, [ebp - 0x130]
call fcn.004a7fee
lea ecx, [ebp - 0x338]
push ecx
call fcn.00417283
add esp, 4
test eax, eax
jne 0x451232
push 4
lea ecx, [ebp - 0x130]
call fcn.00430bb0
push eax
mov edx, dword [ebp - 0x340]
push edx
call fcn.0045be40
add esp, 0xc
cmp eax, 6
jne 0x451232
lea eax, [ebp - 0x338]
push eax
call fcn.004172d8
add esp, 4
test eax, eax
je 0x451223
lea ecx, [ebp - 0x338]
push ecx
call fcn.00417017
add esp, 4
lea edx, [ebp - 0x338]
push edx
call fcn.00416f26
add esp, 4
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x130]
call fcn.004a6f4b
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x12c]
call fcn.004a6f4b
jmp 0x451278
call sub.CRCommon.dll_GetRightCenter
mov dword [ebp - 0x33c], eax
cmp dword [ebp - 0x33c], 0
je 0x451278
lea eax, [ebp - 0x11c]
push eax
mov ecx, dword [ebp - 0x33c]
call fcn.00452752
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x120]
call fcn.004a6f4b
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.004a6f4b
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4