Function at 0x140003b20
Capabilities:
Read .ini file

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x38]
sub rsp, 0x130
mov qword [rbp - 0x80], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x140020030]
xor rax, rsp
mov qword [rbp + 0x28], rax
mov rbx, rcx
lea rcx, [rbp - 0x78]
call fcn.1400052d0
nop
lea rcx, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae rcx, qword [rbp - 0x78]
call qword [sym.imp.SHLWAPI.dll_PathIsDirectoryW]
test eax, eax
jne 0x140003b8e
cmp qword [rbp - 0x60], 8
jb 0x140003b87
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.mfc100u.dll_CThreadLocalObject::CThreadLocalObject]
xor eax, eax
jmp 0x1400041b1
mov r8d, 0xf
lea rdx, str.LogSetting.ini
lea rcx, [rbp - 0x78]
call fcn.140002320
mov qword [rbp - 0x38], 7
xor esi, esi
mov qword [rbp - 0x40], rsi
mov word [rbp - 0x50], si
mov rcx, qword [rbx + 0xd0]
test rcx, rcx
je 0x140003bfd
mov qword [rbp - 0x10], 7
mov qword [rbp - 0x18], rsi
mov word [rbp - 0x28], si
lea rdx, [rbp - 0x28]
call fcn.1400026c0
xor r8d, r8d
lea rdx, [rbp - 0x28]
lea rcx, [rbp - 0x50]
call fcn.140002a10
nop
cmp qword [rbp - 0x10], 8
jb 0x140003bfd
mov rcx, qword [rbp - 0x28]
call qword [sym.imp.mfc100u.dll_CThreadLocalObject::CThreadLocalObject]
mov edi, esi
cmp qword [rbp - 0x40], rdi
je 0x140003e60
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
or r8d, 0xffffffff
lea rdx, str.LogLevel
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0x30], eax
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
or r8d, 0xffffffff
lea rdx, str.ThreadSafeMode
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0x60], eax
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
or r8d, 0xffffffff
lea rdx, str.DumpJson
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0x64], eax
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
or r8d, 0xffffffff
lea rdx, str.DumpImage
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0x68], eax
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
or r8d, 0xffffffff
lea rdx, str.ModuleIsoration
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0x6c], eax
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
or r8d, 0xffffffff
lea rdx, str.ModuleSubDir
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov edi, eax
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
or r8d, 0xffffffff
lea rdx, str.DisableTimestampPrefix
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0xc0], eax
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
lea rcx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rcx, qword [rbp - 0x50]
or r8d, 0xffffffff
lea rdx, str.DumpCommand
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0xc4], eax
lea rax, [rbp - 0x28]
mov qword [rsp + 0x78], rax
lea rax, [rsp + 0x20]
mov qword [rsp + 0x48], rax
mov qword [rbp - 0x10], 7
mov qword [rbp - 0x18], rsi
mov word [rbp - 0x28], si
mov r8d, 8
lea rdx, str.ResetLog
lea rcx, [rbp - 0x28]
call fcn.140001520
nop
mov qword [rsp + 0x38], 7
mov qword [rsp + 0x30], rsi
mov word [rsp + 0x20], si
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp - 0x50]
lea rcx, [rsp + 0x20]
call fcn.1400010b0
nop
mov qword [rsp + 0x68], 7
mov qword [rsp + 0x60], rsi
mov word [rsp + 0x50], si
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x50]
call fcn.1400010b0
nop
lea r9, [rbp - 0x28]
lea r8, [rsp + 0x20]
lea rdx, [rsp + 0x50]
lea rcx, [rbp]
call fcn.140003920
nop
lea rcx, [rbx + 0x98]
mov rdx, rax
call fcn.140001d10
nop
cmp qword [rbp + 0x18], 8
jb 0x140003e53
mov rcx, qword [rbp]
call qword [sym.imp.mfc100u.dll_CThreadLocalObject::CThreadLocalObject]
cmp qword [rbp - 0x40], 0
je 0x140003e60
cmp dword [rbx + 0x30], 0xffffffff
jne 0x140003e8b
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
mov r8d, 6
lea rdx, str.LogLevel
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0x30], eax
cmp qword [rbp - 0x40], 0
je 0x140003e98
cmp dword [rbx + 0x60], 0xffffffff
jne 0x140003ec0
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
xor r8d, r8d
lea rdx, str.ThreadSafeMode
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0x60], eax
cmp qword [rbp - 0x40], 0
je 0x140003ecd
cmp dword [rbx + 0x64], 0xffffffff
jne 0x140003ef5
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
xor r8d, r8d
lea rdx, str.DumpJson
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0x64], eax
cmp qword [rbp - 0x40], 0
je 0x140003f02
cmp dword [rbx + 0x68], 0xffffffff
jne 0x140003f2a
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
xor r8d, r8d
lea rdx, str.DumpImage
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0x68], eax
cmp qword [rbp - 0x40], 0
je 0x140003f37
cmp dword [rbx + 0x6c], 0xffffffff
jne 0x140003f5f
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
xor r8d, r8d
lea rdx, str.ModuleIsoration
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0x6c], eax
cmp qword [rbp - 0x40], 0
je 0x140003f6b
cmp edi, 0xffffffff
jne 0x140003f92
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
xor r8d, r8d
lea rdx, str.ModuleSubDir
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov edi, eax
cmp edi, 1
jne 0x140003fb0
cmp dword [rbx + 0x6c], edi
jne 0x140003fb0
lea rcx, [rbx + 0x70]
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp - 0x50]
call fcn.1400010b0
cmp qword [rbp - 0x40], 0
je 0x140003fc0
cmp dword [rbx + 0xc0], 0xffffffff
jne 0x140003feb
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
xor r8d, r8d
lea rdx, str.DisableTimestampPrefix
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0xc0], eax
cmp qword [rbp - 0x40], 0
je 0x140003ffb
cmp dword [rbx + 0xc4], 0xffffffff
jne 0x140004026
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
xor r8d, r8d
lea rdx, str.DumpCommand
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0xc4], eax
cmp qword [rbp - 0x40], 0
je 0x14000403b
cmp qword [rbx + 0xa8], 0
jne 0x140004102
lea rax, [rsp + 0x20]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x28]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x38], 7
mov qword [rsp + 0x30], rsi
mov word [rsp + 0x20], si
mov r8d, 8
lea rdx, str.ResetLog
lea rcx, [rsp + 0x20]
call fcn.140001520
nop
mov qword [rbp - 0x10], 7
mov qword [rbp - 0x18], rsi
mov word [rbp - 0x28], si
mov r8d, 7
lea rdx, str.Setting
lea rcx, [rbp - 0x28]
call fcn.140001520
nop
mov qword [rsp + 0x68], 7
mov qword [rsp + 0x60], rsi
mov word [rsp + 0x50], si
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x50]
call fcn.1400010b0
nop
lea r9, [rsp + 0x20]
lea r8, [rbp - 0x28]
lea rdx, [rsp + 0x50]
lea rcx, [rbp]
call fcn.140003920
nop
lea rcx, [rbx + 0x98]
mov rdx, rax
call fcn.140001d10
nop
cmp qword [rbp + 0x18], 8
jb 0x140004102
mov rcx, qword [rbp]
call qword [sym.imp.mfc100u.dll_CThreadLocalObject::CThreadLocalObject]
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
xor r8d, r8d
lea rdx, str.DumpTwain
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0xc8], eax
lea r9, [rbp - 0x78]
cmp qword [rbp - 0x60], 8
cmovae r9, qword [rbp - 0x78]
xor r8d, r8d
lea rdx, str.PerformanceCheck
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov dword [rbx + 0xcc], eax
test eax, eax
je 0x140004163
mov dword [rbx + 0x30], 6
mov eax, dword [rbx + 0x30]
cmp eax, 6
jne 0x140004175
mov qword [rbx + 0x64], rsi
mov dword [rbx + 0xc8], esi
mov ebx, esi
cmp eax, 6
setne bl
cmp qword [rbp - 0x38], 8
jb 0x14000418e
mov rcx, qword [rbp - 0x50]
call qword [sym.imp.mfc100u.dll_CThreadLocalObject::CThreadLocalObject]
mov qword [rbp - 0x38], 7
mov qword [rbp - 0x40], rsi
mov word [rbp - 0x50], si
cmp qword [rbp - 0x60], 8
jb 0x1400041af
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.mfc100u.dll_CThreadLocalObject::CThreadLocalObject]
mov eax, ebx
mov rcx, qword [rbp + 0x28]
xor rcx, rsp
call fcn.140012160
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret