Function at 0x1801212b0
Capabilities:
Read .ini file

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov qword [rsp + 0x40], 0xfffffffffffffffe
movaps xmmword [rsp + 0x120], xmm6
mov rax, qword [0x180332088]
xor rax, rsp
mov qword [rbp + 0x10], rax
mov rbx, r9
mov rsi, rdx
mov rdi, rcx
mov qword [rsp + 0x78], rdx
mov r14, qword [rbp + 0x80]
mov edx, dword [r8]
mov eax, edx
cmp edx, 0x111
ja 0x180121678
cmp eax, 0x111
je 0x18012163d
dec eax
cmp eax, 0xa2
ja case.0x18012133b.3
lea r8, [0x180000000]
movzx eax, byte [r8 + rax + 0x121a98]
mov ecx, dword [r8 + rax*4 + 0x121a64]
add rcx, r8
jmp rcx
mov qword [rdi + 8], rsi
call fcn.18007b4b0
movzx eax, al
mov dword [rdi + 0x1c8], eax
call fcn.180211b44
mov r10, qword [rax]
xor r9d, r9d
mov r8d, 0x91
lea rdx, [rsp + 0x78]
mov rcx, rax
call qword [r10 + 0x20]
nop
lea rdx, [rsp + 0x78]
cmp qword [rbp - 0x70], 8
cmovae rdx, qword [rsp + 0x78]
xor ebx, ebx
mov ecx, ebx
lea r8, str.default
nop dword [rax + rax]
movzx eax, word [rdx + rcx*2]
inc rcx
cmp ax, word [r8 + rcx*2 - 2]
jne 0x1801213d9
cmp rcx, 8
jne 0x180121390
call fcn.180072820
lea r9, [rax + 0x168]
cmp qword [r9 + 0x18], 8
jb 0x1801213bb
mov r9, qword [r9]
xor r8d, r8d
lea rdx, str.MakeStatusWndShow
lea rcx, [0x1802abe90]
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov ecx, eax
call fcn.1800ad930
mov dword [rsp + 0x30], 0x13
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rsi
call qword [sym.imp.USER32.dll_SetWindowPos]
mov rcx, qword [rdi + 0x160]
mov rax, qword [rcx]
mov edx, 0x67
call qword [rax]
mov ecx, eax
test eax, eax
jle 0x180121436
mov eax, 0x64
sub eax, ecx
cmp eax, 0x64
ja 0x180121436
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x1802bf788]
cvttsd2si eax, xmm0
mov byte [rdi + 0x2c], al
jmp 0x18012143a
mov byte [rdi + 0x2c], 0xff
xor edx, edx
lea r8d, [rdx + 0x64]
lea rcx, [rbp - 0x60]
call fcn.180233580
movsd xmm0, qword [rdi + 8]
movsd qword [rbp - 0x60], xmm0
mov rcx, qword [rdi + 0x160]
mov rax, qword [rcx]
mov r9d, 8
lea r8, [rbp - 0x60]
mov edx, 0x9a
call qword [rax + 8]
xor eax, eax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x48], 0x30
mov rax, qword [rdi + 8]
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x58], 0x276c
lea rdx, [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHAppBarMessage]
xor r9d, r9d
lea edx, [r9 + 1]
mov r8d, 0x3e8
mov rcx, rsi
call qword [sym.imp.USER32.dll_SetTimer]
nop
mov r8, qword [rbp - 0x70]
cmp r8, 8
jb case.0x18012133b.2
inc r8
mov rdx, qword [rsp + 0x78]
lea rcx, [rsp + 0x78]
call fcn.18005cac0
jmp case.0x18012133b.2
mov rax, qword [rdi]
mov rdx, rsi
mov rcx, rdi
call qword [rax + 8]
jmp case.0x18012133b.2
call qword [sym.imp.USER32.dll_ReleaseCapture]
xor ebx, ebx
mov dword [rdi + 0x44], ebx
mov rcx, rsi
call qword [sym.imp.USER32.dll_SetCapture]
mov dword [rdi + 0x44], 1
jmp case.0x18012133b.2
mov rax, qword [rdi]
mov rdx, rsi
mov rcx, rdi
call qword [rax + 8]
mov eax, 1
jmp 0x180121a41
mov r9, r14
mov r8, rbx
mov rdx, rsi
mov rcx, rdi
call fcn.180129700
jmp case.0x18012133b.2
mov r9, r14
lea rdx, [rsp + 0x78]
mov rcx, rdi
call fcn.1800dbf80
jmp case.0x18012133b.2
movsx eax, word [r14]
mov dword [rsp + 0x78], eax
movsx eax, word [r14 + 2]
mov dword [rsp + 0x7c], eax
mov rax, qword [rsp + 0x78]
mov qword [rdi + 0x14], rax
lea rdx, [rdi + 0x14]
mov rcx, rsi
call qword [sym.imp.USER32.dll_ClientToScreen]
mov rax, qword [rdi + 0x14]
mov qword [rdi + 0x1c], rax
jmp case.0x18012133b.2
movsx ecx, word [r14]
movsx eax, word [r14 + 2]
test ecx, ecx
jle case.0x18012133b.2
test eax, eax
jle case.0x18012133b.2
mov qword [rdi + 8], rsi
mov dword [rdi + 0x100], ecx
mov dword [rdi + 0x104], eax
call fcn.180211b44
mov r9, qword [rax]
mov r8d, dword [rdi + 0x100]
mov edx, 0x7d
mov rcx, rax
call qword [r9 + 8]
call fcn.180211b44
mov r9, qword [rax]
mov r8d, dword [rdi + 0x104]
mov edx, 0x7c
mov rcx, rax
call qword [r9 + 8]
jmp case.0x18012133b.2
call fcn.1800ea7b0
mov rcx, rax
mov rdx, qword [r14]
call fcn.1800fa760
jmp case.0x18012133b.2
call fcn.1800ea7b0
mov rcx, rax
mov rdx, qword [r14]
call fcn.1800fa7a0
jmp case.0x18012133b.2
mov rcx, rdi
cmp qword [r9], 0
je 0x180121633
call fcn.180121d50
jmp case.0x18012133b.2
call fcn.180121e00
jmp case.0x18012133b.2
mov rax, qword [0x180344fe8]
test rax, rax
jne 0x180121666
lea ecx, [rax + 0x70]
call fcn.1802037c4
mov qword [rsp + 0x78], rax
mov rcx, rax
call fcn.18012e5a0
nop
mov qword [0x180344fe8], rax
mov r8, qword [rax]
movzx edx, word [rbx]
mov rcx, rax
call qword [r8 + 0x20]
jmp case.0x18012133b.2
cmp eax, 0x317
ja 0x180121783
je 0x180121776
cmp eax, 0x203
ja 0x180121732
je 0x18012171d
sub eax, 0x113
je 0x18012170d
sub eax, 0xc
je 0x1801216f4
sub eax, 0xe1
je 0x1801216e1
sub eax, 1
je 0x1801216ce
cmp eax, 1
jne case.0x18012133b.3
mov r9, r14
mov r8, rbx
mov rdx, rsi
call fcn.180128a20
jmp case.0x18012133b.2
mov r9, r14
mov r8, rbx
mov rdx, rsi
call fcn.180128900
jmp case.0x18012133b.2
mov r9, qword [r14]
mov r8, qword [rbx]
mov rdx, rsi
call fcn.180129b40
jmp case.0x18012133b.2
movzx ebx, word [r9]
call fcn.1800ea7b0
mov rcx, rax
mov r8d, ebx
call fcn.1800fa890
jmp case.0x18012133b.2
mov r8, qword [r9]
mov rdx, rsi
call fcn.180121b40
jmp case.0x18012133b.2
mov r9, r14
mov r8, rbx
lea rdx, [rsp + 0x78]
call fcn.1800dd710
jmp case.0x18012133b.2
sub eax, 0x205
je 0x180121766
sub eax, 0xf
je case.0x18012133b.2
sub eax, 2
je case.0x18012133b.2
cmp eax, 0x8d
jne case.0x18012133b.3
mov r9, r14
mov rdx, rsi
call fcn.180129d20
jmp case.0x18012133b.2
mov r9, r14
mov rdx, rsi
call fcn.1801294f0
jmp case.0x18012133b.2
mov rdx, qword [r9]
call fcn.180122450
jmp case.0x18012133b.2
cmp eax, 0x7e9
ja 0x180121835
je 0x1801217eb
sub eax, 0x4c9
je 0x1801217de
sub eax, 0x64
je 0x1801217ca
sub eax, 3
je 0x1801217ba
cmp eax, 1
jne case.0x18012133b.3
mov r8, qword [r9]
mov rdx, rsi
call fcn.1801220b0
jmp case.0x18012133b.2
mov r9, qword [r14]
mov r8, qword [rbx]
call fcn.180122020
jmp case.0x18012133b.2
cmp qword [r9], 1
jne case.0x18012133b.2
call fcn.1800ac970
jmp case.0x18012133b.2
mov rdx, rsi
call fcn.1800de0d0
jmp case.0x18012133b.2
mov r14d, dword [r14]
mov rbx, qword [rcx + 8]
mov rcx, rbx
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x18012180e
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, rbx
call qword [sym.imp.USER32.dll_InvalidateRect]
mov rcx, rdi
call fcn.18011e350
mov rdx, rsi
test r14d, r14d
jne 0x18012182b
mov rcx, rdi
call fcn.180120df0
jmp case.0x18012133b.2
call fcn.1800de140
jmp case.0x18012133b.2
sub eax, 0x7ec
je 0x180121970
sub eax, 1
je case.0x18012133b.2
sub eax, 2
je 0x180121946
cmp eax, 0x1f7d
je 0x18012186d
mov r9, qword [r14]
mov r8, qword [rbx]
mov rcx, rsi
call qword [sym.imp.USER32.dll_DefWindowProcW]
jmp 0x180121a41
cmp qword [r9], 2
jne case.0x18012133b.2
mov rcx, qword [rcx + 0x160]
mov rax, qword [rcx]
mov edx, 0x4c
call qword [rax]
mov ebx, eax
mov rcx, qword [rdi + 0x160]
mov r8, qword [rcx]
mov edx, 0x4e
call qword [r8]
test ebx, ebx
jne case.0x18012133b.2
test eax, eax
je case.0x18012133b.2
cmp dword [r14], 1
jne 0x1801218f6
call fcn.18007b4b0
test al, al
je case.0x18012133b.2
mov dword [rdi + 0x1c8], 1
xor r9d, r9d
xor r8d, r8d
mov edx, 0x4c8
mov rcx, rsi
call qword [sym.imp.USER32.dll_PostMessageW]
mov rcx, rsi
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je case.0x18012133b.2
mov rcx, rsi
jmp 0x180121a31
cmp dword [rdi + 0x1c8], 0
je 0x180121939
cmp dword [rdi + 0x1cc], 0
je 0x180121939
xor r9d, r9d
mov edx, 0x4c8
lea r8d, [r9 + 4]
mov rcx, rsi
call qword [sym.imp.USER32.dll_PostMessageW]
mov rcx, rsi
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x180121939
xor edx, edx
lea r8d, [rdx + 1]
mov rcx, rsi
call qword [sym.imp.USER32.dll_InvalidateRect]
xor ebx, ebx
mov dword [rdi + 0x1c8], ebx
jmp case.0x18012133b.2
mov dword [rsp + 0x30], 0x13
xor ebx, ebx
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
or rdx, 0xffffffffffffffff
mov rcx, rsi
call qword [sym.imp.USER32.dll_SetWindowPos]
jmp case.0x18012133b.2
call fcn.18008ab90
movaps xmm6, xmm0
mov rbx, qword [rbx]
movzx eax, word [r14]
mov dword [rdi + 0x1ac], eax
movzx eax, word [r14 + 2]
mov dword [rdi + 0x1b0], eax
lea rdx, [rsp + 0x78]
mov rcx, qword [rdi + 8]
call qword [sym.imp.USER32.dll_GetWindowRect]
movd xmm1, dword [rsp + 0x7c]
cvtdq2ps xmm1, xmm1
divss xmm1, xmm6
xor ecx, ecx
movabs r8, 0x8000000000000000
movss xmm2, dword [0x1802bf874]
comiss xmm1, xmm2
jb 0x1801219d1
subss xmm1, xmm2
comiss xmm1, xmm2
jae 0x1801219d1
mov rcx, r8
cvttss2si rax, xmm1
add rax, rcx
movzx edx, ax
shl edx, 0x10
movd xmm0, dword [rsp + 0x78]
cvtdq2ps xmm0, xmm0
divss xmm0, xmm6
xor ecx, ecx
comiss xmm0, xmm2
jb 0x1801219ff
subss xmm0, xmm2
comiss xmm0, xmm2
jae 0x1801219ff
mov rcx, r8
cvttss2si rax, xmm0
add rax, rcx
movzx ecx, ax
or edx, ecx
movsxd r9, edx
mov r8, qword [rdi + 8]
mov edx, 0x7e8
mov rcx, rbx
call qword [sym.imp.USER32.dll_PostMessageW]
mov rcx, rbx
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je case.0x18012133b.2
mov rcx, rbx
mov r8d, 1
xor edx, edx
call qword [sym.imp.USER32.dll_InvalidateRect]
xor eax, eax
mov rcx, qword [rbp + 0x10]
xor rcx, rsp
call fcn.1802037a0
movaps xmm6, xmmword [rsp + 0x120]
add rsp, 0x130
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret