Function at 0x5f3c00
Capabilities:
Get disk size

Disassembly:
push rbp
push rbx
sub rsp, 0x198
mov rbp, rsp
mov qword [rbp + 0x48], 0
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x58], 0
mov qword [rbp + 0x60], 0
mov qword [rbp + 0x68], 0
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x80], 0
mov qword [rbp + 0x78], 0
mov qword [rbp + 0x128], 0
mov qword [rbp + 0x148], 0
mov qword [rbp + 0x88], rbp
mov qword [rbp + 0x1b0], rcx
mov byte [rbp + 0x1b8], dl
lea rcx, [rbp + 0x1b0]
call fcn.0040eaf0
nop
mov eax, dword [0x00695930]
add eax, dword [0x00695c08]
mov ecx, dword [0x006962c4]
add ecx, dword [0x006965f8]
cmp eax, ecx
jle 0x5f3cb6
mov eax, dword [0x006965f8]
mov dword [0x00695930], eax
call fcn.005eb040
cmp eax, dword [0x006932b8]
jle 0x5f3ccd
mov dword [0x006932b8], 0x66
mov eax, dword [0x00696abc]
mov dword [0x006965ec], eax
nop
mov qword [rbp + 0x170], 0
mov qword [rbp + 0x130], 0
mov eax, dword [0x00695bfc]
add eax, dword [0x006961a4]
mov ecx, dword [0x006965ec]
add ecx, dword [0x00696e84]
cmp eax, ecx
jle 0x5f3d18
mov eax, dword [0x00696e84]
mov dword [0x00695bfc], eax
mov eax, dword [0x0069591c]
mov dword [0x00695814], eax
mov eax, dword [0x006933c4]
add eax, 1
cmp dword [0x006933c4], eax
jne 0x5f3da2
mov eax, dword [0x006965d0]
test eax, eax
jge 0x5f3d44
call fcn.0040afc0
mov ecx, dword [0x0069320c]
test ecx, ecx
jge 0x5f3d53
call fcn.0040afc0
mov edx, dword [0x00693438]
test edx, edx
jge 0x5f3d62
call fcn.0040afc0
mov r8d, dword [0x00693944]
test r8d, r8d
jge 0x5f3d73
call fcn.0040afc0
mov r9d, dword [0x00695be8]
test r9d, r9d
jge 0x5f3d84
call fcn.0040afc0
mov r10d, ecx
mov r11d, edx
mov ebx, r8d
mov dword [rsp + 0x20], r9d
mov ecx, eax
mov edx, r10d
mov r8d, r11d
mov r9d, ebx
call sub.kernel32.dll_LockFile
mov eax, dword [0x006931c0]
mov dword [0x00696e6c], eax
call fcn.005e7c60
cmp eax, dword [0x006974b0]
jle 0x5f3dc5
mov dword [0x006974b0], 0x31
mov qword [rbp + 0x180], 0
mov eax, dword [0x006931c0]
mov dword [0x00696e6c], eax
mov eax, dword [0x00695d90]
cmp eax, dword [0x006961a0]
je 0x5f3df6
mov eax, dword [0x00695d90]
mov dword [0x006961a0], eax
call fcn.005e9bb0
cmp eax, dword [0x006931e4]
jle 0x5f3e0d
mov dword [0x006931e4], 0x49
call fcn.005e8470
cmp eax, dword [0x006931b0]
jle 0x5f3e24
mov dword [0x006931b0], 0x50
mov eax, dword [0x006974b4]
mov dword [0x00696cc4], eax
mov eax, dword [0x006931f4]
add eax, 1
cmp dword [0x006931f4], eax
jne 0x5f3e57
mov eax, dword [0x00696e80]
test eax, eax
jge 0x5f3e50
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
mov eax, dword [0x006958e4]
add eax, dword [0x00695bbc]
mov ecx, dword [0x00696164]
add ecx, dword [0x00696318]
cmp eax, ecx
jle 0x5f3e7f
mov eax, dword [0x00696318]
mov dword [0x006958e4], eax
mov eax, dword [0x006974d4]
mov dword [0x00696e4c], eax
mov eax, dword [0x00695bf0]
add eax, dword [0x00696198]
mov ecx, dword [0x00696590]
add ecx, dword [0x00696ab0]
cmp eax, ecx
jle 0x5f3eb3
mov eax, dword [0x00696ab0]
mov dword [0x00695bf0], eax
mov eax, dword [0x006932d8]
add eax, dword [0x00693458]
mov ecx, dword [0x00693914]
add ecx, dword [0x0069410c]
cmp eax, ecx
jle 0x5f3ed9
mov dword [0x006932d8], 0xe6
mov dword [rbp + 0x18c], 0
mov qword [rbp + 0x158], 0
mov qword [rbp + 0x160], 0
lea rcx, [rbp + 0xd0]
mov edx, 0x18
xor r8, r8
call fcn.0040a9a0
mov eax, dword [0x0069749c]
mov dword [0x00696cac], eax
call fcn.005dda90
mov eax, dword [0x00693408]
add eax, 1
cmp dword [0x00693408], eax
jne 0x5f3f87
mov eax, dword [0x00695bcc]
test eax, eax
jge 0x5f3f3f
call fcn.0040afc0
mov ecx, dword [0x00696570]
test ecx, ecx
jge 0x5f3f4e
call fcn.0040afc0
mov edx, dword [0x00696a8c]
test edx, edx
jge 0x5f3f5d
call fcn.0040afc0
mov r8d, dword [0x00697440]
test r8d, r8d
jge 0x5f3f6e
call fcn.0040afc0
mov r9d, ecx
mov r10d, edx
mov r11d, r8d
mov ecx, eax
mov edx, r9d
mov r8d, r10d
mov r9d, r11d
call sub.advapi32.dll_CryptDuplicateKey
call fcn.005ea0b0
cmp eax, dword [0x00693274]
jle 0x5f3f9e
mov dword [0x00693274], 0x41
lea rcx, [rbp + 0x78]
lea rdx, [0x006930b9]
mov r8d, 4
mov r9d, 0x2d
call fcn.00597b20
lea rcx, [rbp + 0x80]
mov rdx, qword [rbp + 0x78]
xor r8, r8
call fcn.005a8ac0
mov rcx, qword [rbp + 0x80]
call fcn.00410050
xor ecx, ecx
mov rdx, rax
call qword [0x006a9210]
mov qword [rbp + 0x168], rax
nop
cmp qword [rbp + 0x168], 0
je 0x5f4183
mov eax, dword [0x00695ba0]
add eax, dword [0x00695d88]
mov ecx, dword [0x00696198]
add ecx, dword [0x00696594]
cmp eax, ecx
jle 0x5f4024
mov eax, dword [0x00696594]
mov dword [0x00695ba0], eax
mov eax, dword [0x006931c0]
mov dword [0x00696e6c], eax
mov eax, dword [0x00695844]
add eax, dword [0x0069594c]
mov ecx, dword [0x00695d6c]
add ecx, dword [0x006962e0]
cmp eax, ecx
jle 0x5f4051
call fcn.004096f0
mov eax, dword [0x006932e8]
add eax, 1
cmp dword [0x006932e8], eax
jne 0x5f40b9
mov eax, dword [0x006968a4]
test eax, eax
jge 0x5f4071
call fcn.0040afc0
mov ecx, dword [0x006931b8]
test ecx, ecx
jge 0x5f4080
call fcn.0040afc0
mov edx, dword [0x006933e4]
test edx, edx
jge 0x5f408f
call fcn.0040afc0
mov r8d, dword [0x0069352c]
test r8d, r8d
jge 0x5f40a0
call fcn.0040afc0
mov r9d, ecx
mov r10d, edx
mov r11d, r8d
mov ecx, eax
mov edx, r9d
mov r8d, r10d
mov r9d, r11d
call sub.advapi32.dll_CryptDuplicateKey
mov dword [0x0069329c], 0x307
mov eax, dword [0x0069329c]
sub eax, 0x1a5
mov dword [0x006933cc], eax
mov eax, dword [0x00695878]
add eax, dword [0x00695934]
mov ecx, dword [0x00696114]
add ecx, dword [0x00696318]
cmp eax, ecx
jle 0x5f40f6
call fcn.004096f0
mov eax, dword [0x00693978]
add eax, 1
cmp dword [0x00693978], eax
jne 0x5f411d
mov eax, dword [0x0069320c]
test eax, eax
jge 0x5f4116
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
mov eax, dword [0x0069618c]
add eax, dword [0x006968ac]
mov ecx, dword [0x006974a4]
add ecx, dword [0x006933a0]
cmp eax, ecx
jle 0x5f4145
mov eax, dword [0x006933a0]
mov dword [0x0069618c], eax
mov rcx, qword [rbp + 0x1b0]
call fcn.00410050
mov rcx, qword [rbp + 0x168]
mov edx, 0x10001
xor r8, r8
mov r9d, 0x80007
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
call qword [0x006a9218]
mov qword [rbp + 0x130], rax
cmp qword [rbp + 0x130], 0
je 0x5f4199
mov byte [rbp + 0x13f], 1
jmp 0x5f4e8f
mov eax, dword [0x00695814]
mov dword [0x006940f8], eax
mov dword [0x006932e0], 0x341
mov eax, dword [0x006932e0]
sub eax, 0x1c1
mov dword [0x0069340c], eax
mov rcx, qword [rbp + 0x1b0]
call fcn.00410050
mov rbx, rax
lea rcx, [rbp + 0x158]
mov rdx, rbx
xor r8, r8
mov r9d, 1
mov dword [rsp + 0x20], 0x20
call qword [0x006a8fb0]
test eax, eax
setne al
mov byte [rbp + 0x13f], al
cmp byte [rbp + 0x13f], 0
jne 0x5f4233
lea rcx, [rbp + 0x158]
mov rdx, rbx
xor r8, r8
mov r9d, 1
mov dword [rsp + 0x20], 0x28
call qword [0x006a8fb0]
test eax, eax
setne al
mov byte [rbp + 0x13f], al
cmp byte [rbp + 0x13f], 0
jne 0x5f4248
mov byte [rbp + 0x13f], 0
jmp 0x5f4e8f
mov rcx, qword [rbp + 0x158]
mov edx, 1
mov r8d, 0x8000001
lea r9, [rbp + 0x160]
call qword [0x006a8ee0]
test eax, eax
setne al
mov byte [rbp + 0x13f], al
cmp byte [rbp + 0x13f], 0
jne 0x5f4289
mov byte [rbp + 0x13f], 0
jmp 0x5f4e8f
lea rcx, [rbp + 0x70]
mov edx, 3
lea r8, [0x005f5244]
mov r9, qword [rbp + 0x1b0]
lea rax, [0x005f5250]
mov qword [rsp + 0x20], rax
call fcn.00410400
lea rcx, [rbp + 0x128]
mov rdx, qword [rbp + 0x70]
call fcn.004108b0
mov rcx, qword [rbp + 0x128]
call fcn.00410730
mov rbx, rax
mov ecx, 0x10001
mov rdx, rbx
mov r8d, 3
xor r9, r9
mov rax, qword [rbp + 0x180]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x18c]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 0
call qword [0x006a9220]
test eax, eax
setne al
mov byte [rbp + 0x13f], al
cmp byte [rbp + 0x13f], 0
je 0x5f4d3c
cmp dword [rbp + 0x18c], 0
jbe 0x5f4d3c
mov ecx, dword [rbp + 0x18c]
call fcn.00409030
mov qword [rbp + 0x180], rax
mov ecx, 0x10001
mov rdx, rbx
mov r8d, 3
xor r9, r9
mov rax, qword [rbp + 0x180]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x18c]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 0
call qword [0x006a9220]
test eax, eax
setne al
mov byte [rbp + 0x13f], al
cmp byte [rbp + 0x13f], 0
je 0x5f4d3c
mov eax, dword [0x006931c4]
mov dword [0x00696e70], eax
mov eax, dword [0x006934e4]
add eax, 1
cmp dword [0x006934e4], eax
jne 0x5f441e
mov eax, dword [0x0069351c]
test eax, eax
jge 0x5f43c0
call fcn.0040afc0
mov ecx, dword [0x006957f4]
test ecx, ecx
jge 0x5f43cf
call fcn.0040afc0
mov edx, dword [0x006965c8]
test edx, edx
jge 0x5f43de
call fcn.0040afc0
mov r8d, dword [0x00697494]
test r8d, r8d
jge 0x5f43ef
call fcn.0040afc0
mov r9d, dword [0x006933e0]
test r9d, r9d
jge 0x5f4400
call fcn.0040afc0
mov r10d, ecx
mov r11d, edx
mov ebx, r8d
mov dword [rsp + 0x20], r9d
mov ecx, eax
mov edx, r10d
mov r8d, r11d
mov r9d, ebx
call sub.kernel32.dll_LockFile
mov eax, dword [0x00695d70]
add eax, dword [0x006962e8]
mov ecx, dword [0x006965cc]
add ecx, dword [0x00696cb0]
cmp eax, ecx
jle 0x5f4446
mov eax, dword [0x00696cb0]
mov dword [0x00695d70], eax
mov eax, dword [0x00696ce0]
mov dword [0x006965fc], eax
mov eax, dword [rbp + 0x18c]
mov dword [rbp + 0x118], eax
mov rax, qword [rbp + 0x180]
mov qword [rbp + 0x120], rax
mov rcx, qword [rbp + 0x1b0]
call fcn.00410050
mov qword [rbp + 0xe8], rax
mov qword [rbp + 0xf0], 0
mov dword [rbp + 0xf8], 1
mov eax, dword [0x00696ce0]
mov dword [0x006965fc], eax
mov eax, dword [0x0069631c]
cmp eax, dword [0x00696a80]
je 0x5f44ba
mov eax, dword [0x0069631c]
mov dword [0x00696a80], eax
mov eax, dword [0x00695b94]
add eax, dword [0x0069613c]
mov ecx, dword [0x00696588]
add ecx, dword [0x006968ac]
cmp eax, ecx
jle 0x5f44e2
mov eax, dword [0x006968ac]
mov dword [0x00695b94], eax
mov dword [rbp + 0xfc], 0x20
call fcn.005e7b40
cmp eax, dword [0x00697458]
jle 0x5f4503
mov dword [0x00697458], 0x1b
mov dword [rbp + 0x100], 0
mov qword [rbp + 0x108], 0
mov dword [rbp + 0x110], 1
call fcn.005e7100
call fcn.005ea1d0
cmp eax, dword [0x00693274]
jle 0x5f453e
mov dword [0x00693274], 0x56
mov eax, dword [0x006933bc]
add eax, 1
cmp dword [0x006933bc], eax
jne 0x5f45a6
mov eax, dword [0x00693558]
test eax, eax
jge 0x5f455e
call fcn.0040afc0
mov ecx, dword [0x006942f8]
test ecx, ecx
jge 0x5f456d
call fcn.0040afc0
mov edx, dword [0x0069593c]
test edx, edx
jge 0x5f457c
call fcn.0040afc0
mov r8d, dword [0x0069616c]
test r8d, r8d
jge 0x5f458d
call fcn.0040afc0
mov r9d, ecx
mov r10d, edx
mov r11d, r8d
mov ecx, eax
mov edx, r9d
mov r8d, r10d
mov r9d, r11d
call sub.advapi32.dll_CryptDuplicateKey
mov eax, dword [0x00696e88]
mov dword [0x00696a70], eax
call fcn.005e3480
lea rcx, [rbp + 0x68]
lea rdx, [0x0069309a]
mov r8d, 0x14
mov r9d, 0x2d
call fcn.00597b20
mov rcx, qword [rbp + 0x68]
call fcn.0040fbe0
mov qword [rbp + 0xd0], rax
lea rcx, [rbp + 0xc0]
call qword [0x006a8c08]
movzx eax, word [rbp + 0xc0]
add eax, 5
cmp eax, 0xffff
jbe 0x5f4609
call fcn.0040afc0
mov word [rbp + 0xc0], ax
lea rcx, [rbp + 0x148]
mov rdx, qword [0x005f3bb8]
mov r8d, 1
mov r9d, 1
call fcn.004129a0
mov eax, dword [0x00696e88]
mov dword [0x00696a70], eax
mov eax, dword [0x00696174]
cmp eax, dword [0x006965bc]
je 0x5f4657
mov eax, dword [0x00696174]
mov dword [0x006965bc], eax
mov eax, dword [0x006958f8]
add eax, dword [0x00695c20]
mov ecx, dword [0x006962dc]
add ecx, dword [0x00696898]
cmp eax, ecx
jle 0x5f467f
mov eax, dword [0x00696898]
mov dword [0x006958f8], eax
mov dword [rbp + 0xb4], 0xffffffff
mov dword [rbp + 0xb8], 0
call fcn.005e7b40
mov eax, dword [0x006958f8]
add eax, dword [0x00695c20]
mov ecx, dword [0x006962dc]
add ecx, dword [0x00696898]
cmp eax, ecx
jle 0x5f46c0
mov eax, dword [0x00696898]
mov dword [0x006958f8], eax
mov eax, dword [0x00696594]
cmp eax, dword [0x00696cc4]
je 0x5f46da
mov eax, dword [0x00696594]
mov dword [0x00696cc4], eax
mov dword [rbp + 0xbc], 0
mov eax, dword [0x00693500]
add eax, 1
cmp dword [0x00693500], eax
jne 0x5f474c
mov eax, dword [0x00696320]
test eax, eax
jge 0x5f4704
call fcn.0040afc0
mov ecx, dword [0x006932a4]
test ecx, ecx
jge 0x5f4713
call fcn.0040afc0
mov edx, dword [0x00693514]
test edx, edx
jge 0x5f4722
call fcn.0040afc0
mov r8d, dword [0x006940d4]
test r8d, r8d
jge 0x5f4733
call fcn.0040afc0
mov r9d, ecx
mov r10d, edx
mov r11d, r8d
mov ecx, eax
mov edx, r9d
mov r8d, r10d
mov r9d, r11d
call sub.advapi32.dll_CryptDuplicateKey
lea rcx, [rbp + 0x60]
lea rdx, [0x006930af]
mov r8d, 9
mov r9d, 0x2d
call fcn.00597b20
mov rcx, qword [rbp + 0x60]
call fcn.0040fbe0
xor ecx, ecx
cmp qword [rbp + 0x148], 0
je 0x5f478c
mov rdx, qword [rbp + 0x148]
cmp rcx, qword [rdx - 8]
jb 0x5f4791
call fcn.0040afc0
mov rdx, qword [rbp + 0x148]
add rcx, rcx
add rcx, rcx
mov qword [rdx + rcx*8], rax
xor eax, eax
cmp qword [rbp + 0x148], 0
je 0x5f47bb
mov rcx, qword [rbp + 0x148]
cmp rax, qword [rcx - 8]
jb 0x5f47c0
call fcn.0040afc0
mov rcx, qword [rbp + 0x148]
add rax, rax
add rax, rax
mov dword [rcx + rax*8 + 8], 0xffffffff
mov dword [0x00693288], 0x300
mov eax, dword [0x00693288]
sub eax, 0x1a2
mov dword [0x00693408], eax
call fcn.005e7700
cmp eax, dword [0x00697484]
jle 0x5f4808
mov dword [0x00697484], 0x25
mov eax, dword [0x0069328c]
mov dword [0x0069746c], eax
mov eax, dword [0x0069328c]
mov dword [0x0069746c], eax
mov eax, dword [0x00696574]
cmp eax, dword [0x00696a94]
je 0x5f483a
mov eax, dword [0x00696574]
mov dword [0x00696a94], eax
mov eax, dword [0x006974b8]
mov dword [0x00696e84], eax
mov eax, dword [0x006974b8]
mov dword [0x00696e84], eax
mov eax, dword [0x00696160]
cmp eax, dword [0x006965a8]
je 0x5f486c
mov eax, dword [0x00696160]
mov dword [0x006965a8], eax
mov eax, dword [0x006931e4]
mov dword [0x00696e90], eax
lea rcx, [rbp + 0x58]
lea rdx, [0x006930af]
mov r8d, 9
mov r9d, 0x2d
call fcn.00597b20
mov rcx, qword [rbp + 0x58]
call fcn.0040fbe0
xor ecx, ecx
cmp qword [rbp + 0x148], 0
je 0x5f48b8
mov rdx, qword [rbp + 0x148]
cmp rcx, qword [rdx - 8]
jb 0x5f48bd
call fcn.0040afc0
xor edx, edx
cmp qword [rbp + 0x148], 0
je 0x5f48d6
mov r8, qword [rbp + 0x148]
cmp rdx, qword [r8 - 8]
jb 0x5f48db
call fcn.0040afc0
mov r8d, 0x10001
lea r9, [rbp + 0xb4]
mov r10, qword [rbp + 0x148]
add rcx, rcx
add rcx, rcx
mov r10, qword [r10 + rcx*8 + 0x18]
mov rcx, qword [rbp + 0x148]
add rdx, rdx
add rdx, rdx
lea rcx, [rcx + rdx*8 + 0x10]
mov qword [rsp + 0x20], rcx
mov ecx, r8d
mov rdx, rax
mov r8, r9
mov r9, r10
call qword [0x006a9228]
test eax, eax
setne al
mov byte [rbp + 0x13f], al
cmp byte [rbp + 0x13f], 0
je 0x5f4a57
xor eax, eax
cmp qword [rbp + 0x148], 0
je 0x5f4955
mov rcx, qword [rbp + 0x148]
cmp rax, qword [rcx - 8]
jb 0x5f495a
call fcn.0040afc0
mov rcx, qword [rbp + 0x148]
add rax, rax
add rax, rax
mov ecx, dword [rcx + rax*8 + 0x10]
call fcn.00409030
xor ecx, ecx
cmp qword [rbp + 0x148], 0
je 0x5f4989
mov rdx, qword [rbp + 0x148]
cmp rcx, qword [rdx - 8]
jb 0x5f498e
call fcn.0040afc0
mov rdx, qword [rbp + 0x148]
add rcx, rcx
add rcx, rcx
mov qword [rdx + rcx*8 + 0x18], rax
lea rcx, [rbp + 0x50]
lea rdx, [0x006930af]
mov r8d, 9
mov r9d, 0x2d
call fcn.00597b20
mov rcx, qword [rbp + 0x50]
call fcn.0040fbe0
xor ecx, ecx
cmp qword [rbp + 0x148], 0
je 0x5f49e0
mov rdx, qword [rbp + 0x148]
cmp rcx, qword [rdx - 8]
jb 0x5f49e5
call fcn.0040afc0
xor edx, edx
cmp qword [rbp + 0x148], 0
je 0x5f49fe
mov r8, qword [rbp + 0x148]
cmp rdx, qword [r8 - 8]
jb 0x5f4a03
call fcn.0040afc0
mov r8d, 0x10001
lea r9, [rbp + 0xb4]
mov r10, qword [rbp + 0x148]
add rcx, rcx
add rcx, rcx
mov r10, qword [r10 + rcx*8 + 0x18]
mov rcx, qword [rbp + 0x148]
add rdx, rdx
add rdx, rdx
lea rcx, [rcx + rdx*8 + 0x10]
mov qword [rsp + 0x20], rcx
mov ecx, r8d
mov rdx, rax
mov r8, r9
mov r9, r10
call qword [0x006a9228]
test eax, eax
setne al
mov byte [rbp + 0x13f], al
cmp byte [rbp + 0x13f], 0
je 0x5f4d3c
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0x90], rax
cmp qword [rbp + 0x90], 0
je 0x5f4a8e
mov rax, qword [rbp + 0x90]
mov rax, qword [rax - 8]
mov qword [rbp + 0x90], rax
mov rax, qword [rbp + 0x90]
shl rax, 5
mov ecx, 0x20
cqo
idiv rcx
mov ecx, 0xffffffff
cmp rax, rcx
jbe 0x5f4ab4
call fcn.0040afc0
mov dword [rbp + 0xa0], eax
xor eax, eax
cmp qword [rbp + 0x148], 0
je 0x5f4ad3
mov rcx, qword [rbp + 0x148]
cmp rax, qword [rcx - 8]
jb 0x5f4ad8
call fcn.0040afc0
mov rcx, qword [rbp + 0x148]
add rax, rax
add rax, rax
lea rax, [rcx + rax*8]
mov qword [rbp + 0xa8], rax
mov eax, dword [0x00695884]
add eax, dword [0x00695bc4]
mov ecx, dword [0x0069616c]
add ecx, dword [0x00696320]
cmp eax, ecx
jle 0x5f4b11
call fcn.004096f0
mov eax, dword [0x00695884]
add eax, dword [0x00695bc4]
mov ecx, dword [0x0069616c]
add ecx, dword [0x00696320]
cmp eax, ecx
jle 0x5f4b32
call fcn.004096f0
mov eax, dword [0x00696124]
cmp eax, dword [0x00696570]
je 0x5f4b4c
mov eax, dword [0x00696124]
mov dword [0x00696570], eax
mov eax, dword [0x00695908]
mov dword [0x0069584c], eax
mov dword [0x0069327c], 0x2fa
mov eax, dword [0x0069327c]
sub eax, 0x19f
mov dword [0x006933f8], eax
mov dword [0x0069327c], 0x2fa
mov eax, dword [0x0069327c]
sub eax, 0x19f
mov dword [0x006933f8], eax
mov eax, dword [0x0069688c]
cmp eax, dword [0x00697484]
je 0x5f4baa
mov eax, dword [0x0069688c]
mov dword [0x00697484], eax
mov eax, dword [0x00693510]
add eax, 1
cmp dword [0x00693510], eax
jne 0x5f4bd1
mov eax, dword [0x006942fc]
test eax, eax
jge 0x5f4bca
call fcn.0040afc0
mov ecx, eax
call sub.kernel32.dll_SetConsoleKeyShortcuts
mov eax, dword [0x0069580c]
add eax, dword [0x00695914]
mov ecx, dword [0x00695bec]
add ecx, dword [0x00696194]
cmp eax, ecx
jle 0x5f4bf2
call fcn.004096f0
mov rcx, qword [rbp + 0x158]
lea rdx, [rbp + 0x118]
xor r8, r8
lea r9, [rbp + 0xe8]
lea rax, [rbp + 0xd0]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
lea rax, [rbp + 0xc0]
mov qword [rsp + 0x30], rax
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x38], rax
call qword [0x006a9230]
mov qword [rbp + 0x170], rax
cmp qword [rbp + 0x170], 0
setne al
mov byte [rbp + 0x13f], al
movzx rax, byte [rbp + 0x13f]
test byte [rbp + 0x1b8], al
je 0x5f4d3c
lea rcx, [rbp + 0x40]
lea rdx, [0x006930b9]
mov r8d, 4
mov r9d, 0x2d
call fcn.00597b20
lea rcx, [rbp + 0x48]
mov rdx, qword [rbp + 0x40]
xor r8, r8
call fcn.005a8ac0
mov rcx, qword [rbp + 0x48]
call fcn.00410050
mov ecx, 0xa
xor edx, edx
xor r8, r8
mov r9d, 0x20000
mov qword [rsp + 0x20], rax
call qword [0x006a9238]
mov qword [rbp + 0x168], rax
cmp qword [rbp + 0x168], 0
setne al
mov byte [rbp + 0x13f], al
cmp byte [rbp + 0x13f], 0
je 0x5f4d3c
mov rcx, qword [rbp + 0x168]
mov rdx, qword [rbp + 0x170]
mov r8d, 3
xor r9, r9
call qword [0x006a9240]
test eax, eax
je 0x5f4d3c
mov rcx, qword [rbp + 0x170]
xor edx, edx
xor r8, r8
lea r9, [rbp + 0x178]
lea rax, [rbp + 0x9c]
mov qword [rsp + 0x20], rax
lea rax, [rbp + 0x98]
mov qword [rsp + 0x28], rax
call qword [0x006a9248]
test eax, eax
setne al
mov byte [rbp + 0x13f], al
nop
cmp dword [rbp + 0x18c], 0
jbe 0x5f4d52
mov rcx, qword [rbp + 0x180]
call fcn.00409060
cmp qword [rbp + 0x178], 0
je 0x5f4d6b
mov rcx, qword [rbp + 0x178]
xor edx, edx
call qword [0x006a8ed0]
cmp qword [rbp + 0x170], 0
je 0x5f4d82
mov rcx, qword [rbp + 0x170]
call qword [0x006a9250]
cmp qword [rbp + 0x168], 0
je 0x5f4d9b
mov rcx, qword [rbp + 0x168]
xor edx, edx
call qword [0x006a9258]
cmp qword [rbp + 0x160], 0
je 0x5f4db2
mov rcx, qword [rbp + 0x160]
call qword [0x006a8ef8]
cmp qword [rbp + 0x158], 0
je 0x5f4dcb
mov rcx, qword [rbp + 0x158]
xor edx, edx
call qword [0x006a8ed0]
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0x150], rax
cmp qword [rbp + 0x150], 0
je 0x5f4df5
mov rax, qword [rbp + 0x150]
mov rax, qword [rax - 8]
mov qword [rbp + 0x150], rax
mov rax, qword [rbp + 0x150]
lea rax, [rax - 1]
mov ecx, 0x80000000
lea rcx, [rcx + rax]
mov edx, 0xffffffff
cmp rcx, rdx
jbe 0x5f4e1a
call fcn.0040afc0
xor ecx, ecx
mov ebx, eax
mov dword [rbp + 0x140], ecx
cmp dword [rbp + 0x140], ebx
jg 0x5f4e79
sub ebx, ecx
add ebx, 1
movsxd rax, dword [rbp + 0x140]
cmp qword [rbp + 0x148], 0
je 0x5f4e4f
mov rcx, qword [rbp + 0x148]
cmp rax, qword [rcx - 8]
jb 0x5f4e54
call fcn.0040afc0
mov rcx, qword [rbp + 0x148]
add rax, rax
add rax, rax
mov rcx, qword [rcx + rax*8 + 0x18]
call fcn.00409060
add dword [rbp + 0x140], 1
sub ebx, 1
test ebx, ebx
jne 0x5f4e31
nop
lea rcx, [rbp + 0x148]
mov rdx, qword [0x005f3bb8]
call fcn.00412b70
jmp 0x5f4eac
xor ecx, ecx
mov rdx, qword [rbp + 0x88]
call fcn.005f5040
jmp 0x5f4fc1
call fcn.005e8520
cmp eax, dword [0x006931c8]
jle 0x5f4ec3
mov dword [0x006931c8], 0x2e
mov eax, dword [0x006934fc]
add eax, 1
cmp dword [0x006934fc], eax
jne 0x5f4f14
mov eax, dword [0x006942e8]
test eax, eax
jge 0x5f4ee3
call fcn.0040afc0
mov ecx, dword [0x00696158]
test ecx, ecx
jge 0x5f4ef2
call fcn.0040afc0
mov edx, dword [0x006974c0]
test edx, edx
jge 0x5f4f01
call fcn.0040afc0
mov r8d, ecx
mov r9d, edx
mov ecx, eax
mov edx, r8d
mov r8d, r9d
call sub.kernel32.dll_GetDiskFreeSpaceExW
mov dword [0x0069327c], 0x319
mov eax, dword [0x0069327c]
sub eax, 0x1ae
mov dword [0x006933f8], eax
mov eax, dword [0x00695d98]
add eax, dword [0x006961a8]
mov ecx, dword [0x006965f0]
add ecx, dword [0x00696cd4]
cmp eax, ecx
jle 0x5f4f58
mov eax, dword [0x00696cd4]
mov dword [0x00695d98], eax
mov eax, dword [0x00695884]
add eax, dword [0x00695bc4]
mov ecx, dword [0x00696120]
add ecx, dword [0x00696320]
cmp eax, ecx
jle 0x5f4f79
call fcn.004096f0
mov eax, dword [0x00695884]
add eax, dword [0x00695bc4]
mov ecx, dword [0x00696120]
add ecx, dword [0x00696320]
cmp eax, ecx
jle 0x5f4f9a
call fcn.004096f0
mov eax, dword [0x00696184]
cmp eax, dword [0x006965cc]
je 0x5f4fb4
mov eax, dword [0x00696184]
mov dword [0x006965cc], eax
mov eax, dword [0x00693280]
mov dword [0x00697464], eax
nop
lea rcx, [rbp + 0x40]
call fcn.0040e970
lea rcx, [rbp + 0x48]
call fcn.0040e9c0
lea rcx, [rbp + 0x50]
mov edx, 4
call fcn.0040ea30
lea rcx, [rbp + 0x70]
call fcn.0040e9c0
lea rcx, [rbp + 0x78]
call fcn.0040e970
lea rcx, [rbp + 0x80]
call fcn.0040e9c0
lea rcx, [rbp + 0x128]
call fcn.0040e920
lea rcx, [rbp + 0x148]
mov rdx, qword [0x005f3bb8]
call fcn.00412b70
lea rcx, [rbp + 0x1b0]
call fcn.0040e9c0
movzx rax, byte [rbp + 0x13f]
lea rsp, [rbp + 0x198]
pop rbx
pop rbp
ret