Function at 0x18000b490
Capabilities:
Read .ini file

Disassembly:
push rbp
lea rbp, [rsp - 0x240]
sub rsp, 0x340
mov rax, qword [0x1800c6d00]
xor rax, rsp
mov qword [rbp + 0x210], rax
xor edx, edx
mov ecx, 0xffffffff
call fcn.180020e80
call qword [0x1800c56d0]
test eax, eax
jle 0x18000bf5e
mov qword [rsp + 0x350], rbx
lea rcx, [rbp + 0x101]
mov qword [rsp + 0x358], rsi
xor edx, edx
mov qword [rsp + 0x360], rdi
mov r8d, 0x103
mov qword [rsp + 0x338], r12
mov qword [rsp + 0x330], r13
mov qword [rsp + 0x328], r14
mov byte [rbp + 0x100], 0
call fcn.1800a24f0
mov rax, qword [case.0x180030475.0]
test rax, rax
je 0x18000b537
mov r8d, 0x104
lea rdx, [rbp + 0x100]
mov ecx, 0x10
call rax
cmp byte [rbp + 0x100], 0
jne 0x18000b558
lea r8, str.xDRVx
mov edx, 0x104
lea rcx, [rbp + 0x100]
call fcn.180065ef0
mov edx, 0x5c
lea rcx, [rbp + 0x100]
call fcn.1800331b0
mov rdi, rax
test rax, rax
je 0x18000b576
inc rdi
jmp 0x18000b57d
lea rdi, [rbp + 0x100]
movzx eax, byte [rdi]
lea rbx, [rbp + 0x100]
xor esi, esi
mov r12d, 1
mov r14d, esi
test al, al
je 0x18000b5d7
movsx ecx, al
call fcn.18007a240
test eax, eax
jne 0x18000b5c1
movzx eax, byte [rdi]
cmp al, 0x5f
je 0x18000b5c1
cmp al, 0x2e
je 0x18000b5c4
cmp al, 0x23
je 0x18000b5c4
test r14d, r14d
jne 0x18000b5bc
mov byte [rbx], 0x5f
inc rbx
mov r14d, r12d
jmp 0x18000b5cc
movzx eax, byte [rdi]
mov byte [rbx], al
mov r14d, esi
inc rbx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x18000b596
mov byte [rbx], sil
call qword [0x1800c5458]
mov edx, 0x64
lea rcx, [rbp - 0x40]
mov r8, rax
call fcn.180065ef0
movzx eax, byte [rbp - 0x40]
test al, al
jne 0x18000b612
lea r8, str.xSCNx
mov edx, 0x64
lea rcx, [rbp - 0x40]
call fcn.180065ef0
movzx eax, byte [rbp - 0x40]
lea rdi, [rbp - 0x40]
mov r14d, esi
lea rbx, [rbp - 0x40]
test al, al
je 0x18000b662
movsx ecx, al
call fcn.18007a240
test eax, eax
jne 0x18000b64c
movzx eax, byte [rdi]
cmp al, 0x5f
je 0x18000b64c
cmp al, 0x2e
je 0x18000b64f
cmp al, 0x23
je 0x18000b64f
test r14d, r14d
jne 0x18000b647
mov byte [rbx], 0x5f
inc rbx
mov r14d, r12d
jmp 0x18000b657
movzx eax, byte [rdi]
mov byte [rbx], al
mov r14d, esi
inc rbx
movzx eax, byte [rdi + 1]
inc rdi
test al, al
jne 0x18000b621
mov eax, dword [str.TWPR]
lea rcx, [rbp + 0x35]
mov dword [rbp + 0x30], eax
xor edx, edx
movzx eax, byte [0x1800a7050]
mov r8d, 0xc3
mov byte [rbp + 0x34], al
mov byte [rbx], sil
call fcn.1800a24f0
xorps xmm0, xmm0
mov byte [rsp + 0x50], sil
xor eax, eax
movups xmmword [rsp + 0x51], xmm0
mov word [rbp - 0x4f], ax
movups xmmword [rsp + 0x61], xmm0
mov byte [rbp - 0x4d], al
movups xmmword [rsp + 0x71], xmm0
movups xmmword [rbp - 0x7f], xmm0
movups xmmword [rbp - 0x6f], xmm0
movups xmmword [rbp - 0x5f], xmm0
call fcn.180003c00
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x50]
mov dword [rsp + 0x20], 0x64
lea rdx, [rbp + 0x30]
lea rcx, str.TWDPU.DS
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, [0x1800a7064]
mov edx, 0xc8
lea rcx, [rbp + 0x30]
call fcn.1800790b8
lea r8, [rbp + 0x100]
mov edx, 0xc8
lea rcx, [rbp + 0x30]
call fcn.1800790b8
lea r8, [0x1800a7064]
mov edx, 0xc8
lea rcx, [rbp + 0x30]
call fcn.1800790b8
lea r8, [rbp - 0x40]
mov edx, 0xc8
lea rcx, [rbp + 0x30]
call fcn.1800790b8
call fcn.180003c00
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x50]
mov dword [rsp + 0x20], 0x64
lea rdx, [rbp + 0x30]
lea rcx, str.TWDPU.DS
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
call fcn.180003c00
mov r9, rax
lea r8, [rsp + 0x50]
lea rdx, [rbp + 0x30]
lea rcx, str.TWDPU.DS
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
xor eax, eax
lea rbx, [rsp + 0x50]
mov qword [0x1800cac90], rax
lea r13, [0x180000000]
movzx eax, byte [rsp + 0x50]
xorps xmm0, xmm0
xorps xmm1, xmm1
mov r14d, esi
movups xmmword [0x1800cac70], xmm0
movups xmmword [0x1800cac80], xmm1
test al, al
je 0x18000b87f
mov qword [rsp + 0x320], r15
nop
movsx ecx, al
call fcn.18007a510
movsx ecx, byte [rbx]
test eax, eax
je 0x18000b853
mov edi, esi
call fcn.18007a510
test eax, eax
je 0x18000b800
nop
movsx eax, byte [rbx]
lea ecx, [rdi - 6]
lea ecx, [rdi + rcx*4]
inc rbx
lea edi, [rax + rcx*2]
movsx ecx, byte [rbx]
call fcn.18007a510
test eax, eax
jne 0x18000b7e0
cmp edi, 8
jae 0x18000b85a
test r14d, r14d
je 0x18000b824
cmp r14d, r12d
jne 0x18000b85a
mov eax, edi
cmp dword [r13 + rax*4 + 0xcac74], esi
je 0x18000b81c
mov dword [0x1800cac94], edi
mov r14d, 2
jmp 0x18000b85a
mov eax, edi
cmp dword [r13 + rax*4 + 0xcac74], esi
jne 0x18000b85a
mov dword [r13 + rax*4 + 0xcac74], r12d
mov eax, dword [0x1800cac70]
inc eax
mov dword [0x1800cac70], eax
cmp eax, r12d
jne 0x18000b85a
mov dword [0x1800cac94], edi
jmp 0x18000b85a
cmp cl, 0x3b
cmove r14d, r12d
movzx eax, byte [rbx + 1]
inc rbx
test al, al
jne 0x18000b7c0
mov r15, qword [rsp + 0x320]
movups xmm1, xmmword [0x1800cac80]
movups xmm0, xmmword [0x1800cac70]
movups xmmword [0x1800cac98], xmm0
xor edx, edx
mov ecx, 4
movsd xmm0, qword [0x1800cac90]
movsd qword [0x1800cacb8], xmm0
movups xmmword [0x1800caca8], xmm1
call qword [0x1800c5850]
mov r8, qword [0x1800c58f0]
lea rcx, [rsp + 0x30]
cmp eax, r12d
mov ebx, esi
mov edx, 0xfffffffe
mov edi, eax
sete bl
call r8
mov r14, qword [rsp + 0x328]
test eax, eax
jne 0x18000b8dd
mov ecx, dword [rsp + 0x30]
mov eax, r12d
jmp 0x18000b8f0
mov ecx, r12d
mov eax, 0x10001
cmp edi, ecx
cmove ecx, eax
mov eax, esi
mov dword [rsp + 0x30], ecx
xorps xmm0, xmm0
mov dword [0x1800caa60], eax
xor eax, eax
mov dword [rsp + 0x38], esi
mov qword [0x1800caa98], rax
mov dword [0x1800caaa0], eax
mov qword [0x1800caa78], rax
mov dword [0x1800caa80], eax
movups xmmword [0x1800caa88], xmm0
movups xmmword [0x1800caa68], xmm0
test cl, 4
je 0x18000b93f
lea rdx, [rsp + 0x38]
mov ecx, 3
call fcn.180020e80
mov ecx, dword [rsp + 0x30]
test cl, 2
je 0x18000b957
lea rdx, [rsp + 0x38]
mov ecx, 2
call fcn.180020e80
mov ecx, dword [rsp + 0x30]
test r12b, cl
je 0x18000b96d
lea rdx, [rsp + 0x38]
mov ecx, r12d
call fcn.180020e80
mov ecx, dword [rsp + 0x30]
movsxd rax, dword [rsp + 0x38]
test eax, eax
je 0x18000b97e
mov dword [r13 + rax*4 + 0xcaa88], r12d
cmp edi, r12d
mov rdi, qword [rsp + 0x360]
jne 0x18000b9e7
mov dword [rsp + 0x38], esi
bt ecx, 0x12
jae 0x18000b9a8
lea rdx, [rsp + 0x38]
mov ecx, 6
call fcn.180020e80
mov ecx, dword [rsp + 0x30]
bt ecx, 0x11
jae 0x18000b9c1
lea rdx, [rsp + 0x38]
mov ecx, 5
call fcn.180020e80
mov ecx, dword [rsp + 0x30]
bt ecx, 0x10
jae 0x18000b9d6
lea rdx, [rsp + 0x38]
mov ecx, 4
call fcn.180020e80
movsxd rax, dword [rsp + 0x38]
test eax, eax
je 0x18000b9e7
mov dword [r13 + rax*4 + 0xcaa88], r12d
call fcn.180020190
cmp dword [0x1800caa8c], esi
mov r13, qword [rsp + 0x330]
je 0x18000ba18
cmp dword [0x1800caa98], esi
je 0x18000ba0f
lea rcx, str._Camera_Bitonal_Both
mov edx, esi
jmp 0x18000ba61
lea rcx, [0x1800a7080]
jmp 0x18000ba5e
cmp dword [0x1800caa90], esi
je 0x18000ba3c
cmp dword [0x1800caa9c], esi
je 0x18000ba33
lea rcx, [0x1800a7098]
mov edx, esi
jmp 0x18000ba61
lea rcx, [0x1800a70b0]
jmp 0x18000ba5e
cmp dword [0x1800caa94], esi
je 0x18000ba69
cmp dword [0x1800caaa0], esi
je 0x18000ba57
xor edx, edx
lea rcx, [0x1800a70c8]
jmp 0x18000ba61
lea rcx, [0x1800a70e0]
mov edx, r12d
xor r8d, r8d
call fcn.180020be0
mov rax, qword [0x1800c54a8]
lea r8, [rsp + 0x40]
xor edx, edx
mov ecx, 0xffffffff
call rax
test eax, eax
jne 0x18000ba97
cmp dword [rsp + 0x40], esi
jle 0x18000ba97
mov edx, 0x1101
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov rax, qword [0x1800c54c8]
lea r8, [rsp + 0x40]
xor edx, edx
mov ecx, 0xffffffff
call rax
test eax, eax
jne 0x18000bac5
cmp dword [rsp + 0x40], esi
jle 0x18000bac5
mov edx, 0x1103
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1000
mov byte [0x1800ca8d0], sil
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov rax, qword [0x1800c55c0]
lea rcx, [0x1800ca960]
mov edx, 0x100
call rax
test eax, eax
jne 0x18000bb03
mov edx, 0x1024
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1122
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1121
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1110
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1118
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1119
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, r12d
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1012
mov r8d, ebx
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1013
mov r8d, ebx
xor ecx, ecx
call fcn.180020f20
mov edx, 0x100
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1126
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x102d
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1002
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1003
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1111
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1112
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x101
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x111f
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1127
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x102
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x103
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x110c
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x112f
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1015
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1120
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x112b
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x111c
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1151
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1150
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1007
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1022
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov rax, qword [0x1800c5858]
xor edx, edx
mov ecx, r12d
call rax
test eax, eax
je 0x18000bce4
mov edx, 0x1010
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov rax, qword [0x1800c57d8]
xor edx, edx
mov ecx, r12d
call rax
test eax, eax
je 0x18000bd56
cmp dword [0x1800cac70], esi
jle 0x18000bd0d
mov edx, 0x1026
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1027
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x1028
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x102b
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
cmp dword [0x1800cab54], esi
jne 0x18000bd51
mov edx, 0x8011
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov ecx, r12d
jmp 0x18000bd58
mov ecx, esi
call fcn.180030810
call qword [0x1800c5928]
test eax, eax
je 0x18000bdeb
cmp dword [0x1800cab8c], esi
jne 0x18000bd8e
mov rax, qword [0x1800c59a0]
lea rcx, [0x1800cacc0]
mov edx, 0x1e
call rax
mov dword [0x1800cab8c], eax
mov edx, 0x1137
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov ecx, dword [0x1800cad88]
call fcn.180020ce0
mov edx, 0x113f
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov ecx, dword [0x1800cad8c]
call fcn.180021120
mov edx, 0x1017
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
cmp dword [0x1800cab54], esi
jne 0x18000bde8
mov edx, 0x8004
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov esi, r12d
mov ecx, esi
call fcn.1800306b0
mov ecx, dword [0x1800cab54]
mov rsi, qword [rsp + 0x358]
test ecx, ecx
je 0x18000be5a
cmp ecx, r12d
jne 0x18000bf4e
mov edx, 0x801d
mov r8d, r12d
mov ecx, r12d
call fcn.180020f20
mov edx, 0x801e
mov r8d, r12d
mov ecx, r12d
call fcn.180020f20
mov edx, 0x8015
mov r8d, r12d
mov ecx, r12d
call fcn.180020f20
mov edx, 0x803e
mov r8d, r12d
mov ecx, r12d
call fcn.180020f20
mov edx, 0x8032
mov ecx, r12d
jmp 0x18000bf46
mov rax, qword [case.0x180030475.0]
mov edx, 0x10
mov ecx, 0x7216
mov r8d, 0xffffffff
call rax
test ax, ax
js 0x18000bf12
mov edx, 0x8005
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x8006
mov r8d, ebx
xor ecx, ecx
call fcn.180020f20
mov edx, 0x8007
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x8008
mov r8d, ebx
xor ecx, ecx
call fcn.180020f20
mov edx, 0x8009
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x800a
mov r8d, ebx
xor ecx, ecx
call fcn.180020f20
mov edx, 0x800b
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x800c
mov r8d, ebx
xor ecx, ecx
call fcn.180020f20
mov edx, 0x800d
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x800e
mov r8d, ebx
xor ecx, ecx
call fcn.180020f20
mov edx, 0x8001
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x8010
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x8013
mov r8d, r12d
xor ecx, ecx
call fcn.180020f20
mov edx, 0x8014
xor ecx, ecx
mov r8d, r12d
call fcn.180020f20
mov rbx, qword [rsp + 0x350]
mov r12, qword [rsp + 0x338]
mov rcx, qword [rbp + 0x210]
xor rcx, rsp
call fcn.180032180
add rsp, 0x340
pop rbp
ret