Function at 0x180031480
Capabilities:
Read .ini file

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0xff0]
mov eax, 0x10f0
call fcn.18016e500
sub rsp, rax
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0x1120], rbx
mov rax, qword [0x18020b020]
xor rax, rsp
mov qword [rbp + 0xfe0], rax
mov rsi, r9
mov r14, r8
mov rdi, rdx
xor r15d, r15d
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x30], r15
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x30], 7
mov word [rbp - 0x48], r15w
lea rdx, [rbp - 0x48]
lea ecx, [r15 + 0x1a]
call fcn.18008cef0
test al, al
je 0x180031b9b
cmp qword [rbp - 0x38], r15
je 0x180031b9b
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x58], xmm0
movdqa xmm1, xmmword [0x1801b12f0]
movdqu xmmword [rbp - 0x58], xmm1
mov word [rbp - 0x68], r15w
mov r8, rdi
lea rdx, [rbp - 0x48]
lea rcx, [rsp + 0x38]
call fcn.180080ec0
mov rbx, rax
lea rax, [rbp - 0x68]
cmp rax, rbx
je 0x180031562
lea rcx, [rbp - 0x68]
call fcn.1800038d0
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x68], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x58], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 7
mov word [rbx], r15w
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x1800315a4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003159f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180031c19
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r15w
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
movdqa xmm1, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x68], xmm1
mov word [rsp + 0x58], r15w
mov r8d, 0xa
lea rdx, str.config.ini
lea rcx, [rsp + 0x58]
call fcn.180003950
nop
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x68]
lea rcx, [rsp + 0x38]
call fcn.180080ec0
mov rbx, rax
lea rax, [rbp - 0x68]
cmp rax, rbx
je 0x180031634
lea rcx, [rbp - 0x68]
call fcn.1800038d0
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x68], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x58], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 7
mov word [rbx], r15w
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x180031676
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180031671
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180031c1f
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r15w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x1800316cc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800316c7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180031c25
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r15w
lea rcx, [rbp - 0x68]
call fcn.180084d20
test al, al
je 0x180031b45
xor edx, edx
mov r8d, 0x1000
lea rcx, [rbp - 0x20]
call fcn.18013b560
lea rax, [rbp - 0x68]
cmp qword [rbp - 0x50], 8
cmovae rax, qword [rbp - 0x68]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x800
lea r9, [rbp - 0x20]
lea r8, [0x18019d818]
lea rdx, str.Version
lea rcx, str.Upgrade
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
movzx eax, word [rbp - 0x20]
cmp ax, word [0x18019d818]
je 0x180031b45
mov r8, rdi
lea rdx, [rbp - 0x48]
lea rcx, [rsp + 0x78]
call fcn.180080ec0
nop
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
movdqa xmm1, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x68], xmm1
mov word [rsp + 0x58], r15w
mov r8d, 0xb
lea rdx, str.Application
lea rcx, [rsp + 0x58]
call fcn.180003950
nop
lea r8, [rsp + 0x58]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x38]
call fcn.180080ec0
mov rbx, rax
lea rax, [rsp + 0x78]
cmp rax, rbx
je 0x1800317df
lea rcx, [rsp + 0x78]
call fcn.1800038d0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x78], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 7
mov word [rbx], r15w
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x180031821
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18003181c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180031c2b
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r15w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x180031877
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180031872
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180031c31
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r15w
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
movdqa xmm1, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x48], xmm1
mov word [rsp + 0x38], r15w
lea rax, [rbp - 0x20]
mov r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], 0
jne 0x1800318b3
lea rdx, [rbp - 0x20]
lea rcx, [rsp + 0x38]
call fcn.180003950
nop
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x58]
call fcn.180080ec0
mov rbx, rax
lea rax, [rsp + 0x78]
cmp rax, rbx
je 0x180031918
lea rcx, [rsp + 0x78]
call fcn.1800038d0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x78], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 7
mov word [rbx], r15w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x18003195a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180031955
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180031c37
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r15w
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x1800319b0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800319ab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180031c3d
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r15w
mov r8, r14
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x38]
call fcn.180080ec0
mov rbx, rax
lea rax, [rsp + 0x78]
cmp rax, rbx
je 0x180031a0d
lea rcx, [rsp + 0x78]
call fcn.1800038d0
movups xmm0, xmmword [rbx]
movups xmmword [rsp + 0x78], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rbp - 0x78], xmm1
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], 7
mov word [rbx], r15w
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x180031a4f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180031a4a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180031c43
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r15w
lea rcx, [rsp + 0x78]
call fcn.180084d20
test al, al
jne 0x180031a75
xor bl, bl
jmp 0x180031aef
lea rdx, [rsp + 0x78]
lea rcx, [rsp + 0x38]
call fcn.18008d7f0
nop
mov rdx, rax
mov rcx, rsi
call fcn.180003810
nop
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x180031ad3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180031ace
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180031c49
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r15w
cmp qword [rsi + 0x10], 0
setne bl
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x180031b30
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180031b2b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180031c4f
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r15w
jmp 0x180031b47
xor bl, bl
mov rdx, qword [rbp - 0x50]
cmp rdx, 8
jb 0x180031b87
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180031b82
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180031c55
call fcn.18011ca94
movdqa xmm0, xmmword [0x1801b12f0]
movdqu xmmword [rbp - 0x58], xmm0
mov word [rbp - 0x68], r15w
jmp 0x180031b9d
xor bl, bl
mov rdx, qword [rbp - 0x30]
cmp rdx, 8
jb 0x180031bd9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180031bd4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180031c13
call fcn.18011ca94
mov qword [rbp - 0x38], r15
mov qword [rbp - 0x30], 7
mov word [rbp - 0x48], r15w
movzx eax, bl
mov rcx, qword [rbp + 0xfe0]
xor rcx, rsp
call fcn.18011c650
mov rbx, qword [rsp + 0x1120]
add rsp, 0x10f0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
int3
call fcn.180144c64
int3
call fcn.180144c64
nop
call fcn.180144c64
nop
call fcn.180144c64
int3