Function at 0x1400e2620
Capabilities:
Read .ini file

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], r9
mov dword [r11 + 0x18], r8d
mov dword [rsp + 0x10], edx
mov qword [r11 + 8], rcx
push rbx
push rsi
push rdi
push r12
sub rsp, 0xc8
mov rdi, qword [0x1401fbae0]
xor eax, eax
mov rbx, rcx
mov esi, eax
mov r12d, eax
test rdi, rdi
je 0x1400e2de7
cmp qword [rcx], rax
je 0x1400e2de7
mov qword [r11 - 0x28], rbp
mov qword [r11 - 0x30], r13
mov qword [r11 - 0x38], r14
mov qword [r11 - 0x40], r15
test rdi, rdi
je 0x1400e26ae
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov rcx, rdi
mov r14d, dword [rax + 0x18]
movzx r13d, word [rax + 0xe]
mov r15d, dword [rax + 4]
mov ebp, dword [rax + 8]
mov dword [rsp + 0x48], r14d
mov r14d, dword [rax + 0x1c]
mov dword [rsp + 0x4c], r14d
mov dword [rsp + 0x50], r13d
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
jmp 0x1400e26d1
mov eax, dword [rsp + 0x40]
mov r13d, dword [rsp + 0x40]
mov ebp, dword [rsp + 0x40]
mov r15d, dword [rsp + 0x40]
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x40]
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x50], r13d
mov rax, qword [rbx]
mov qword [rsp + 0x58], rax
test rax, rax
je 0x1400e2700
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov rcx, qword [rsp + 0x58]
mov r14d, dword [rax + 4]
mov edi, dword [rax + 8]
movzx r13d, word [rax + 0xe]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
jmp 0x1400e270e
mov r13d, dword [rsp + 0x40]
mov edi, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x40]
mov r8d, dword [rsp + 0xf8]
mov edx, dword [rsp + 0x120]
mov ecx, 1
lea eax, [r8 - 2]
test eax, 0xfffffffd
jne 0x1400e27c5
cmp r15d, r14d
je 0x1400e27c5
test edx, edx
je 0x1400e27c5
movd xmm1, edi
movd xmm0, r14d
mov r8d, ecx
lea r9, [0x140208860]
lea rdx, str.UseResample
lea rcx, str.Resize
mov r14d, r15d
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
divss xmm1, xmm0
movd xmm0, r15d
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm1
cvttss2si edi, xmm0
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov r8d, edi
mov edx, r15d
mov rcx, qword [rbx]
test eax, eax
je 0x1400e282e
mov eax, dword [0x1401fbc40]
mov r9d, dword [0x1401f7150]
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], esi
mov dword [rsp + 0x28], eax
mov eax, dword [0x1401f7154]
mov dword [rsp + 0x20], eax
call fcn.1400ae670
jmp 0x1400e2833
lea eax, [r8 - 1]
test eax, 0xfffffffd
jne 0x1400e285c
cmp ebp, edi
je 0x1400e285c
test edx, edx
je 0x1400e285c
movd xmm1, edi
movd xmm0, r14d
mov r8d, ecx
lea r9, [0x140208860]
lea rdx, str.UseResample
lea rcx, str.Resize
mov edi, ebp
cvtdq2ps xmm0, xmm0
cvtdq2ps xmm1, xmm1
divss xmm1, xmm0
movd xmm0, ebp
cvtdq2ps xmm0, xmm0
divss xmm0, xmm1
cvttss2si r14d, xmm0
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov r8d, ebp
mov edx, r14d
jmp 0x1400e278c
call fcn.1400af950
mov rsi, rax
test rax, rax
je 0x1400e2a7c
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400e2859
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov qword [rbx], r12
mov qword [rbx], rsi
mov rax, qword [rbx]
mov qword [rsp + 0x58], rax
test rax, rax
je 0x1400e2889
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov rcx, qword [rsp + 0x58]
mov r14d, dword [rax + 4]
mov edi, dword [rax + 8]
movzx r13d, word [rax + 0xe]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov eax, dword [rsp + 0x50]
cmp eax, r13d
je 0x1400e292a
jge 0x1400e28b2
mov ecx, eax
mov edx, 1
or r9d, 0xffffffff
shl edx, cl
mov rcx, qword [rbx]
or r8d, r9d
call fcn.14003f8c0
jmp 0x1400e28e4
cmp r13d, 1
jne 0x1400e28c2
mov rcx, qword [rbx]
call fcn.14009bc40
jmp 0x1400e28e4
cmp r13d, 4
jne 0x1400e28d2
mov rcx, qword [rbx]
call fcn.14009cdc0
jmp 0x1400e28e4
cmp r13d, 8
jne 0x1400e29d8
mov rcx, qword [rbx]
call fcn.14009d4e0
mov r12, rax
test rax, rax
je 0x1400e29d8
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400e290e
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov qword [rbx], 0
mov rcx, r12
mov qword [rbx], r12
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov rcx, r12
mov r14d, dword [rax + 4]
mov edi, dword [rax + 8]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
cmp dword [rsp + 0x100], 0
je 0x1400e29a5
mov rdx, qword [rsp + 0x108]
mov rcx, qword [rbx]
lea rax, [rsp + 0x40]
mov r9d, edi
mov r8d, r14d
mov qword [rsp + 0x20], rax
call fcn.1400e24a0
mov r13, rax
test rax, rax
je 0x1400e2984
cmp dword [rsp + 0x40], 0
jne 0x1400e2984
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400e2981
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov qword [rbx], 0
mov qword [rbx], r13
mov r13, qword [rbx]
test r13, r13
je 0x1400e29a5
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov rcx, r13
mov r14d, dword [rax + 4]
mov edi, dword [rax + 8]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov ecx, dword [rsp + 0xf8]
lea eax, [rcx - 2]
test eax, 0xfffffffd
je 0x1400e29fa
lea eax, [rcx - 1]
test eax, 0xfffffffd
jne 0x1400e2a4e
cmp ebp, edi
lea ecx, [r14 + r15]
mov edx, edi
cmovg edx, ebp
add ecx, dword [rsp + 0x110]
jmp 0x1400e2a0e
test rsi, rsi
je 0x1400e2a7c
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GlobalFree]
xor eax, eax
jmp 0x1400e2dc7
lea edx, [rdi + rbp]
mov ecx, r14d
add edx, dword [rsp + 0x110]
cmp r15d, r14d
cmovg ecx, r15d
mov eax, dword [rsp + 0x4c]
mov r13d, dword [rsp + 0x50]
xor r9d, r9d
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x48]
mov r8d, r13d
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x118]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], 0
call fcn.14003dd80
mov r10, rax
mov qword [rsp + 0x70], rax
test rax, rax
jne 0x1400e2a83
test rsi, rsi
je 0x1400e2a65
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GlobalFree]
test r12, r12
je 0x1400e2a7c
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GlobalFree]
xor eax, eax
jmp 0x1400e2dc7
cmp r13d, 1
jne 0x1400e2a9d
mov rdx, qword [0x1401fbae0]
mov rcx, r10
call fcn.1400e7f20
mov r10, qword [rsp + 0x70]
xor r8d, r8d
cmp ebp, edi
mov r12d, edi
cmovg r12d, ebp
mov r9d, r12d
sub r9d, ebp
cmp dword [rsp + 0x120], r8d
jne 0x1400e2ae6
cmp dword [rsp + 0x128], r8d
je 0x1400e2ae6
cmp r14d, r15d
jle 0x1400e2ad6
mov eax, r14d
sub eax, r15d
cdq
sub eax, edx
sar eax, 1
mov r8d, eax
cmp edi, ebp
jle 0x1400e2ae6
mov eax, edi
sub eax, ebp
cdq
sub eax, edx
sar eax, 1
mov r9d, eax
mov ecx, dword [rsp + 0xf8]
sub ecx, 2
je 0x1400e2b1b
dec ecx
je 0x1400e2b0e
mov rdx, qword [0x1401fbae0]
dec ecx
mov rcx, r10
je 0x1400e2b09
xor r8d, r8d
jmp 0x1400e2b30
xor r9d, r9d
jmp 0x1400e2b30
mov r8d, dword [rsp + 0x110]
add r8d, r14d
jmp 0x1400e2b26
mov r9d, dword [rsp + 0x110]
add r9d, edi
mov rdx, qword [0x1401fbae0]
mov rcx, r10
call fcn.14003ff20
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov rcx, qword [rbx]
mov edx, dword [rax]
mov r8d, dword [rax + 0x20]
mov rsi, rax
add rdx, rax
mov qword [rsp + 0x88], rax
lea rax, [rdx + r8*4]
mov qword [rsp + 0x60], rax
movzx eax, word [rsi + 0xe]
imul eax, dword [rsi + 4]
add eax, 0x1f
cdq
and edx, 0x1f
add eax, edx
sar eax, 5
shl eax, 2
movsxd r13, eax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov ecx, dword [rsp + 0xf8]
mov edx, dword [rax]
mov r8d, dword [rax + 0x20]
mov r9, rax
add rdx, rax
mov qword [rsp + 0x80], rax
movzx eax, word [rax + 0xe]
lea r11, [rdx + r8*4]
imul eax, dword [r9 + 4]
add eax, 0x1f
mov qword [rsp + 0x68], r11
cdq
and edx, 0x1f
add eax, edx
sar eax, 5
shl eax, 2
movsxd r10, eax
lea eax, [rcx - 2]
mov qword [rsp + 0x78], r10
test eax, 0xfffffffd
je 0x1400e2eac
lea eax, [rcx - 1]
test eax, 0xfffffffd
jne 0x1400e2d92
mov r9d, dword [rsp + 0x110]
sub r12d, edi
mov esi, 0
add r9d, r15d
mov dword [rsp + 0x4c], r9d
lea r8d, [r9 + r9*2]
test r8d, r8d
cmovs r8d, esi
cmp ecx, 3
cmove r8d, esi
mov dword [rsp + 0x48], r8d
cmp dword [rsp + 0x120], esi
jne 0x1400e2c33
mov eax, dword [rsp + 0x128]
test eax, eax
je 0x1400e2c33
cmp edi, ebp
jge 0x1400e2c33
sub ebp, edi
mov eax, ebp
cdq
sub eax, edx
sar eax, 1
mov r12d, eax
mov eax, dword [rsp + 0x50]
cmp eax, 0x18
jne 0x1400e2c45
lea ecx, [r14 + r14*2]
movsxd rdx, ecx
jmp 0x1400e2c59
lea eax, [r14 + 7]
cdq
and edx, 7
add eax, edx
sar eax, 3
movsxd rdx, eax
mov eax, dword [rsp + 0x50]
cmp rdx, r13
mov r11, r13
movsxd rcx, edi
cmovb r11, rdx
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x58], r11
test edi, edi
jle 0x1400e2d94
mov rbp, qword [rsp + 0x68]
movsxd r15, r12d
cdqe
mov ebx, esi
mov rsi, qword [rsp + 0x60]
mov rdi, rbp
imul r15, r13
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x88], rax
cmp rax, 0x18
jne 0x1400e2ccd
movsxd rcx, r8d
movsxd rax, r12d
movsxd rdx, ebx
mov r8, r11
imul rax, r13
imul rdx, r10
add rax, rsi
add rcx, rax
add rdx, rbp
call fcn.1400fb0e0
jmp 0x1400e2d50
mov eax, r9d
mov r8d, r14d
cdq
and edx, 7
add eax, edx
mov r9d, eax
and eax, 7
sub eax, edx
sar r9d, 3
mov r10d, eax
and r8d, 0x80000007
jge 0x1400e2cfb
dec r8d
or r8d, 0xfffffff8
inc r8d
test r9d, r9d
mov edx, 0
cmovs r9d, edx
test eax, eax
cmovs r10d, edx
cmp dword [rsp + 0xf8], 3
jne 0x1400e2d1c
mov r9d, edx
jmp 0x1400e2d25
test r10d, r10d
jne 0x1400e2df4
movsxd rax, r9d
movsxd rcx, r12d
movsxd rdx, ebx
mov r8, r11
imul rdx, qword [rsp + 0x78]
imul rcx, r13
add rcx, rax
add rcx, qword [rsp + 0x60]
add rdx, rbp
call fcn.1400fb0e0
mov rsi, qword [rsp + 0x60]
mov r10, qword [rsp + 0x78]
mov r11, qword [rsp + 0x58]
mov r8d, dword [rsp + 0x48]
mov rax, qword [rsp + 0x88]
mov r9d, dword [rsp + 0x4c]
add rdi, r10
inc ebx
inc r12d
add r15, r13
dec qword [rsp + 0x90]
mov qword [rsp + 0x50], rdi
jne 0x1400e2ca0
mov rbx, qword [rsp + 0xf0]
xor esi, esi
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov rcx, qword [rbx]
test rcx, rcx
je 0x1400e2db7
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov qword [rbx], rsi
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rax, qword [rsp + 0x70]
mov r14, qword [rsp + 0xb0]
mov r13, qword [rsp + 0xb8]
mov rbp, qword [rsp + 0xc0]
mov r15, qword [rsp + 0xa8]
add rsp, 0xc8
pop r12
pop rdi
pop rsi
pop rbx
ret
mov ebp, 8
movsxd rsi, r9d
mov r11d, 0xff
sub ebp, r10d
add rsi, r15
mov eax, edx
add rsi, qword [rsp + 0x60]
mov ecx, ebp
shl r11b, cl
mov rcx, qword [rsp + 0x58]
and r11b, byte [rsi]
test ecx, ecx
jle 0x1400e2e75
mov eax, ecx
mov rdx, rdi
sub rsi, rdi
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x80], rax
mov edi, ecx
nop word [rax + rax]
movzx eax, byte [rdx]
movzx ecx, r10b
lea rdx, [rdx + 1]
shr al, cl
mov ecx, ebp
or al, r11b
mov byte [rsi + rdx - 1], al
movzx r11d, byte [rdx - 1]
shl r11b, cl
dec rdi
jne 0x1400e2e40
mov rax, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x80]
mov rbp, qword [rsp + 0x68]
test r8d, r8d
je 0x1400e2d4b
add eax, r9d
movsxd rcx, eax
cmp rcx, r13
jae 0x1400e2d4b
mov rcx, qword [rsp + 0x60]
movsxd rax, r9d
add rax, r15
mov rsi, rcx
add rax, rdx
mov byte [rax + rcx], r11b
jmp 0x1400e2d50
mov ecx, dword [rsi]
mov edx, dword [rsi + 0x20]
mov r12, r10
add rcx, rsi
cmp dword [rsp + 0xf8], 4
lea r8, [rcx + rdx*4]
mov qword [rsp + 0x58], r8
jne 0x1400e2ed9
movsxd rax, ebp
imul rax, r13
add r8, rax
mov qword [rsp + 0x58], r8
xor r8d, r8d
mov esi, r8d
cmp dword [rsp + 0x120], r8d
jne 0x1400e2f40
mov eax, dword [rsp + 0x128]
test eax, eax
je 0x1400e2f40
cmp r14d, r15d
jge 0x1400e2f40
sub r15d, r14d
mov eax, r15d
cdq
sub eax, edx
sar eax, 1
mov esi, eax
mov eax, dword [rsp + 0x50]
cmp eax, 1
jne 0x1400e2f38
mov eax, esi
cdq
and edx, 7
lea esi, [rdx + rax]
mov eax, r14d
cdq
sar esi, 3
and edx, 7
add eax, edx
mov ecx, eax
and eax, 7
sar ecx, 3
movsxd r12, ecx
cmp eax, edx
je 0x1400e2f40
inc r12
jmp 0x1400e2f40
cmp eax, 0x18
jne 0x1400e2f40
lea esi, [rsi + rsi*2]
mov r14, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x58]
mov edi, r8d
mov ecx, dword [r9 + 8]
cmp dword [r14 + 8], ecx
cmovl ecx, dword [r14 + 8]
cmp edi, ecx
jge 0x1400e2d8a
movsxd rax, edi
movsxd rcx, esi
mov r8, r12
mov rdx, rax
imul rax, r13
imul rdx, r10
add rax, rbx
add rcx, rax
add rdx, r11
call fcn.1400fb0e0
mov r9, qword [rsp + 0x80]
mov r10, qword [rsp + 0x78]
mov r11, qword [rsp + 0x68]
inc edi
jmp 0x1400e2f50