Function at 0x1800282c0
Capabilities:
Move file

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xd0
mov rax, qword [0x1800a5088]
xor rax, rsp
mov qword [rbp + 0x17], rax
lea esi, [rcx*8]
xor r10d, r10d
add esi, ecx
mov r12, r9
shl esi, 5
mov r14, r8
mov r15, rdx
mov r13d, ecx
mov ebx, ecx
cmp ecx, esi
ja 0x180028462
mov edi, dword [rbp - 0x69]
cmp ebx, 0x1afd
ja 0x1800283c4
je 0x180028397
mov eax, ebx
sub eax, 0x46
je 0x180028372
sub eax, 0x47
je 0x18002833d
cmp eax, 0x23
jne 0x18002844a
lea edi, [rax - 0x20]
jmp 0x18002844a
mov eax, dword [0x180096b51]
lea rdx, [0x180096b86]
mov dword [rbp - 0x39], eax
lea rcx, [rbp - 0x34]
movzx eax, byte [0x180096b55]
mov r8d, 2
mov byte [rbp - 0x35], al
mov byte [rbp - 0x34], 0
call fcn.18005c310
xor r10d, r10d
jmp 0x18002844a
xor r9d, r9d
mov dword [rsp + 0x20], 0x4b
xor r8d, r8d
lea rdx, [0x1800a9160]
mov rcx, r15
call fcn.180031410
xor r10d, r10d
jmp 0x18002844a
mov r8d, 1
mov word [rbp - 0x32], 0x63
lea rdx, [0x180096b21]
lea rcx, [rbp - 0x39]
call fcn.180062ed0
mov eax, 0x7373
xor r10d, r10d
mov word [rbp - 0x30], ax
jmp 0x18002844a
cmp ebx, 0x21b0
je 0x1800283da
cmp ebx, 0x356d
jne 0x18002844a
mov byte [rbp - 0x2e], 0
jmp 0x18002844a
test r15, r15
je 0x1800284ac
test r14, r14
je 0x1800284ac
mov r9d, dword [r12]
cmp r9d, 4
jge 0x1800284ac
mov r8d, dword [r15 + 8]
mov eax, r10d
test r8d, r8d
je 0x180028442
nop word [rax + rax]
mov ecx, eax
lea rdx, [r15 + 0x10]
shl rcx, 4
add rdx, rcx
cmp dword [rdx], r9d
jne 0x180028433
cmp dword [0x1800af370], 1
jne 0x18002843c
cmp dword [rcx + r15 + 0x14], 0
jne 0x18002843c
inc eax
cmp eax, r8d
jb 0x180028410
jmp 0x180028442
mov qword [r14], rdx
mov edi, r10d
mov ebx, 0x21b0
mov dword [rbp - 0x6d], edi
lea eax, [r13*2]
add eax, r13d
shl eax, 4
add ebx, eax
cmp ebx, esi
jbe 0x180028312
lea ebx, [r13 - 6]
mov dword [rbp - 0x71], ebx
cmp r13d, ebx
jbe case.0x1800284aa.5
movzx ebx, byte [rbp - 0x79]
lea edi, [r13 - 0x89]
mov eax, dword [rbp - 0x71]
mov esi, 0x6c
mov dword [rbp - 0x69], edi
lea rdx, [0x180000000]
cmp edi, 0x27
ja case.default.0x1800284aa
movzx eax, byte [rdx + rdi + 0x287d4]
mov ecx, dword [rdx + rax*4 + 0x287b8]
add rcx, rdx
jmp rcx
mov eax, 2
jmp 0x180028717
mov r8d, 4
lea rdx, str.32.describe_mellow__The_opposite_of_Albert
lea rcx, [rbp - 9]
call fcn.1800568cc
xor r10d, r10d
mov word [rbp + 0xb], si
jmp case.0x1800284aa.6
mov r8d, 1
mov word [rbp + 0xd], r10w
lea rdx, [0x180096c44]
lea rcx, [rbp - 9]
call fcn.1800568cc
lea r8, [rbp - 0x39]
mov edx, 0x95
lea rcx, [rbp - 9]
call fcn.1800269e0
mov qword [rbp - 0x59], rax
xor r10d, r10d
jmp case.0x1800284aa.6
mov r8d, 1
lea rdx, [0x180096caa]
lea rcx, [rbp - 0x39]
call fcn.180062ed0
xor r10d, r10d
mov dword [rbp - 0x2d], 0x6e656b6f
mov word [rbp - 9], r10w
mov byte [rbp - 0x29], 0
jmp case.0x1800284aa.6
mov r8d, 2
lea rdx, [0x180096cf8]
lea rcx, [rbp - 9]
call fcn.1800568cc
mov eax, 0x76
xor r10d, r10d
mov word [rbp - 5], ax
mov eax, dword [0x180096de2]
mov dword [rbp - 3], eax
movzx eax, word [0x180096de6]
mov word [rbp + 1], ax
mov word [rbp + 3], r10w
jmp case.0x1800284aa.6
mov esi, 0xbe
nop dword [rax]
nop dword [rax + rax]
mov eax, esi
sub eax, 0xbc
je case.0x1800284aa.5
sub eax, 1
je 0x18002877d
cmp eax, 1
jne 0x180028781
test r14, r14
je 0x1800285b7
mov dword [r14], r10d
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea r8, [rbp - 0x61]
mov edx, 0x20
mov rcx, rax
call qword [rbp - 0x59]
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
je 0x180028773
mov edi, 9
cmp edi, 9
ja case.default.0x1800285fd
lea rdx, [0x180000000]
mov eax, edi
mov ecx, dword [rdx + rax*4 + 0x287fc]
add rcx, rdx
jmp rcx
mov r8d, 1
mov dword [rbp - 0x49], 0x656d614e
lea rdx, [0x180096e21]
mov byte [rbp - 0x45], 0
lea rcx, [rbp - 0x45]
call fcn.18005c310
jmp case.default.0x1800285fd
mov byte [rbp - 0x3f], 0x65
jmp case.default.0x1800285fd
mov eax, 0x4e
mov byte [rbp - 0x3e], 0
mov word [rbp - 0x21], ax
mov eax, 0x61
mov word [rbp - 0x20], ax
mov eax, 0x656d
mov word [rbp - 0x1f], ax
jmp case.default.0x1800285fd
mov r8d, 2
lea rdx, [rbp - 0x49]
lea rcx, [rbp - 0x21]
call qword [sym.imp.KERNEL32.dll_MoveFileExA]
jmp case.default.0x1800285fd
mov eax, 0x73
mov word [rbp - 0x1a], ax
mov dword [rbp - 0x19], 0x6e6974
jmp case.default.0x1800285fd
mov eax, 0x45
mov word [rbp - 0x1d], ax
mov eax, 0x78
mov word [rbp - 0x1c], ax
mov eax, 0x69
mov word [rbp - 0x1b], ax
jmp case.default.0x1800285fd
mov eax, 0x65
lea r9, [rbp - 0x79]
mov word [rbp - 0x12], ax
lea rdx, [rbp - 0x51]
movzx eax, byte [r12]
mov r8d, 0xa7
mov byte [rbp - 0x79], al
mov rcx, r15
mov rax, qword [rbp - 0x61]
mov qword [rbp - 0x51], rax
call fcn.180027160
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
test r14, r14
je 0x1800286e0
mov dword [r14], eax
mov rcx, qword [rbp - 0x61]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor edx, edx
xor r8d, r8d
lea ecx, [rdx + 0x10]
call qword [sym.imp.KERNEL32.dll_EnumSystemGeoID]
jmp case.default.0x1800285fd
mov eax, 0x67
mov word [rbp - 0x16], ax
mov dword [rbp - 0x15], 0x6c6946
jmp case.default.0x1800285fd
cmp bl, 1
jne case.default.0x1800285fd
mov byte [rbp - 0x6d], bl
mov eax, dword [rbp - 0x6d]
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.180051f60
mov rbx, qword [rsp + 0x110]
add rsp, 0xd0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r8d, 3
mov byte [rbp - 0x44], 0
lea rdx, [0x180096e9b]
lea rcx, [rbp - 0x49]
call fcn.180062ed0
mov word [rbp - 0x41], 0x6c69
dec edi
lea eax, [rdi + 0x86]
cmp eax, 0x85
ja 0x1800285e1
jmp 0x180028781
test r14, r14
je 0x180028781
mov dword [r14], eax
jmp 0x180028781
mov byte [rbp - 0x6d], 0
dec esi
mov r10d, 0
cmp esi, 0xbb
ja 0x180028590
mov edi, dword [rbp - 0x69]
lea esi, [r10 + 0x6c]
mov eax, dword [rbp - 0x71]
dec edi
dec r13d
mov dword [rbp - 0x69], edi
cmp r13d, eax
jbe case.0x1800284aa.5
jmp 0x180028488