Function at 0x1800940a0
Capabilities:
Copy file

Disassembly:
mov r11, rsp
sub rsp, 0x248
mov rax, qword [0x180248950]
xor rax, rsp
mov qword [rsp + 0x230], rax
mov rax, qword [rcx + 0x28]
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rsi
mov rdx, qword [rax]
mov qword [r11 - 8], rdi
mov rsi, rcx
mov rbx, qword [rdx]
cmp rbx, rdx
je 0x180094193
nop
mov rdi, qword [rbx + 0x28]
lea rdx, [0x1801ebd34]
lea rcx, [rsp + 0x20]
mov rax, qword [rdi + 8]
movzx r8d, byte [rax]
call fcn.1800b5a54
lea rdx, [rdi + 0x10]
or rax, 0xffffffffffffffff
inc rax
cmp word [rdx + rax*2], 0
jne 0x180094105
test eax, eax
jle 0x180094136
lea r9, [rsi + 0xf8]
cmp qword [r9 + 0x18], 8
jb 0x180094124
mov r9, qword [r9]
lea r8, [rsp + 0x20]
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
cmp byte [rbx + 0x19], 0
jne 0x180094186
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x180094160
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x180094186
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180094152
jmp 0x180094186
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x180094183
nop word [rax + rax]
cmp rbx, qword [rax + 0x10]
jne 0x180094183
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x180094170
mov rbx, rax
mov rax, qword [rsi + 0x28]
cmp rbx, qword [rax]
jne 0x1800940e0
mov rax, qword [rsi + 0x30]
mov rcx, qword [rax]
mov rbx, qword [rcx]
cmp rbx, rcx
je 0x180094263
nop word [rax + rax]
mov rdi, qword [rbx + 0x28]
lea rdx, [0x1801ebd34]
lea rcx, [rsp + 0x20]
mov rax, qword [rdi + 8]
mov r8d, dword [rax]
call fcn.1800b5a54
lea rdx, [rdi + 0x10]
or rax, 0xffffffffffffffff
inc rax
cmp word [rdx + rax*2], 0
jne 0x1800941d4
test eax, eax
jle 0x180094205
lea r9, [rsi + 0xf8]
cmp qword [r9 + 0x18], 8
jb 0x1800941f3
mov r9, qword [r9]
lea r8, [rsp + 0x20]
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
cmp byte [rbx + 0x19], 0
jne 0x180094256
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x18009422f
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x180094256
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x180094221
jmp 0x180094256
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x180094253
nop dword [rax]
cmp rbx, qword [rax + 0x10]
jne 0x180094253
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x180094240
mov rbx, rax
mov rax, qword [rsi + 0x30]
cmp rbx, qword [rax]
jne 0x1800941b0
mov rax, qword [rsi + 0x38]
mov rcx, qword [rax]
mov rbx, qword [rcx]
cmp rbx, rcx
je 0x18009432b
nop word [rax + rax]
mov rdi, qword [rbx + 0x28]
lea rdx, [0x1801ec2c4]
lea rcx, [rsp + 0x20]
mov r8, qword [rdi + 8]
call fcn.1800b5a54
lea rdx, [rdi + 0x10]
or rax, 0xffffffffffffffff
inc rax
cmp word [rdx + rax*2], 0
jne 0x1800942a1
test eax, eax
jle 0x1800942d2
lea r9, [rsi + 0xf8]
cmp qword [r9 + 0x18], 8
jb 0x1800942c0
mov r9, qword [r9]
lea r8, [rsp + 0x20]
lea rcx, str.Setting
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
cmp byte [rbx + 0x19], 0
jne 0x18009431e
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
jne 0x1800942fe
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x18009431e
nop
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x1800942f0
jmp 0x18009431e
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x18009431b
cmp rbx, qword [rax + 0x10]
jne 0x18009431b
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x180094308
mov rbx, rax
mov rax, qword [rsi + 0x38]
cmp rbx, qword [rax]
jne 0x180094280
mov rdi, qword [rsp + 0x240]
lea rbx, [rsi + 0x138]
cmp qword [rbx + 0x18], 8
jb 0x180094346
mov r9, qword [rbx]
jmp 0x180094349
mov r9, rbx
lea r8, [0x1801ebd7c]
lea rdx, str.ModifySetConfig
lea rcx, str.SetModify
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
cmp qword [rbx + 0x18], 8
jb 0x180094370
mov r9, qword [rbx]
jmp 0x180094373
mov r9, rbx
lea r8, [0x1801ebd7c]
lea rdx, str.ModifySetConfig64
lea rcx, str.SetModify
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
cmp qword [rbx + 0x18], 8
jb 0x18009439a
mov r9, qword [rbx]
jmp 0x18009439d
mov r9, rbx
lea r8, [0x1801ebd7c]
lea rdx, str.TempModifySetConfig
lea rcx, str.SetModify
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
cmp qword [rbx + 0x18], 8
jb 0x1800943c2
mov rbx, qword [rbx]
lea r8, [0x1801ebd7c]
lea rdx, str.TempModifySetConfig64
lea rcx, str.SetModify
mov r9, rbx
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
mov rbx, qword [rsp + 0x258]
lea rdx, [rsi + 0x118]
cmp qword [rdx + 0x18], 8
jb 0x1800943f9
mov rdx, qword [rdx]
lea rcx, [rsi + 0xf8]
mov rsi, qword [rsp + 0x260]
cmp qword [rcx + 0x18], 8
jb 0x180094412
mov rcx, qword [rcx]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
mov eax, 1
mov rcx, qword [rsp + 0x230]
xor rcx, rsp
call fcn.1800b5370
add rsp, 0x248
ret